Application Insights
Instrumente uma aplicação web com o SDK do Application Insights, explore o mapa da aplicação e use o Fluxo de Métricas ao Vivo para diagnosticar problemas em tempo real.
Application Insights é uma aula grátis de Cloud & IT Cert Prep no CoddyKit. Esta é a aula 3 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Cloud & IT Cert Prep, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Cloud & IT Cert Prep inclui 4 aulas no total.
O que é o Application Insights?
O Application Insights é um recurso do Azure Monitor que fornece monitoramento do desempenho de aplicações (APM) para aplicações Web em produção. Ele coleta telemetria sobre solicitações, dependências, exceções, visualizações de página e eventos personalizados. Diferentemente das métricas da plataforma, que descrevem a integridade da infraestrutura, o Application Insights descreve o que o código da sua aplicação está fazendo e como os usuários finais vivenciam essa aplicação. Ele é compatível com .NET, Node.js, Java, Python e JavaScript de navegador.
Instrumentação da sua aplicação
Você adiciona o Application Insights a uma aplicação instalando o SDK ou usando a instrumentação automática (também chamada de conexão sem código). No App Service, habilitar o Application Insights no portal instala o agente automaticamente, sem alterações no código. Para aplicações gerenciadas por você, adicione o pacote do SDK e forneça a cadeia de conexão (preferível à chave de instrumentação antiga) do seu recurso do Application Insights.
# Enable Application Insights on an App Service app
az webapp config appsettings set \
--name myApp \
--resource-group myRG \
--settings APPLICATIONINSIGHTS_CONNECTION_STRING='InstrumentationKey=...' \
ApplicationInsightsAgent_EXTENSION_VERSION='~3'O mapa da aplicação
O mapa da aplicação é uma topologia visual dos componentes da sua aplicação e de suas dependências. Cada nó representa um componente (sua aplicação, uma API downstream, um banco de dados ou um serviço do Azure), e as arestas mostram relações de chamada anotadas com o tempo médio de resposta, a taxa de solicitações e a taxa de falhas. Você pode clicar em qualquer nó ou aresta para detalhar os rastreamentos de solicitações individuais e identificar onde a latência ou as falhas se originam.
Fluxo de métricas em tempo real
O Fluxo de métricas em tempo real fornece uma visão em tempo real, com resolução inferior a um segundo, do desempenho da sua aplicação e latência zero. Você pode acompanhar as taxas de solicitações recebidas, os tempos de resposta, as taxas de falha e o uso de CPU à medida que ocorrem — algo essencial durante uma implantação em produção ou uma investigação de incidente. O Live Metrics usa uma conexão de saída segura da sua aplicação para o Application Insights, portanto não são necessárias alterações nas regras de firewall de entrada.
Rastreamento distribuído e transações de ponta a ponta
O rastreamento distribuído correlaciona a telemetria entre vários serviços usando um operation_Id compartilhado. Quando uma solicitação do usuário entra na aplicação de front-end, o Application Insights propaga os cabeçalhos de contexto de rastreamento para os serviços downstream. A visualização Detalhes da transação de ponta a ponta reúne todos os intervalos de todos os serviços participantes em uma única linha do tempo em gráfico de Gantt, mostrando exatamente onde o tempo é gasto na arquitetura de microsserviços.
Eventos e métricas personalizados
Além da telemetria automática, você pode acompanhar eventos personalizados e métricas personalizadas usando o SDK. Chame trackEvent() para registrar eventos no nível de negócio, como 'CheckoutCompleted' ou 'FeatureFlagEnabled'. Chame trackMetric() para registrar medições específicas da aplicação, como a profundidade da fila ou a proporção de acertos do cache. A telemetria personalizada aparece nas mesmas tabelas do Log Analytics e pode ser consultada com KQL juntamente com os dados da plataforma.
// Node.js SDK example — tracking a custom event
const appInsights = require('applicationinsights');
appInsights.defaultClient.trackEvent({
name: 'CheckoutCompleted',
properties: { userId: '42', plan: 'premium' },
measurements: { orderValue: 99.99 }
});Detecção inteligente e anomalias de falha
A Detecção inteligente analisa automaticamente sua telemetria usando aprendizado de máquina e alerta você sobre padrões incomuns — como um aumento repentino na taxa de falhas, uma degradação no tempo de resposta do servidor ou um aumento anormal na contagem de exceções. Diferentemente dos alertas de limite configurados manualmente, as regras de Detecção inteligente se adaptam ao comportamento normal da sua aplicação. Os alertas são enviados aos proprietários da assinatura e aparecem no painel de Detecção inteligente.
Testes de disponibilidade
Os testes de disponibilidade (também chamados de testes Web) enviam solicitações HTTP sintéticas para sua aplicação a partir de várias regiões do Azure em todo o mundo, segundo uma programação (com frequência de até uma vez por minuto). Eles verificam se os pontos de extremidade públicos respondem com o código de status HTTP esperado dentro de um tempo limite. Se um teste falhar simultaneamente em vários locais, um alerta será acionado. Isso oferece monitoramento externo independente da sua infraestrutura interna.
# Create a URL ping availability test via CLI
az monitor app-insights web-test create \
--name 'HomepagePing' \
--resource-group myRG \
--app-component myAppInsightsResource \
--defined-web-test-kind ping \
--request-url 'https://myapp.azurewebsites.net/' \
--locations '[{"Id":"us-ca-sjc-azr"},{"Id":"emea-gb-db3-azr"}]' \
--frequency 300 \
--timeout 30Amostragem para controlar o volume de dados
A amostragem reduz o volume de telemetria enviado ao Application Insights registrando apenas uma fração das solicitações, enquanto preserva a precisão estatística. A amostragem adaptativa ajusta automaticamente a taxa de amostragem para permanecer dentro de uma taxa de ingestão desejada. A amostragem de taxa fixa aplica uma porcentagem fixa. A telemetria amostrada é sinalizada para que as exibições de métricas corrijam automaticamente o fator de amostragem ao exibir contagens e taxas.
Análise de usuários e sessões
O Application Insights inclui análise de uso integrada para aplicações instrumentadas no navegador. A lâmina Usuários mostra a contagem de usuários exclusivos, Sessões acompanha as jornadas dos usuários, Funis visualiza a desistência ao longo de fluxos com várias etapas, e os gráficos de Retenção mostram quantos usuários retornam ao longo do tempo. Essas ferramentas são especialmente úteis para equipes de produto que otimizam as taxas de conversão e o envolvimento dos usuários em conjunto com o monitoramento operacional.
Tabelas do Application Insights e do Log Analytics
Os dados do Application Insights são armazenados em um espaço de trabalho do Log Analytics, em tabelas dedicadas: requests, exceptions, dependencies, traces, pageViews, customEvents e customMetrics. Quando o Application Insights é configurado no modo baseado em espaço de trabalho (o padrão para novos recursos), você pode unir essas tabelas a outros dados do espaço de trabalho — por exemplo, correlacionando uma exceção da aplicação com uma negação de acesso ao Key Vault registrada em AzureActivity.
// KQL — find the top 10 slowest dependencies in the last hour
dependencies
| where timestamp > ago(1h)
| where success == false or duration > 2000
| summarize AvgDuration = avg(duration), FailCount = countif(success==false)
by name, type
| top 10 by AvgDuration descVerificação rápida
Teste sua compreensão dos conceitos do Microsoft Azure Fundamentals (AZ-900) abordados nesta lição.
Resumo da lição
Nesta lição, você aprendeu que o Application Insights fornece telemetria no nível de APM para taxas de solicitações, falhas e dependências; o Mapa de Aplicativos e o rastreamento distribuído visualizam sua topologia de microsserviços de ponta a ponta; e os testes de disponibilidade verificam seus pontos de extremidade públicos a partir de várias localizações globais. Em seguida, exploraremos os Dashboards e as Pastas de Trabalho do Azure para compartilhar a visibilidade operacional com sua equipe.
Perguntas Frequentes
A aula “Application Insights” é grátis?
Sim — o texto completo de “Application Insights” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Cloud & IT Cert Prep, atualize para CoddyKit PRO. O curso de Cloud & IT Cert Prep inclui 4 aulas no total.
O que vou aprender em “Application Insights”?
Instrumente uma aplicação web com o SDK do Application Insights, explore o mapa da aplicação e use o Fluxo de Métricas ao Vivo para diagnosticar problemas em tempo real. Você pratica Cloud & IT Cert Prep com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Cloud & IT Cert Prep?
Nenhuma experiência prévia é necessária. Cloud & IT Cert Prep no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 3 de 4.
Quanto tempo leva a aula “Application Insights”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Cloud & IT Cert Prep?
Sim. Cada aula de Cloud & IT Cert Prep inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Métricas e Alertas do Azure Monitor
- Fundamentos do Log Analytics e KQL
- Application Insights
- Painéis e Livros de Trabalho do Azure