O que é o Application Insights?

O Application Insights, um recurso do Azure Monitor, é um serviço de APM (Gerenciamento de Desempenho de Aplicativo) para desenvolvedores e profissionais de DevOps. Use-o para monitorar seus aplicativos ativos. Ele detecta automaticamente anomalias de desempenho e inclui ferramentas de análise avançadas para ajudar a diagnosticar problemas e entender o que os usuários realmente fazem com seu aplicativo. Ele foi projetado para ajudar você a aprimorar continuamente o desempenho e a usabilidade do seu aplicativo. Ele funciona com aplicativos em uma ampla variedade de plataformas, incluindo .NET, Node.js, Java e Python, hospedadas localmente, de maneira híbrida ou em qualquer nuvem pública. Ele integra-se ao seu processo DevOps e tem pontos de conexão para uma ampla variedade de ferramentas de desenvolvimento. Ele pode monitorar e analisar a telemetria de aplicativos móveis integrando-se ao Visual Studio App Center.

Como funciona o Application Insights?

Instale um pacote de instrumentação pequeno (SDK) no seu aplicativo ou habilite o Application Insights usando o Agente do Application Insights quando essa opção for compatível. A instrumentação monitora seu aplicativo e direciona os dados de telemetria para um recurso do Azure Application Insights usando um GUID exclusivo ao qual nos referimos como uma chave de instrumentação.

Você pode instrumentar não apenas o aplicativo de serviço web, mas também todos os componentes em segundo plano e o JavaScript nas próprias páginas da web. O aplicativo e os componentes dele podem ser executados em qualquer lugar, ele não precisa ser hospedado no Azure.

A instrumentação do Application Insights no seu aplicativo envia telemetria ao recurso do Application Insights.

Além disso, você pode efetuar pull de telemetria dos ambientes de host, como contadores de desempenho, diagnóstico do Azure, ou logs de Docker. Você também pode configurar testes da web que enviam periodicamente solicitações sintéticas para o serviço web.

Todos esses fluxos de telemetria são integrados ao Azure Monitor. No portal do Azure, é possível aplicar ferramentas de pesquisa e análise poderosas aos dados brutos.

Qual é a sobrecarga?

O impacto sobre o desempenho do aplicativo é pequeno. As chamadas de acompanhamento não são bloqueadas, além de serem colocadas em lote e enviadas em um thread separado.

O que o Application Insights monitora?

O Application Insights é indicado para a equipe de desenvolvimento, para ajudá-lo a compreender como está o desempenho de seu aplicativo e como ele está sendo usado. Ele monitora:

  • Taxas de solicitação, tempos de resposta e taxas de falha - descubra quais páginas estão mais populares, em que momentos do dia, e onde os usuários estão. Confira as páginas que têm melhor desempenho. Se as taxas de falha e os tempos de resposta ficam altos quando há mais solicitações, possivelmente você tem um problema de alocação de recursos.
  • Taxas de dependência, tempos de resposta e taxas de falha - descubra se os serviços externos estão atrasando você.
  • Exceções – analise as estatísticas agregadas ou escolha instâncias específicas e faça uma busca detalhada no rastreamento de pilha e nas solicitações relacionadas. A maioria das exceções de navegador e servidor são relatadas.
  • Exibições de página e o desempenho de carregamento - relatados por navegadores dos usuários.
  • Chamadas AJAX de páginas da web - taxas, tempos de resposta e taxas de falha.
  • Contagens de seção e usuários.
  • Contadores de desempenho de suas máquinas de servidor Linux ou Windows server, como CPU, memória e uso da rede.
  • Diagnósticos de host do Docker ou do Azure.
  • Logs de rastreamento de diagnóstico do seu aplicativo - para que você possa correlacionar eventos de rastreamento com solicitações.
  • Métricas e eventos personalizados que você escreve em código de cliente ou servidor, para acompanhar os eventos de negócios, como itens vendidos ou vitórias.

Onde posso encontrar minha telemetria?

Há várias maneiras de explorar seus dados. Confira estes artigos:

