Trabalhando com eventos usando o Application Diagnostics
Trabalhar com alertas é uma parte padrão do trabalho com o System Center – Operations Manager. Os alertas para monitoramento de aplicativos .NET mostram as informações que você reconhecerá de outros alertas, como informações gerais e conhecimento do produto. No entanto, um alerta de aplicativo .NET também apresenta um link em sua descrição. Esse link abre o evento que disparou o alerta no Application Diagnostics. Veja mais informações que podem ajudar você a solucionar problemas e identificar o problema e a solução.
Observação
Aprofundar a solução de problemas de alertas do Monitoramento do desempenho de aplicativos normalmente requer acesso ao código-fonte do aplicativo e pode exigir entradas dos desenvolvedores. Você pode instalar o Pacote de Gerenciamento de Sincronização de Item de Trabalho do Team Foundation Server e encaminhar os alertas ao Team Foundation Server usado pela equipe de desenvolvimento. O Pacote de Gerenciamento de Sincronização de Item de Trabalho do Team Foundation Server rastreia e sincroniza as alterações feitas aos itens de trabalho do Team Foundation Server e aos alertas associados do Operations Manager.
Investigando alertas de aplicativos .NET
Diminuir o tempo necessário para determinar, atribuir e resolver problemas é o objetivo central do monitoramento de aplicativos no Operations Manager. Quando você recebe um alerta, precisa saber o que o causou - o sistema que hospeda o aplicativo ou o código, ser capaz de mostrar os dados para fazer backup dessa conclusão e ver claramente quem deve corrigir o problema. Para saber se é um problema do sistema, você precisa saber o estado do seu sistema no momento do evento. Para saber onde ocorreu o problema raiz, deve saber qual foi a cadeia de chamadas que ocorreu. Para investigar mais, você precisa comparar eventos semelhantes e eventos relacionados que aconteceram ao mesmo tempo. Juntos, os detalhes do evento, os contadores de desempenho e os encadeamentos distribuídos ajudarão você a triar quem deve observar o problema primeiro. Se for um erro do sistema, você poderá ajustar os recursos disponíveis ou a configuração do sistema host e resolver o problema no nível do host. Se for uma falha do aplicativo, o problema precisará ir para a equipe do aplicativo junto com a linha de código em que a falha ocorreu. Veja algumas estratégias para usar os modos de exibição, filtros e configurações do Application Diagnostics para ajudar você a chegar à causa raiz, encontrar uma resolução e saber quem deve ser envolvido na correção do problema.
Abrir o Diagnóstico de Aplicativo em um alerta
Como você está respondendo a alertas relacionados a grupos de aplicativos específicos que você configurou, é útil definir o escopo de alertas ativos e exibi-los por grupo de aplicativos. No console de Operações, no painel de navegação, selecione Monitoramento, expanda Monitoramento Monitoring.NET Aplicativo, selecione a pasta com o nome do grupo de aplicativos que você configurou para monitorar cujos alertas você deseja investigar e selecione Alertas Ativos.
Clique duas vezes no alerta que deseja abrir.
Na página Propriedades do Alerta, selecione o link no painel Descrição do Alerta. Isso abre o Diagnóstico de Aplicativo, um novo recurso de monitoramento no Operations Manager em um navegador da Web. Aqui, na guia Propriedades do evento, você pode ver informações, como as métricas de desempenho, a pilha de chamadas e as anotações de coleta sobre o alerta. Usando as guias, você pode ver eventos semelhantes, eventos relacionados, cadeias de eventos e contadores de desempenho. São informações detalhadas sobre o evento de exceção ou desempenho gerado pelo aplicativo que ajudarão você a diagnosticar se o problema vem do próprio aplicativo, de uma chamada de um serviço Web ou de uma chamada de um banco de dados. Para obter mais informações sobre a guia Propriedades do evento, consulte Detalhes do Evento de Desempenho. Selecione Sim para fechar a janela principal depois que as informações do evento forem carregadas.
Observação
Esse link para o Application Diagnostics também é exibido na guia Contexto Alerta .
Use os procedimentos a seguir para investigar o alerta. Os profissionais de TI provavelmente desejarão usar as informações das guias Propriedades do evento, Contadores de desempenho e Encadeamentos distribuídos para descobrir o que houve, compreender se um problema do sistema causou o problema em questão e investigar onde a causa raiz ocorreu. Os desenvolvedores provavelmente precisarão usar as informações das guias Encadeamentos distribuídos, Eventos semelhantes e Eventos relacionados para compreender o contexto específico de um problema do código.
Solucionar problemas usando as propriedades de Evento de Exceção no Diagnóstico de Aplicativo
Na janela Diagnóstico de Aplicativo do alerta de exceção que você está investigando, selecione a guia Propriedades do evento para exibir os principais detalhes sobre o alerta. Esse é o primeiro lugar a verificar para descobrir se o problema de alerta está aparente. Algumas das principais categorias de informações que você verá na página Propriedades do evento são as seguintes:
Origem Para exibir os tempos de carga e resposta do aplicativo, selecione o link Origem no canto superior esquerdo. Essas informações mostram a carga sob a qual o sistema estava no contexto da falha do evento de exceção. Para exibir contadores de desempenho e avaliar ainda mais o estado do sistema, na página Origem, selecione a guia Relatórios de tendências. Para ver em quais computadores esse aplicativo está funcionando e ver se pode haver um problema de balanceamento de carga entre computadores, selecione a guia Computadores . Para ver um detalhamento de chamadas relacionadas ou onde os eventos estão acontecendo com base em cadeias, selecione a guia Topologia .
Cadeia de Exceções Exibe eventos de exceção. Expanda Cadeia de Exceções para exibir a exceção que realmente ocorreu.
Dados de Exceção Exibe eventos de exceção e mostra parâmetros e variáveis configurados para a classe através da exceção.
Pilha É a pilha de chamadas, ou seja, a ordem dos acontecimentos. A Exibição de Execuções em Árvore permite a você expandir os nós para investigar as chamadas. Selecione o botão de opção Modo de Exibição do Grupo de Recursos para exibir uma visão geral de onde o tempo foi gasto. Essas respostas mostram em que camada o problema está ou onde ele ocorre.
Lista de Módulos Exibe eventos de exceção e mostra os módulos carregados no momento da exceção.
Observações da Coleta Exibe as notas sobre o evento.
Dica
Nos Eventos de desempenho, Eventos semelhantes, Eventos relacionados, Encadeamentos distribuídos e Contadores de desempenho, adote as mesmas etapas de solução de problemas utilizadas nos Eventos de exceção.
Solucionar problemas usando as propriedades de Evento de Desempenho no Diagnóstico de Aplicativo
Na janela Diagnóstico de Aplicativo do alerta de desempenho que você está investigando, selecione a guia Propriedades do evento para exibir os principais detalhes sobre o alerta. Esse é o primeiro lugar a verificar para descobrir se o problema de alerta está aparente. Algumas das principais categorias de informações que você verá na página Propriedades de desempenho são as seguintes:
Origem Para exibir os tempos de carga e resposta do aplicativo, selecione o link Origem no canto superior esquerdo. Essas informações mostram a carga sob a qual o sistema estava no contexto da falha do evento de exceção. Para exibir contadores de desempenho e avaliar ainda mais o estado do sistema, na página Origem, selecione a guia Relatórios de tendências. Para ver em quais computadores esse aplicativo está funcionando e ver se pode haver um problema de balanceamento de carga entre computadores, selecione a guia Computadores . Para ver um detalhamento de chamadas relacionadas ou onde os eventos estão acontecendo com base em cadeias, selecione a guia Topologia .
Nós Mais Lentos É uma lista dos nós mais lentos da Exibição de Execuções em Árvore e a causa mais provável dos problemas de desempenho em seu aplicativo.
Pilha É a pilha de chamadas, ou seja, a ordem dos acontecimentos. A Exibição de Execuções em Árvore permite a você expandir os nós para investigar as chamadas. Selecione o botão de opção Modo de Exibição do Grupo de Recursos para exibir uma visão geral de onde o tempo foi gasto. Isso responde em que camada o problema está – onde ele ocorre?
Observações da Coleta Exibe as notas sobre o evento.
Solucionar problemas do estado do sistema usando contadores de desempenho
Para exibir uma tabela ou diagrama dos principais contadores de desempenho, selecione a guia Contadores de desempenho.
Observação
Quinze minutos de dados de desempenho são coletados e armazenados em cache no sistema monitorado. Quando um desempenho ou exceção é gerado, os dados de desempenho são enviados de volta ao Operations Manager junto com o evento.
Marque as caixas de seleção do contador de desempenho para os contadores de desempenho que você deseja incluir em suas informações e selecione Aplicar.
Use as informações nesta exibição para avaliar o estado de desempenho do sistema em torno do evento que você está investigando. Por exemplo, se o desempenho estava uniformemente lento no momento do evento, é provável que o alerta esteja atrasado devido a um problema no desempenho do sistema.
Encontre a raiz do problema usando cadeias distribuídas
Selecione a guia Cadeias distribuídas para exibir a ordem das chamadas, a cadeia de eventos da qual o evento faz parte. Isso ajuda você a entender como o evento que você está investigando foi afetado por outros eventos do aplicativo ou aplicativos relacionados.
Na exibição Cadeias distribuídas, selecione uma das chamadas ou links na cadeia. Se houver vários eventos para o mesmo objeto, o Assistente de Encadeamento será aberto. Esse assistente permite a você selecionar possíveis eventos para correlação em um encadeamento de eventos. Para iniciar o Assistente, selecione Avançar.
Observação
Obtenha o carimbo de data/hora da chamada selecionada, pois você o emparelhará com um evento na próxima página.
Na página Selecionar Possível Evento em Cadeia, selecione o evento que você deseja examinar. Idealmente, será o evento com o carimbo de data/hora mais próximo da chamada selecionada na exibição Cadeias Distribuídas.
O que você vê a seguir depende do tipo de problema que você está investigando. Por exemplo, se você selecionar uma transação em que um servidor não é encontrado, poderá ir para a página de propriedades do evento para esse evento. Lá, é possível emparelhar o erro do servidor com o evento inicialmente investigado. Como é um erro do servidor, você sabe que o problema não está no lado do cliente, mas no lado do servidor. Você pode ver um gráfico do evento selecionado e ser capaz de dividir um evento de desempenho em termos de tempo de carregamento da página.
Nas propriedades do evento, selecione a chamada do lado do servidor e selecione a guia Contadores de Desempenho para obter mais detalhes.
Solucionar problemas exibindo eventos semelhantes
Selecione a guia Eventos semelhantes para ver se alertas semelhantes foram lançados mais vezes, o que pode significar que há um problema com o aplicativo.
Há várias maneiras de filtrar eventos semelhantes. Selecione o menu suspenso Semelhante por para selecionar como deseja agrupar os eventos semelhantes: por problema, ação, classe de exceção ou função com falha. Nas caixas de texto De e Até , é possível selecionar o intervalo de datas cujos eventos semelhantes você deseja exibir. Use a guia Eventos semelhantes para exibir se alertas semelhantes foram lançados mais vezes, o que pode significar que há um problema com o aplicativo.
Filtragem por Problema mostra eventos semelhantes que pertençam ao mesmo tipo. Por exemplo, você pode ver todos os eventos semelhantes em que a referência de objeto não está definida como uma instância de um objeto. Selecione o botão Exibição de diagrama e você poderá ver a proporção entre o número total de eventos para o problema atual e o número total de eventos de outros problemas. São informações que oferecem uma perspectiva rápida da magnitude do problema desse evento. Se muitos dos eventos semelhantes totais atuais tiverem o mesmo problema, pode ser um problema de prioridade mais alta a ser resolvido, pois terá um alto impacto na redução do número de alertas recebidos.
AFiltragem por ação agrupa os eventos semelhantes por aspecto: segurança, desempenho, conectividade e falha no aplicativo. Selecione o botão Exibição de Diagrama e você poderá ver o número de eventos semelhantes por essas categorias de aspecto e ver mais facilmente a quais o problema pode estar relacionado.
Filtrando por Classe de Exceção agrupa os eventos similares de acordo com o modo como eles foram renomeados durante a configuração. Presumivelmente, esses seriam nomes que ajudariam você a identificar o tipo de exceções que são, como a classe System.NullReferenceException .
Filtrando por Função com Falha agrupa os eventos similares na mesma função que está lançando a exceção. Isso pode significar que há um problema com o ponto de entrada.
Lembre-se de que todos esses são eventos semelhantes, relacionados por definição, e esses filtros dão uma ideia melhor de como eles estão relacionados. Portanto, usando os filtros Eventos Semelhantes, você pode descobrir que a maioria dos eventos totais tem o mesmo problema que o evento que você está exibindo, que é um problema de desempenho, que eles pertencem a uma classe de exceção que você configurou e que metade dos eventos semelhantes tinha a mesma função com falha. Ação: A função vai para o desenvolvedor que precisa atualizar o código de função.
Solucionar problemas exibindo eventos relacionados
Selecione a guia Eventos relacionados para exibir eventos relacionados por tempo. Essas são exceções correlacionadas com outros eventos que podem fornecer uma visão do problema.
Para exibir os detalhes de um evento na lista, selecione o link na coluna Descrição.
Nos eventos relacionados, você pode observar que o tempo de resposta é lento para todos os eventos durante um determinado tempo. Isso pode indicar um problema com o sistema, não com o código e, portanto, pode ser redirecionado para o profissional de TI para obter uma solução.
Próximas etapas
- Para saber como exibir alertas e começar a investigar os problemas gerados, examine a exibição e a investigação de alertas para aplicativos .NET.