Solução de gestão do Conector do Application Insights (Preterida)

Símbolo do Application Insights

Nota

Com o suporte de consultas entre recursos, a solução de gestão do Conector do Application Insights já não é necessária. Foi preterido e removido do Azure Marketplace, juntamente com o portal do OMS que foi oficialmente preterido a 15 de janeiro de 2019 para a cloud comercial do Azure. Será descontinuada a 30 de março de 2019 para a cloud do Azure US Government.

As ligações existentes continuarão a funcionar até 30 de junho de 2019. Com a preterição do portal do OMS, não existe forma de configurar e remover ligações existentes do portal. Veja Remover o conector com o PowerShell abaixo para obter um script sobre como utilizar o PowerShell para remover ligações existentes.

Para obter orientações sobre como consultar dados de registo do Application Insights para várias aplicações, veja Unificar vários recursos do Application Insights do Azure Monitor. Para obter mais informações sobre a preterição do portal do OMS, veja Portal do OMS a mudar para o Azure.

A solução Do Conector do Application Insights ajuda-o a diagnosticar problemas de desempenho e a compreender o que os utilizadores fazem com a sua aplicação quando esta é monitorizada com o Application Insights. As vistas da mesma telemetria da aplicação que os programadores veem no Application Insights estão disponíveis no Log Analytics. No entanto, quando integra as aplicações do Application Insights no Log Analytics, a visibilidade das suas aplicações é aumentada ao ter dados de operações e aplicações num único local. Ter as mesmas vistas ajuda-o a colaborar com os programadores de aplicações. As vistas comuns podem ajudar a reduzir o tempo de deteção e resolução de problemas da aplicação e da plataforma.

Quando utiliza a solução, pode:

  • Ver todas as aplicações do Application Insights num único local, mesmo quando estão em subscrições diferentes do Azure
  • Correlacionar dados de infraestrutura com dados da aplicação
  • Visualizar dados da aplicação com perspetivas na pesquisa de registos
  • Pivot from Log Analytics data to your Application Insights app in the portal do Azure

Nota

Recomendamos que utilize o módulo do Azure Az PowerShell para interagir com o Azure. Veja Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

Origens ligadas

Ao contrário da maioria das outras soluções do Log Analytics, os dados não são recolhidos para o Conector do Application Insights por agentes. Todos os dados utilizados pela solução vêm diretamente do Azure.

Origem Ligada Suportado Description
Agentes do Windows No A solução não recolhe informações de agentes do Windows.
Agentes do Linux No A solução não recolhe informações de agentes do Linux.
Grupo de gestão do SCOM No A solução não recolhe informações de agentes num grupo de gestão do SCOM ligado.
Conta de armazenamento do Azure No A solução não coleta informações do armazenamento do Azure.

Pré-requisitos

  • Para aceder às informações do Conector do Application Insights, tem de ter uma subscrição do Azure
  • Tem de ter, pelo menos, um recurso do Application Insights configurado.
  • Tem de ser o proprietário ou contribuidor do recurso do Application Insights.

Configuração

  1. Ative a solução Azure Aplicações Web Analytics a partir do Azure Marketplace ou com o processo descrito em Adicionar soluções do Log Analytics a partir da Galeria de Soluções.
  2. Navegue para o portal do Azure. Selecione Todos os serviços para abrir o Application Insights. Em seguida, procure Application Insights.
  3. Em Subscrições, selecione uma subscrição que tenha recursos do Application Insights e, em seguida, em Nome, selecione uma ou mais aplicações.
  4. Clique em Guardar.

Em aproximadamente 30 minutos, os dados ficam disponíveis e o mosaico do Application Insights é atualizado com dados, como a imagem seguinte:

Mosaico do Application Insights

Outros pontos a ter em conta:

Pacotes de gestão

Esta solução não instala pacotes de gestão em grupos de gestão ligados.

Utilizar a solução

As secções seguintes descrevem como pode utilizar as secções apresentadas no dashboard do Application Insights para ver e interagir com dados das suas aplicações.

Ver informações do Conector do Application Insights

Clique no mosaico Application Insights para abrir o dashboard do Application Insights para ver as secções seguintes.

Captura de ecrã do dashboard do Application Insights a mostrar as secções De Aplicações, Volume de Dados e Disponibilidade.

