Instrumentar um aplicativo para monitoramento

Concluído

O Application Insights é habilitado por meio da Auto-Instrumentação (agente) ou adicionando o SDK do Application Insights ao código do seu aplicativo.

Auto-instrumentação

A auto-instrumentação é o método de instrumentação preferido. Ele não requer investimento do desenvolvedor e elimina futuras despesas gerais relacionadas à atualização do SDK. Também é a única maneira de instrumentar um aplicativo no qual você não tem acesso ao código-fonte.

Em essência, tudo o que você precisa fazer é habilitar e, em alguns casos, configurar o agente, que coleta a telemetria automaticamente.

A lista de serviços suportados pela auto-instrumentação muda rapidamente, visite esta página para obter uma lista do que é suportado atualmente.

Ativação através dos SDKs do Application Insights

Você só precisa instalar o SDK do Application Insights nas seguintes circunstâncias:

  • Você precisa de eventos e métricas personalizados
  • Você precisa ter controle sobre o fluxo de telemetria
  • A Instrumentação Automática não está disponível (normalmente devido a limitações de idioma ou plataforma)

Para usar o SDK, instale um pequeno pacote de instrumentação em seu aplicativo e, em seguida, instrumente o aplicativo Web, todos os componentes em segundo plano e JavaScript nas páginas da Web. O aplicativo e seus componentes não precisam ser hospedados no Azure. A instrumentação monitora seu aplicativo e direciona os dados de telemetria para um recurso do Application Insights usando um token exclusivo.

Os SDKs do Application Insights para .NET, .NET Core, Java, Node.jse JavaScript suportam rastreamento distribuído nativamente.

Além disso, qualquer tecnologia pode ser rastreada manualmente com uma chamada para TrackDependency no TelemetryClient.

Ativar via OpenCensus

Além dos SDKs do Application Insights, o Application Insights também oferece suporte ao rastreamento distribuído por meio do OpenCensus. O OpenCensus é uma distribuição única de bibliotecas de código aberto, independente do fornecedor, para fornecer coleta de métricas e rastreamento distribuído para serviços. Ele também permite que a comunidade de código aberto habilite o rastreamento distribuído com tecnologias populares como Redis, Memcached ou MongoDB.