Medindo o desempenho do aplicativo de usuário final?

2

Recentemente, tomei conhecimento de um problema em que tivemos um problema de configuração de proxy que resultou em desempenho lento para os usuários que navegavam em websites. A maioria de nossos profissionais de TI tem uma configuração um pouco diferente devido à maneira como acessamos dev & testar ambientes, então acabamos ficando um monte de vaga "a internet é lenta!" reclamações antes de corrigi-lo. Alguns meses atrás, tivemos um problema em que um bug em um aplicativo matava o desempenho em muitos PCs ... mas é muito difícil detectá-lo.

Esta questão está me incomodando, porque era algo que nós poderíamos abordar de forma proativa. A questão é que não temos instrumentação para saber que normalmente leva 5 segundos ou 5 minutos para executar tarefas que nossos usuários fazem todos os dias.

Alguém aí sabe de uma ferramenta gratuita / barata que nos permite escrever algo assim:

  1. Carregar o Internet Explorer, hora em que o aplicativo é iniciado
  2. Ir para google.com, hora em que a página é carregada
  3. Ir para example.com, hora do carregamento da página
  4. Fechar o navegador

Eu gostaria de ter um script fazendo algo assim a cada 15 minutos para executar uma linha de base e descobrir o que "lento" significa para os usuários. A internet é apenas um exemplo, eu vejo isso sendo útil para aplicações internas e outras também.

    
por duffbeer703 07.01.2010 / 15:30

4 respostas

1

Na minha opinião, os próprios aplicativos devem oferecer suporte ao monitoramento desses tipos de métricas com qualquer suíte de monitoramento padrão, incluindo a definição dos limites de aviso padrão ^^ No entanto, a maioria dos aplicativos não faz isso, com algumas exceções notáveis como o Exchange com Operações do System Center. Gerente e assim por diante ...

... neste caso, eu vejo isso mais como um problema de estudo de usuário e usabilidade. Fazer testes over-the-shoulder dos fluxos de trabalho do usuário regularmente seria um começo útil, mesmo que não seja automatizado.

Aplicativos matando desempenho em clientes podem ser capturados com monitoramento de desempenho adequado, embora precise incluir todos os tipos de métricas que podem retardar o rastreamento de um PC, como carga de CPU e memória, carga e padrão de E / S de rede e disco quarta - assim como com o monitoramento do servidor.

Eu entendo o acesso ao ambiente de desenvolvimento e teste, mas sou um strong defensor de ter pelo menos os caras de suporte de primeira linha em imagens padrão idênticas, rede e tão quarta quanto o resto dos usuários - se isso for impossível de implementar todos no departamento.

Usar servidores de gerenciamento remoto / estações de trabalho multiusuário para o trabalho diário de administração é uma maneira fácil de não precisar depender do PC local que está sendo configurado de uma maneira específica ou com ferramentas específicas.

    
por 07.01.2010 / 16:16
1

Eu realmente gosto da ideia de monitorar a lentidão antes que os usuários percebam algo.

Eu tentaria ligá-lo a qualquer software de monitoramento que você já esteja usando (Nagios, etc) por conveniência.

O framework Cucumber parece interessante - link e há um plugin Nagios para ele. (Google "Pepino-Nagios")

Você também pode criar scripts do Internet Explorer com o Powershell ou outra linguagem de script. Eu sempre achei isso mais complicado, no entanto.

    
por 28.09.2011 / 17:56
0

Se você precisa saber o desempenho do seu site e gostaria de diagnosticar os problemas mais tarde, então você precisa do software do monitor de rede. Você sabe que sabe mais sobre o monitor de rede por

De graça, o wireshark é bom. Para uso comercial, Capsa é adequado.

    
por 19.01.2010 / 06:45
0

Já consultou o HP SitScope? Além de extrair informações do sistema, incluindo informações potencialmente SNMP do seu servidor proxy, você pode executar scripts de monitoramento de desempenho de aplicativos para a web. Essa tecnologia de amostragem de aplicativos é um componente de tecnologia compartilhada com o HP LoadRunner e o HP Business Availability Center, que é essencialmente um navegador sem GUI que conclui as tarefas com script. Alerta e relatórios são incorporados ao SiteScope.

Algo que você poderia fazer em uma base de script também seria dar uma olhada no uso de CURL com alguns timers em torno do começo e fim da requisição. O PCODE pode ser parecido com isto

  1. TEMPO DE INÍCIO PARA MILÍFICOS
  2. SOLICITAR PEDIDO DE DOWNLOAD DE PÁGINA USANDO CURL
  3. GET END TIME TO MILLISECONDS
  4. SUBSTITUIR TEMPO DE INÍCIO A PARTIR DO FIM DO TEMPO DE PEDIDO
  5. PEDIDO DE SOLICITAÇÃO AO SERVIDOR DE COLETA
  6. SE O PEDIDO DE TEMPO DE SOLICITAÇÃO EXCEDER VALOR DE SLA ENVIAR NOTIFICAÇÃO EMAIL PARA O GRUPO

Você poderia facilmente usar uma tarefa crónica para executar o acima a cada quinze minutos ou mais. Use sua linguagem de script favorita para executar a operação.

    
por 28.09.2011 / 15:26