Captura de ecrã do dashboard do Application Insights a mostrar as secções para Pedidos de Servidor, Falhas e Exceções.

O dashboard inclui as secções apresentadas na tabela. Cada secção lista até 10 itens que correspondem aos critérios dessa secção para o âmbito e intervalo de tempo especificados. Pode executar uma pesquisa de registos que devolve todos os registos quando clica em Ver tudo na parte inferior da secção ou quando clica no cabeçalho da secção.

Coluna Descrição
Aplicações – Número de aplicações Mostra o número de aplicações nos Recursos da aplicação. Também lista os nomes das aplicações e, para cada um, a contagem de registos de aplicações. Clique no número para executar uma pesquisa de registos ApplicationInsights | summarize AggregatedValue = sum(SampledCount) by ApplicationName

Clique no nome de uma aplicação para executar uma pesquisa de registos para a aplicação que mostra registos de aplicações por anfitrião, registos por tipo de telemetria e todos os dados por tipo (com base no último dia).
Volume de Dados – Anfitriões que enviam dados Mostra o número de anfitriões de computador que estão a enviar dados. Também lista anfitriões de computador e contagem de registos para cada anfitrião. Clique no número para executar uma pesquisa de registos ApplicationInsights | summarize AggregatedValue = sum(SampledCount) by Host

Clique num nome de computador para executar uma pesquisa de registos para o anfitrião que mostra registos de aplicações por anfitrião, registos por tipo de telemetria e todos os dados por tipo (com base no último dia).
Disponibilidade – Resultados do Teste Web Mostra um gráfico em anel para os resultados do teste Web, que indica a passagem ou a falha. Clique no gráfico para executar uma pesquisa de registos ApplicationInsights | where TelemetryType == "Availability" | summarize AggregatedValue = sum(SampledCount) by AvailabilityResult

Os resultados mostram o número de passes e falhas para todos os testes. Mostra todos os Aplicações Web com tráfego durante o último minuto. Clique no nome de uma aplicação para ver uma pesquisa de registos que mostra os detalhes dos testes Web com falhas.
Pedidos do Servidor – Pedidos por hora Mostra um gráfico de linhas dos pedidos do servidor por hora para várias aplicações. Paire o cursor sobre uma linha no gráfico para ver as três principais aplicações que recebem pedidos para um ponto anterior no tempo. Também mostra uma lista das aplicações que recebem pedidos e o número de pedidos para o período selecionado.

Clique no gráfico para executar uma pesquisa ApplicationInsights | where TelemetryType == "Request" | summarize AggregatedValue = sum(SampledCount) by ApplicationName, bin(TimeGenerated, 1h) de registos que mostra um gráfico de linhas mais detalhado dos pedidos do servidor por hora para várias aplicações.

Clique numa aplicação na lista para executar uma pesquisa ApplicationInsights | where ApplicationName == "yourapplicationname" and TelemetryType == "Request" and iff(isnotnull(toint(RequestSuccess)), RequestSuccess == false, RequestSuccess == "false") == true de registos que mostra uma lista de pedidos, gráficos para pedidos ao longo do tempo e duração do pedido e uma lista de códigos de resposta de pedidos.
Falhas – Pedidos falhados por hora Mostra um gráfico de linhas de pedidos de aplicação falhados por hora. Paire o cursor sobre o gráfico para ver as três principais aplicações com pedidos falhados para um ponto anterior no tempo. Também mostra uma lista de aplicações com o número de pedidos falhados para cada uma. Clique no gráfico para executar uma pesquisa ApplicationInsights | where TelemetryType == "Request" and iff(isnotnull(toint(RequestSuccess)), RequestSuccess == false, RequestSuccess == "false") == true | summarize AggregatedValue = sum(SampledCount) by ApplicationName, bin(TimeGenerated, 1h) de registos que mostra um gráfico de linhas mais detalhado de pedidos de aplicações com falhas.