Descrição do artigo Imagem
Detecção inteligente e alertas manuais
Defina alertas automáticos que se adaptem aos padrões normais de telemetria do seu aplicativo e são disparados quando há algo fora do padrão normal. Você também pode definir alertas em níveis específicos de métricas padrão ou personalizadas.
Exemplo de alerta
Mapa do aplicativo
Explore os componentes de seu aplicativo, com as principais métricas e alertas.
Mapa do aplicativo
Criador de perfil
Inspecione os perfis de execução de solicitações de amostras.
A captura de tela mostra perfis de execução de solicitações de amostras.
Análise de uso
Analise a retenção e a segmentação de usuários.
Ferramenta de retenção
Pesquisa de diagnóstico para dados da instância
pesquise e filtre eventos como solicitações, exceções, chamadas de dependência, rastreamentos de log e exibições de página.
Como pesquisar telemetria
Metrics Explorer para os dados agregados
explore, filtre e segmente dados agregados, como taxas de solicitações, falhas e exceções; tempos de resposta e tempos de carregamento de página.
Métricas
Painéis
faça um mashup de dados de vários recursos e compartilhe com outras pessoas. Excelente para aplicativos com vários componentes e para exibição contínua no ambiente de equipe.
Exemplos de painéis
Live Metrics Stream
quando implantar um novo build, acompanhe esses indicadores de desempenho quase em tempo real para verificar se tudo está funcionando conforme esperado.
Exemplo de métricas ao vivo
Analytics
responda perguntas difíceis sobre o desempenho e o uso do seu aplicativo usando essa poderosa linguagem de consulta.
Exemplo de análise
Visual Studio
Veja dados de desempenho no código. Vá até o código dos rastreamentos de pilha.
A captura de tela mostra Detalhes da Exceção no Visual Studio e um exemplo de como fazer a codificação de rastreamentos de pilha.
Depurador de instantâneo
Depure instantâneos tirado como exemplo de operações ao vivo, com valores de parâmetro.
Visual Studio
Power BI
Integre as métricas de uso com outro business intelligence.
Power BI
REST API
Escreva o código para executar consultas em suas métricas e dados brutos.
API REST
Exportação contínua
Exportação em massa de dados brutos para armazenamento assim que eles chegam.
Exportação

Como usar o Application Insights?

Monitoramento

Instale o Application Insights no seu aplicativo, configure os testes de disponibilidade da web e:

  • Confira o painel do aplicativo padrão da sala da equipe para acompanhar a carga, a capacidade de resposta e o desempenho das dependências, dos carregamentos de página e das chamadas AJAX.
  • Descubra quais são as solicitações mais lentas e com mais falhas.
  • Assista ao Live Stream quando implantar uma nova versão, para identificar imediatamente uma degradação.

Detectar, diagnosticar

Quando você recebe um alerta ou descobre um problema:

  • Avalie quantos usuários são afetados.
  • Correlacione falhas a exceções, chamadas de dependência e rastreamentos.
  • Examine o criador de perfil, instantâneos, despejos de pilha e logs de rastreamento.

Compilar, medir, aprender

Meça a eficácia de cada novo recurso que você implanta.

  • Planeje medir como os clientes usam a nova experiência do usuário ou as funcionalidades de negócios.
  • Escreva a telemetria personalizada em seu código.
  • Baseie o próximo ciclo de desenvolvimento em evidências da telemetria.

Introdução

Application Insights é um dos muitos serviços hospedados no Microsoft Azure e a telemetria é enviada para ele para análise e apresentação. Portanto, antes de fazer qualquer outra coisa, você precisará de uma assinatura do Microsoft Azure. A inscrição é gratuita, e se você optar pelo plano de preços básico do Application Insights, não haverá cobrança até que seu aplicativo apresente uso substancial. Se sua organização já tiver uma assinatura, sua conta da Microsoft poderá ser adicionada a ela.

Existem várias maneiras de começar. Comece com o que funciona melhor para você. Você pode adicionar outras posteriormente.

Próximas etapas

Introdução ao runtime com:

Introdução ao tempo de desenvolvimento com:

Suporte e comentários