Use o perfmon para monitorar um aplicativo da Web ASP.NET específico em todas as reinicializações do processo de trabalho, o IIS é reiniciado, etc.?

5

Eu tenho alguns contadores de desempenho perfmon que eu gostaria de acompanhar para um aplicativo ASP.NET específico durante um período prolongado de tempo, digamos uma semana ou um mês. O problema é que os contadores de perfmon são geralmente centrados em processos, em vez de centrados em aplicativos ASP.NET ou centrados em AppPool. Então, por exemplo, eu posso ligar o contador

.NET CLR Memory performance counters\# Gen 0 Collections

para um processo de trabalho específico do IIS (que, irritantemente, é identificado por meio de w3wp, w3wp # 1, w3wp # 2 - mas para uma correção para isso, consulte Como converter nomes de processos 'w3wp' para PIDs ou nomes de usuários? (Ie-" w3wp # 29) ), mas não consigo vinculá-lo a "qualquer processo, agora ou no futuro, que esteja executando o Aplicativo ASP.NET X ou o AppPool Y". Isso significa que, se o IIS reciclar o worker processo, ou se alguém reiniciar o IIS, ou reiniciar a máquina, então meus logs de perfmon não podem ser contados para continuar rastreando o mesmo aplicativo da web.

Existe algum truque para usar o perfmon para monitorar uma determinada webapp, mesmo se o processo de trabalho (por exemplo, w3wp.exe) for reiniciado, a máquina for reiniciada, etc.?

Há algumas respostas em potencial que encontrei pesquisando outras perguntas aqui, mas elas não parecem 100% corretas (embora eu tenha mostrado explicações de por que elas poderiam, de fato, estar certas):

por Chris 10.03.2012 / 02:22

0 respostas