“Capturar Todos” Perfis de Carga no Lado do Servidor

3

Se eu tiver uma infra-estrutura com alguns servidores Web (Windows 2003 e IIS) e um banco de dados (SQL Server 2005) e ASP.net, pergunto-me se existe uma ferramenta abrangente que simplesmente me permite dizer "Ok, Agora eu abro esta página e você me diz exatamente o que acontece no asp.net, IIS e SQL, CPU, RAM e disco rígido ".

De couse eu posso adicionar rastreamento para o meu asp.net e, em seguida, para o meu SQL Server e então eu tenho que ver como lidar com o IIS (como imagens, por exemplo, não passam por asp.net), mas eu me pergunto se alguém tem uma maneira de obter uma visão geral de praticamente tudo de uma maneira simples? De preferência livre, mas contanto que seja bom, também pode custar dinheiro.

    
por Michael Stum 23.09.2008 / 17:44

4 respostas

2

O Windows Performance Monitor é uma boa aposta. Ele se integrará como um controle ActiveX em uma página da Web, para que você possa abri-lo e seus contadores possam monitorar praticamente todos os aspectos do servidor (contanto que ele possa ser representado numericamente).

Você pode monitorar servidores remotos, desde que a conta em que está sendo executado tenha privilégios de administrador sobre eles.

Os contadores que geralmente corremos para referência visual são:

  • ASP.net \ Aplicativos em execução
  • Tempo de Espera de ASP.net \ Solicitações
  • Processador \% tempo do processador
  • PhysicalDisk \ Avg. Comprimento da fila de disco
  • Memória \ MBytes disponíveis

Há um monte de métricas baseadas em SQL (tempo de espera, consultas por segundo, tempo médio de execução da consulta, etc.) que não tenho em mãos em mim agora, mas é bastante flexível em seus relatórios. O mesmo acontece com o ASP.net - você pode fazer relatórios sobre aplicativos individuais ou usar o contador _total para todos eles.

    
por 01.09.2009 / 01:55
4

Examine os rastreamentos do monitor de desempenho do SQL Server Profiler e do Windows Server juntos. O SQL Server 2005 permite que você relacione esses dois arquivos juntos. Este artigo descreve como fazer isso bem.
Além disso, se você usar o parâmetro application name = em sua string de conexão do SQL Server, poderá capturar isso no Profiler trace & use isso como uma maneira de passar informações do seu aplicativo asp.net/asp como o nome do arquivo que está sendo executado.

    
por 12.10.2008 / 15:40
3

Você pode experimentar ferramentas comerciais como o BMC AppSight, ou somente o .Net, AVICode. Se você quiser fazer isso de maneira barata, uma combinação de logs do IIS e contadores de desempenho atenderá às suas necessidades.

    
por 23.09.2008 / 17:49
1

Hmm. Eu não estou familiarizado com uma ferramenta que lhe dará tudo, mas você pode conseguir isso com uma combinação de ferramentas.

Você mencionou o SQL Server, portanto, o SQL Profiler é algo que deve ser observado para monitorar tudo o que está acontecendo em seu banco de dados.

Para tudo que estiver passando por cima do Http, você deve procurar no Fiddler .

CPU, RAM e Disco Rígido podem ser monitorados via perfmon.exe (incorporado no Windows) ou Processo Explorador .

    
por 23.09.2008 / 17:53