Clique num item na lista para executar uma pesquisa ApplicationInsights | where ApplicationName == "yourapplicationname" and TelemetryType == "Request" and iff(isnotnull(toint(RequestSuccess)), RequestSuccess == false, RequestSuccess == "false") == true de registos que mostra pedidos falhados, gráficos para pedidos falhados ao longo do tempo e duração do pedido e uma lista de códigos de resposta de pedidos falhados.
Exceções – Exceções por hora Mostra um gráfico de linhas de exceções por hora. Paire o cursor sobre o gráfico para ver as três principais aplicações com exceções para um ponto anterior no tempo. Também mostra uma lista de aplicações com o número de exceções para cada uma. Clique no gráfico para executar uma pesquisa ApplicationInsights | where TelemetryType == "Exception" | summarize AggregatedValue = sum(SampledCount) by ApplicationName, bin(TimeGenerated, 1h) de registos que mostra um gráfico de ligações mais detalhado de exceções.

Clique num item na lista para executar uma pesquisa ApplicationInsights | where ApplicationName == "yourapplicationname" and TelemetryType == "Exception" de registos que mostra uma lista de exceções, gráficos para exceções ao longo do tempo e pedidos falhados e uma lista de tipos de exceção.

Quando clica em qualquer item no dashboard, verá uma perspetiva do Application Insights apresentada na pesquisa. A perspetiva fornece uma visualização expandida, com base no tipo de telemetria que selecionou. Assim, o conteúdo da visualização muda para diferentes tipos de telemetria.

Quando clica em qualquer parte da secção Aplicações, vê a perspetiva de Aplicações predefinida.

Perspetiva das Aplicações do Application Insights

A perspetiva mostra uma descrição geral da aplicação que selecionou.

A secção Disponibilidade mostra uma vista de perspetiva diferente onde pode ver os resultados do teste Web e os pedidos com falhas relacionados.

Perspetiva de Disponibilidade do Application Insights

Quando clica em qualquer parte das secções Pedidos ou Falhas do Servidor, os componentes de perspetiva mudam para lhe dar uma visualização relacionada com pedidos.

Secção Falhas do Application Insights

Quando clica em qualquer lugar na secção Exceções , vê uma visualização adaptada às exceções.

Secção Exceções do Application Insights

Independentemente de clicar em algo no dashboard do Conector do Application Insights , na própria página Pesquisa , qualquer consulta que devolva dados do Application Insights mostra a perspetiva do Application Insights. Por exemplo, se estiver a ver dados do Application Insights, uma * consulta também mostra o separador de perspetiva como a imagem seguinte:

Application Insights

Os componentes de perspetiva são atualizados consoante a consulta de pesquisa. Isto significa que pode filtrar os resultados através de qualquer campo de pesquisa que lhe dê a capacidade de ver os dados de:

  • Todas as suas aplicações
  • Uma única aplicação selecionada
  • Um grupo de aplicações

Dinamizar para uma aplicação no portal do Azure

As secções do Conector do Application Insights foram concebidas para lhe permitir dinamizar para a aplicação do Application Insights selecionada quando utiliza o portal do Azure. Pode utilizar a solução como uma plataforma de monitorização de alto nível que o ajuda a resolver problemas com uma aplicação. Quando vir um potencial problema em qualquer uma das suas aplicações ligadas, pode desagregar o mesmo na pesquisa do Log Analytics ou pode dinamizar diretamente para a aplicação Application Insights.

Para dinamizar, clique nas reticências (...) que aparecem no final de cada linha e selecione Abrir no Application Insights.

Nota

A opção Abrir no Application Insights não está disponível no portal do Azure.

Abrir no Application Insights

Dados corrigidos por exemplo

O Application Insights fornece correção de amostragem para ajudar a reduzir o tráfego de telemetria. Quando ativa a amostragem na aplicação Application Insights, obtém um número reduzido de entradas armazenadas no Application Insights e no Log Analytics. Embora a consistência de dados seja preservada na página e perspetivas do Conector do Application Insights , deve corrigir manualmente os dados de exemplo das suas consultas personalizadas.

Eis um exemplo de correção de amostragem numa consulta de pesquisa de registos:

ApplicationInsights | summarize AggregatedValue = sum(SampledCount) by TelemetryType

O campo Contagem de Exemplos está presente em todas as entradas e mostra o número de pontos de dados que a entrada representa. Se ativar a amostragem para a aplicação Application Insights, a Contagem de Amostras é superior a 1. Para contar o número real de entradas geradas pela sua aplicação, soma os campos Contagem de Amostras.

