Programmazione trovare l'ultima volta che hanno iniziato il processo di lavoro ASP.NET e app dominio?

StackOverflow https://stackoverflow.com/questions/4056635

Domanda

In ASP.NET:

  1. Come faccio a sapere quando il processo di lavoro ASP.NET ultima riavviato?

  2. In ASP.NET, come posso dire quando il dominio applicazione ultima riciclato?

È stato utile?

Soluzione

Per il processo di lavoro, è possibile leggere di programmazione Processo -> Tempo trascorso dal perf corrispondente. contatore (1) o direttamente dalla System.Diagnostics.Process namespace; per il dominio di applicazione , è possibile impostare una variabile a livello di applicazione allo start-up per servire come base e misura contro che manualmente.

Scott Mitchell ha in realtà un paio di buoni post su questo che sono ancora rilevanti 8 anni più tardi, che ci crediate o no (2). Running on Cassini (Vista, VS 2008), sto vedendo un accurato sistema up-tempo con:

TimeSpan.FromMilliseconds(Environment.TickCount)

... e accurato processo / AppDomain up-tempo con questi:

foreach (Process p in Process.GetProcessesByName("WebDev.WebServer"))
{
    Response.Write(DateTime.Now.Subtract(p.StartTime).ToString() + "<br/>");
}

Response.Write(DateTime.Now.Subtract((DateTime)Application["StartTime"]).ToString());

Sono anche in grado di ottenere il corretto PerfomanceCounter , ma non riesco a leggere il valore corretto (sempre zero, sotto il mio setup):

Response.Write(new PerformanceCounter("Process", "Elapsed Time", "WebDev.WebServer").NextValue() + "<br/>");

articoli di Scott sono sicuramente la pena di leggere - (es. ProcessModelInfo.GetHistory ) c'è una ricchezza di informazioni in ProcessInfo e ProcessModelInfo , ma purtroppo non è accessibile Cassini:

  

metriche di processo sono disponibili solo   quando il modello di processo ASP.NET è   abilitato. Quando in esecuzione su versioni di   IIS 6 o più recente nel processo di lavoro   modalità di isolamento, questa funzione non è   supportato.

UPDATE: grande spiegazione di come leggere il contatore correttamente per evitare lo zero NextValue () : http://blogs.msdn.com/b/bclteam/archive/2006/06/02/618156.aspx

HTH

(1) https://serverfault.com/questions/90927/ vita-di-iis-worker-process-o-appdomai

(2) http://www.4guysfromrolla.com/articles/041002- 1.aspx

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top