Escolhendo o tipo certo de regra de alerta
Este artigo descreve os tipos de alertas do Azure Monitor que você pode criar. Ele ajuda você a entender quando usar cada tipo de alerta. Para obter informações sobre os preços, confira a página de preços.
Os tipos de alertas são:
- Alertas de métrica
- Alertas de pesquisa de log
- Alertas do log de atividades
- Alertas de detecção inteligente
- Alertas do Prometheus
Tipos de alertas do Azure Monitor
Tipo de alerta | Quando usar | Informações sobre preço |
---|---|---|
Alerta de métrica | Dados de métricas são armazenados no sistema já pré-computados. Alertas de métrica são úteis quando você deseja ser alertado sobre dados que exigem pouca ou nenhuma manipulação. Use alertas de métrica se os dados que você deseja monitorar estão disponíveis nos dados da métrica. | Cada regra de alerta de métrica é cobrada com base no número de séries temporais monitoradas. |
Alerta de pesquisa de log | Você pode usar alertas de pesquisa de log para executar operações lógicas avançadas em seus dados. Se os dados que você deseja monitorar estiverem disponíveis em logs ou exigirem lógica avançada, você poderá usar os recursos robustos da KQL (Linguagem de Consulta Kusto) para manipulação de dados usando alertas de pesquisa de log. | Cada regra de alerta de pesquisa de log é cobrada com base no intervalo em que a consulta de log é avaliada. A avaliação de consulta mais frequente resulta em um custo mais alto. Para alertas de pesquisa de log configurados para monitoramento em escala usando a divisão por dimensões, o custo também depende do número de séries temporais criadas pelas dimensões resultantes da consulta. |
Alerta do log de atividades | Os logs de atividades fornecem auditoria de todas as ações que ocorreram nos recursos. Use os alertas de log de atividades para receber alertas quando um evento específico acontecer com um recurso, por exemplo, uma reinicialização, um desligamento ou a criação ou a exclusão de um recurso. Os alertas da Integridade do Serviço e os alertas do Resource Health informam você quando há um problema com um dos seus serviços ou recursos. | Para saber mais, confira a página de preço. |
Alertas do Prometheus | Os alertas do Prometheus são usados para informar sobre as métricas do Prometheus armazenadas em Serviços gerenciados do Azure Monitor para Prometheus. As regras de alerta são baseadas na linguagem de consulta de código aberto PromQL. | As regras de alerta do Prometheus são cobradas apenas nos dados consultados pelas regras. Para saber mais, confira a página de preço. |
Alertas de métricas
Uma regra de alerta de métrica monitora um recurso avaliando as condições nas métricas de recurso em intervalos regulares. Se as condições forem atendidas, um alerta será acionado. Uma série temporal de métrica é uma série de valores de métrica capturados em um período de tempo.
Você pode criar regras usando estas métricas:
- Métricas de plataforma
- Métricas personalizadas
- Aplicativo Insights métricas personalizadas
- Logs selecionados de um workspace do Log Analytics convertido em métricas
As regras de alerta de métrica incluem estes recursos:
- Você pode usar várias condições em uma regra de alerta para um único recurso.
- Você pode adicionar granularidade monitorando várias dimensões de métrica.
- Você pode usar limites dinâmicos, que são controlados por machine learning.
- Você pode configurar se os alertas de métrica estiverem com estado ou sem estado. Os alertas de métrica têm estado por padrão.
O destino da regra de alerta de métrica pode ser:
- Um recurso individual, como uma VM (máquina virtual). Para ver os tipo de recurso com suporte, confira Recursos com suporte para alertas de métrica no Azure Monitor.
- Vários recursos do mesmo tipo na mesma região do Azure, como um grupo de recursos.
Aplicando várias condições a uma regra de alerta de métrica
Ao criar uma regra de alerta para um único recurso, você pode aplicar várias condições. Um exemplo para esse tipo de regra de alerta seria monitorar uma máquina virtual do Azure e alertar quando "o percentual de CPU for maior que 90%" e "o comprimento da fila for de mais de 300 itens". Quando uma regra de alerta tem várias condições, o alerta é acionado quando todas as condições na regra de alerta são verdadeiras e é resolvida quando pelo menos uma das condições não é mais verdadeira para três verificações consecutivas.
Restringir o destino usando dimensões
Para obter instruções sobre como usar dimensões em regras de alerta de métrica, confira Monitorar várias séries temporais em uma só regra de alerta de métrica.
Monitorar a mesma condição em vários recursos usando a divisão por dimensões
Para monitorar a mesma condição em vários recursos do Azure, você pode usar a divisão por dimensões. Ao usar a divisão por dimensões, você pode criar alertas centrados em recurso em escala para uma assinatura ou um grupo de recursos. Os alertas são divididos em alertas separados agrupando combinações. A divisão em uma coluna de ID do recurso do Azure transforma o recurso especificado no destino do alerta.
Você também pode decidir não dividir quando quiser uma condição em vários recursos no escopo. Por exemplo, convém disparar um alerta se o uso da CPU de pelo menos cinco computadores no escopo do grupo de recursos estiver acima de 80%.
Monitorar vários recursos com uma regra de alerta
Você pode monitorar em escala aplicando a mesma regra de alerta de métrica a vários recursos do mesmo tipo para recursos que existem na mesma região do Azure. Notificações individuais são enviadas para cada recurso monitorado.
As métricas de plataforma para esses serviços nas seguintes nuvens do Azure têm suporte:
Serviço | Provedor de recursos | Azure Global | Governo | China |
---|---|---|---|---|
Máquinas virtuais | "Microsoft.Compute/virtualMachines" | Sim | Sim | Sim |
Bancos de dados do SQL Server | "Microsoft.Sql/servers/databases" | Sim | Sim | Sim |
Pools elásticos do SQL Server | "Microsoft.Sql/servers/elasticpools" | Sim | Sim | Sim |
Pools de capacidade de arquivos do NetApp | "Microsoft.NetApp/netAppAccounts/capacityPools" | Sim | Sim | Sim |
Volumes de arquivos do NetApp | "Microsoft.NetApp/netAppAccounts/capacityPools/volumes" | Sim | Sim | Sim |
Azure Key Vault | "Microsoft.KeyVault/vaults" | Sim | Sim | Sim |
Cache Redis do Azure | "Microsoft.Cache/redis" | Sim | Sim | Sim |
Dispositivos do Azure Stack Edge | (Não existe um provedor de recursos específico para este recurso. Devido à forma como os dispositivos Stack Edge operam, as métricas são coletadas de diversos provedores de recursos. Você pode conferir esta documentação para obter mais informações sobre os alertas deste recurso: Revisão de alertas no Azure Stack Edge) | Sim | Sim | Yes |
Cofres dos Serviços de Recuperação | "Microsoft.RecoveryServices/Vaults" | Sim | Não | No |
Servidor Flexível do Banco de Dados do Azure para PostgreSQL | "Microsoft.DBforPostgreSQL/flexibleServers" | Sim | Sim | Yes |
Computadores Bare-Metal (Operador Nexus) | "Microsoft.NetworkCloud/bareMetalMachines" | Sim | Sim | Yes |
Dispositivos de Armazenamento (Operador Nexus) | "Microsoft.NetworkCloud/storageAppliances" | Sim | Sim | Yes |
Clusters (Operador Nexus) | "Microsoft.NetworkCloud/clusters" | Sim | Sim | Yes |
Dispositivos de Rede (Operador Nexus) | Microsoft.NetworkCloud/l2Networks, Microsoft.NetworkCloud/l3Networks | Sim | Sim | Yes |
Regras de coleta de dados | "Microsoft.Insights/datacollectionrules" | Sim | Sim | Sim |
Observação
Não há suporte para alertas de métrica de vários recursos para os seguintes cenários:
- Alertas sobre métricas de convidado da VM.
- Alertas sobre métricas de rede de VMs (Total de Entrada de Rede, Total de Saída de Rede, Fluxos de Entrada, Fluxos de Saída, Taxa de Criação Máxima de Fluxos de Entrada e Taxa de Criação Máxima de Fluxos de Saída).
Você pode especificar o escopo de monitoramento de uma única regra de alerta de métrica de uma destas três maneiras. Por exemplo, com as VMs, você pode especificar o escopo como:
- Uma lista de VMs em uma região do Azure, em uma assinatura.
- Todas as VMs em uma região do Azure em um ou mais grupos de recursos de uma assinatura.
- Todas as VMs em uma região do Azure, em uma assinatura.
Aplicar o aprendizado de máquina avançado com limites dinâmicos
Os limites dinâmicos usam aprendizado de máquina avançado para:
- Saber o comportamento histórico das métricas.
- Identificar padrões e adaptar-se às alterações de métrica ao longo do tempo, como padrões por hora, diários ou semanais.
- Reconhecer anomalias que indicam possíveis problemas de serviço.
- Calcular o limite mais apropriado para a métrica.
O Machine Learning usa continuamente novos dados para saber mais e tornar o limite mais preciso. Como o sistema se adapta ao comportamento das métricas ao longo do tempo e dos alertas com base em desvios do padrão, você não precisa saber o limite "certo" para cada métrica.
Os limites dinâmicos ajudam a:
- Criar alertas escalonáveis para centenas de séries de métricas com uma regra de alerta. Se você tiver menos regras de alerta, gastará menos tempo para criar e gerenciar regras de alertas.
- Crie regras sem precisar saber qual limite configurar.
- Configure alertas de métrica usando conceitos de alto nível sem um amplo conhecimento de domínio sobre a métrica.
- Evite ruído (baixa precisão) ou limites amplos (baixo recall) que não têm um padrão esperado.
- Manipular métricas com ruído (como CPU ou memória do computador) e métricas com baixa dispersão (como disponibilidade e taxa de erros).
Confira limites dinâmicos para obter instruções detalhadas sobre como usar os limites dinâmicos nas regras de alerta de métrica.
Alertas de pesquisa de log
Uma regra de alerta de pesquisa de log monitora um recurso usando uma consulta do Log Analytics para avaliar os logs de recursos em uma frequência definida. Se as condições forem atendidas, um alerta será acionado. Como você pode usar consultas do Log Analytics, pode executar operações lógicas avançadas em seus dados e usar os recursos robustos de KQL para manipular dados de log.
O destino da regra de alerta de pesquisa de log pode ser:
- Um único recurso, como uma VM.
- Um só contêiner de recursos, como um grupo de recursos ou uma assinatura.
- Vários recursos que usam uma consulta entre recursos.
Os alertas de pesquisa de log podem medir duas coisas diferentes, que podem ser usadas para diferentes cenários de monitoramento:
- Linhas da tabela: conta o número de linhas retornadas pela consulta e pode ser usado para trabalhar com eventos como logs de eventos do Windows, Syslog e exceções de aplicativo.
- Cálculo de uma coluna numérica: faz um cálculo com base em uma coluna numérica e pode ser usado para incluir qualquer número de recursos. Um exemplo é o percentual de CPU.
Você pode configurar se os alertas de pesquisa de log estiverem com estado ou sem estado.
Observe que os alertas de pesquisa de log com estado têm estas limitações:
- eles podem disparar até 300 alertas por avaliação.
- você pode ter um máximo de 5.000 alertas com a condição de alerta
fired
.
Observação
Os alertas de pesquisa de log funcionam melhor quando você está tentando detectar dados específicos nos logs, em vez de quando você está tentando detectar a falta de dados nos logs. Como os logs são dados semiestruturados, eles são inerentemente mais latentes do que os dados de métrica em informações como uma pulsação de VM. Para evitar erros ao tentar detectar a falta de dados nos logs, considere o uso de alertas de métrica. Você pode enviar dados para o repositório de métricas a partir de logs usando alertas de métricas para logs.
Monitorar várias instâncias de um recurso usando dimensões
Você pode usar dimensões ao criar regras de alerta de pesquisa de log para monitorar os valores de várias instâncias de um recurso com uma regra. Por exemplo, você pode monitorar o uso da CPU em várias instâncias executando seu site ou aplicativo. Cada instância é monitorada individualmente. As notificações são enviadas para cada instância.
Monitorar a mesma condição em vários recursos usando a divisão por dimensões
Para monitorar a mesma condição em vários recursos do Azure, você pode usar a divisão por dimensões. Ao usar a divisão por dimensões, você pode criar alertas centrados em recurso em escala para uma assinatura ou um grupo de recursos. Os alertas são divididos em alertas separados agrupando as combinações por meio de colunas numéricas ou de cadeia de caracteres. A divisão na coluna de ID de recurso do Azure transforma o recurso especificado no destino do alerta.
Você também pode decidir não dividir quando quiser uma condição em vários recursos no escopo. Por exemplo, convém disparar um alerta se o uso da CPU de pelo menos cinco computadores no escopo do grupo de recursos estiver acima de 80%.
Usar a API para regras de alerta de pesquisa de log
Gerencie novas regras em seus workspaces usando a API ScheduledQueryRules.
Observação
Os alertas de pesquisa de log para o Log Analytics costumavam ser gerenciados usando a API de Alerta do Log Analytics herdada. Saiba mais sobre como alternar para a API atual ScheduledQueryRules.
Alertas de pesquisa de log na sua fatura do Azure
Os alertas de pesquisa de log são listados no provedor de recursos microsoft.insights/scheduledqueryrules
com:
- Alertas de pesquisa de log no Application Insights mostrados com o nome exato do recurso, juntamente com o grupo de recursos e as propriedades de alerta.
- Os alertas de pesquisa de log no Log Analytics são mostrados com o nome exato do recurso junto com o grupo de recursos e as propriedades de alerta quando eles são criados usando a API scheduledQueryRules.
- Os alertas de pesquisa de log criados a partir da API herdada do Log Analytics não são recursos do Azure rastreados e não têm nomes de recursos exclusivos impostos. Esses alertas ainda são criados na
microsoft.insights/scheduledqueryrules
como recursos ocultos, que têm a estrutura de nomenclatura de recurso<WorkspaceName>|<savedSearchId>|<scheduleId>|<ActionId>
. Os alertas de pesquisa de log na API herdada são mostrados com o nome do recurso oculto anterior, juntamente com o grupo de recursos e as propriedades de alerta.
Observação
Caracteres de recurso sem suporte como <, >, %, &, , ? e / são substituídos por um caractere de sublinhado (_) nos nomes de recursos ocultos. Essa alteração de caractere também é refletida nas informações de cobrança.
Alertas do log de atividades
Um alerta do log de atividades monitora um recurso verificando os logs de atividades para um novo evento de log de atividades que corresponde às condições definidas.
Talvez você queira usar alertas de log de atividades para esses tipos de cenários:
- Quando uma operação específica ocorre em recursos em um grupo de recursos ou assinatura específico. Por exemplo, talvez você queira ser notificado quando:
- Uma VM em um grupo de recursos de produção é excluída.
- As novas funções são atribuídas a um usuário na sua assinatura.
- Ocorre um evento da Integridade do Serviço. Os eventos da Integridade do Serviço incluem uma notificação de incidentes e de eventos de manutenção que se aplicam aos recursos da sua assinatura.
Crie um alerta do log de atividades em:
- Qualquer uma das categorias de evento do log de atividades, exceto em eventos de alerta.
- Qualquer evento de log de atividades em uma propriedade de nível superior no objeto JSON.
As regras de alerta do log de atividades são recursos do Azure e, portanto, podem ser criados usando um modelo do Azure Resource Manager. Eles também podem ser criados, atualizados ou excluídos no portal do Azure.
Um alerta do log de atividades só monitorará eventos na assinatura na qual o alerta foi criado.
Alertas da Integridade do Serviço do Azure
Os alertas da Integridade do Serviço do Azure são um tipo de alerta de atividade. A Integridade do Serviço do Azure permite a você saber sobre interrupções, atividades de manutenção planejada e outros avisos de integridade, porque a experiência autenticada da Integridade do Serviço do Azure sabe quais serviços e recursos você usa atualmente.
A melhor maneira de usar a Integridade do Serviço do Azure é configurar alertas da Integridade do Serviço do Azure para notificar você por meio dos seus canais de comunicação preferenciais quando problemas de serviço, manutenção planejada ou outras alterações podem afetar os serviços do Azure e as regiões que você usa.
Alertas do Azure Resource Health
Os alertas do Azure Resource Health são um tipo de alerta de atividade. A Visão geral do Resource Health ajuda você a diagnosticar e receber suporte para os problemas de serviço que afetam seus recursos do Azure. Ele gera relatórios sobre a integridade atual e passada dos seus recursos.
O Resource Health se baseia em sinais de diferentes serviços do Azure para avaliar se um recurso está íntegro. Se um recurso não estiver íntegro, o Resource Health analisará mais informações para determinar a origem do problema. Ele também relata as ações que a Microsoft está realizando para corrigir o problema e identifica as ações que você pode executar para resolvê-lo.
Alertas de detecção inteligente
Depois que você configuração do Application Insights para seu projeto e o seu aplicativo gerar certo volume de dados, a detecção inteligente levará 24 horas para aprender o comportamento normal do aplicativo. O desempenho do seu aplicativo tem um padrão típico de comportamento. Algumas solicitações ou chamadas de dependência serão mais propensas a falhas do que outras, e a taxa geral de falhas poderá aumentar à medida que a carga crescer.
A detecção inteligente usa o machine learning para encontrar essas anomalias. A detecção inteligente monitora os dados recebidos do aplicativo, especialmente as taxas de falhas. O Application Insights alertará você automaticamente, quase em tempo real, se seu aplicativo Web experimentar um aumento anormal de solicitações com falha.
Conforme os dados são recebidos no Application Insights do aplicativo Web, a detecção inteligente compara o comportamento atual com os padrões observados nos últimos dias. Se for observado um aumento anormal na taxa de falha em comparação com o desempenho anterior, uma análise será disparada.
Para ajudar você na triagem e no diagnóstico de um problema, uma análise das características das falhas e dados relacionados do aplicativo são fornecidos nos detalhes do alerta. Também há links para portal do Application Insights, onde você pode obter um diagnóstico mais detalhado. O recurso não precisa de instalação ou configuração, pois usa algoritmos de aprendizado de máquina para prever a taxa normal de falhas.
Embora os alertas de métrica informem que pode haver um problema, a detecção inteligente inicia o trabalho de diagnóstico. Ela executa grande parte da análise que você teria que fazer por conta própria. Você obtém os resultados perfeitamente empacotados, o que ajuda a chegar rapidamente à raiz do problema.
A detecção inteligente funciona com aplicativos Web hospedados na nuvem ou em seus servidores que geram dados de dependência ou de solicitação de aplicativo.
Alertas do Prometheus
Os alertas do Prometheus são usados para monitorar as métricas armazenadas nos Serviços gerenciados do Azure Monitor para Prometheus. As regras de alerta do Prometheus são configuradas como parte dos grupos de regras do Prometheus. Eles são disparados quando o resultado de uma expressão PromQL é resolvido como verdadeiro. Os alertas disparados do Prometheus são exibidos e gerenciados como outros tipos de alerta.
Próximas etapas
- Obtenha uma visão geral dos alertas.
- Criar uma regra de alerta.
- Saiba mais sobre a detecção inteligente.