A amostragem afeta apenas o número total de entradas geradas pela sua aplicação. Não precisa de corrigir a amostragem para campos de métricas, como RequestDuration ou AvailabilityDuration , porque esses campos mostram a média das entradas representadas.

Dados de entrada

A solução recebe os seguintes tipos de dados telemétricos das suas aplicações ligadas do Application Insights:

  • Disponibilidade
  • Exceções
  • Pedidos
  • Vistas de página – para que a área de trabalho receba vistas de página, tem de configurar as suas aplicações para recolher essas informações. Para obter mais informações, consulte PageViews.
  • Eventos personalizados – para que a área de trabalho receba eventos personalizados, tem de configurar as suas aplicações para recolher essas informações. Para obter mais informações, veja TrackEvent.

Os dados são recebidos pelo Log Analytics a partir do Application Insights à medida que ficam disponíveis.

Dados de saída

É criado um registo com um tipo de ApplicationInsights para cada tipo de dados de entrada. Os registos do ApplicationInsights têm propriedades apresentadas nas secções seguintes:

Campos genéricos

Propriedade Descrição
Tipo ApplicationInsights
ClientIP
TimeGenerated Hora do registo
ApplicationID Chave de instrumentação da aplicação Application Insights
ApplicationName Nome da aplicação Application Insights
RoleInstance ID do anfitrião do servidor
DeviceType Dispositivo cliente
ScreenResolution
Continente Continente onde o pedido teve origem
País País/região de origem do pedido
Província Província, estado ou região onde o pedido teve origem
City Cidade ou cidade de onde o pedido teve origem
isSynthetic Indica se o pedido foi criado por um utilizador ou por um método automatizado. True = método automatizado ou falso = utilizador gerado
AmostragemRate Percentagem de telemetria gerada pelo SDK que é enviado para o portal. Intervalo 0.0-100.0.
SampledCount 100/(AmostragemRate). Por exemplo, 4 => 25%
IsAuthenticated Verdadeiro ou falso
OperationID Os itens com o mesmo ID de operação são apresentados como Itens Relacionados no portal. Normalmente, o ID do pedido
ParentOperationID ID da operação principal
OperationName
SessionId GUID para identificar exclusivamente a sessão onde o pedido foi criado
SourceSystem ApplicationInsights

Campos específicos da disponibilidade

Propriedade Descrição
TelemetryType Disponibilidade
AvailabilityTestName Nome do teste Web
AvailabilityRunLocation Origem geográfica do pedido http
AvailabilityResult Indica o resultado bem-sucedido do teste Web
AvailabilityMessage A mensagem anexada ao teste Web
AvailabilityCount 100/(Taxa de Amostragem). Por exemplo, 4 => 25%
DataSizeMetricValue 1.0 ou 0.0
DataSizeMetricCount 100/(Taxa de Amostragem). Por exemplo, 4 => 25%
AvailabilityDuration Tempo, em milissegundos, da duração do teste Web
AvailabilityDurationCount 100/(Taxa de Amostragem). Por exemplo, 4 => 25%
AvailabilityValue
AvailabilityMetricCount
AvailabilityTestId GUID exclusivo para o teste Web
AvailabilityTimestamp Carimbo de data/hora preciso do teste de disponibilidade
AvailabilityDurationMin Para registos de exemplo, este campo mostra a duração mínima do teste Web (milissegundos) para os pontos de dados representados
AvailabilityDurationMax Para registos de exemplo, este campo mostra a duração máxima do teste Web (milissegundos) para os pontos de dados representados
AvailabilityDurationStdDev Para registos de exemplo, este campo mostra o desvio-padrão entre todas as durações de teste Web (milissegundos) para os pontos de dados representados
AvailabilityMin
AvailabilityMax
AvailabilityStdDev  

Campos específicos da exceção

Tipo ApplicationInsights
TelemetryType Exceção
ExceptionType Tipo de exceção
ExceptionMethod O método que cria a exceção
ExceptionAssembly A assemblagem inclui a arquitetura e a versão, bem como o token de chave pública
ExceptionGroup Tipo de exceção
ExceptionHandledAt Indica o nível que lidou com a exceção
ExceptionCount 100/(Taxa de Amostragem). Por exemplo, 4 => 25%
ExceptionMessage Mensagem da exceção
ExceptionStack Pilha completa da exceção
ExceptionHasStack Verdadeiro, se a exceção tiver uma pilha

Campos específicos do pedido

Propriedade Descrição
Tipo ApplicationInsights
TelemetryType Pedir
ResponseCode Resposta HTTP enviada ao cliente
RequestSuccess Indica êxito ou falha. True ou false.
RequestID ID para identificar exclusivamente o pedido
RequestName BASE GET/POST + URL
RequestDuration Tempo, em segundos, da duração do pedido
URL URL do pedido que não inclui o anfitrião
Anfitrião Anfitrião de servidor Web
URLBase URL completo do pedido
ApplicationProtocol Tipo de protocolo utilizado pela aplicação
RequestCount 100/(Taxa de Amostragem). Por exemplo, 4 => 25%
RequestDurationCount 100/(Taxa de Amostragem). Por exemplo, 4 => 25%
RequestDurationMin Para registos de exemplo, este campo mostra a duração mínima do pedido (milissegundos) para os pontos de dados representados.
RequestDurationMax Para registos de exemplo, este campo mostra a duração máxima do pedido (milissegundos) para os pontos de dados representados
RequestDurationStdDev Para registos de exemplo, este campo mostra o desvio-padrão entre todas as durações do pedido (milissegundos) para os pontos de dados representados

Pesquisas de registo de exemplo

Esta solução não tem um conjunto de pesquisas de registos de exemplo apresentadas no dashboard. No entanto, as consultas de pesquisa de registos de exemplo com descrições são apresentadas na secção Ver informações do Conector do Application Insights .

Remover o conector com o PowerShell

Com a preterição do portal do OMS, não existe forma de configurar e remover ligações existentes do portal. Pode remover ligações existentes com o seguinte script do PowerShell. Tem de ser o proprietário ou contribuidor da área de trabalho e leitor do recurso do Application Insights para efetuar esta operação.

$Subscription_app = "App Subscription Name"
$ResourceGroup_app = "App ResourceGroup"
$Application = "Application Name"
$Subscription_workspace = "Workspace Subscription Name"
$ResourceGroup_workspace = "Workspace ResourceGroup"
$Workspace = "Workspace Name"

Connect-AzAccount
Set-AzContext -SubscriptionId $Subscription_app
$AIApp = Get-AzApplicationInsights -ResourceGroupName $ResourceGroup_app -Name $Application 
Set-AzContext -SubscriptionId $Subscription_workspace
Remove-AzOperationalInsightsDataSource -WorkspaceName $Workspace -ResourceGroupName $ResourceGroup_workspace -Name $AIApp.Id

Pode obter uma lista de aplicações com o seguinte script do PowerShell que invoca uma chamada à API REST.

Connect-AzAccount
$Tenant = "TenantId"
$Subscription_workspace = "Workspace Subscription Name"
$ResourceGroup_workspace = "Workspace ResourceGroup"
$Workspace = "Workspace Name"
$AccessToken = "AAD Authentication Token" 

Set-AzContext -SubscriptionId $Subscription_workspace
$LAWorkspace = Get-AzOperationalInsightsWorkspace -ResourceGroupName $ResourceGroup_workspace -Name $Workspace

$Headers = @{
    "Authorization" = "Bearer $($AccessToken)"
    "x-ms-client-tenant-id" = $Tenant
}

$Connections = Invoke-RestMethod -Method "GET" -Uri "https://management.azure.com$($LAWorkspace.ResourceId)/dataSources/?%24filter=kind%20eq%20'ApplicationInsights'&api-version=2015-11-01-preview" -Headers $Headers
$ConnectionsJson = $Connections | ConvertTo-Json

Este script requer um token de autenticação de portador para autenticação no Azure Active Directory. Uma forma de obter este token é utilizar um artigo no site de documentação da API REST. Clique em Experimentar e inicie sessão na sua subscrição do Azure. Pode copiar o token de portador da Pré-visualização do Pedido , conforme mostrado na imagem seguinte.

Token de portador

Também pode obter uma lista de aplicações que utilizam uma consulta de registo:

ApplicationInsights | summarize by ApplicationName

Passos seguintes

  • Utilize a Pesquisa de Registos para ver informações detalhadas das suas aplicações do Application Insights.