Gerenciar regras de alerta criadas em versões anteriores

Este artigo descreve o processo de gerenciamento de regras de alerta criadas com a interface do usuário anterior ou usando a versão da API versão 2018-04-16 ou anterior. As regras de alerta criadas na interface do usuário mais recente são exibidas e gerenciadas na nova interface do usuário, conforme descrito em Criar, exibir e gerenciar alertas de pesquisa de logs usando o Azure Monitor.

Alterações na experiência de criação de regras de alerta de pesquisa de logs

O assistente de regra de alerta atual é diferente da experiência anterior:

  • Anteriormente, os resultados da pesquisa eram incluídos no conteúdo do alerta disparado e nas notificações a ele associadas. O email incluía apenas dez linhas dos resultados não filtrados, enquanto o conteúdo do webhook continha mil resultados não filtrados. Para obter informações de contexto detalhadas sobre o alerta a fim de decidir qual a ação mais apropriada:
    • É recomendável usar dimensões. As dimensões fornecem o valor da coluna que acionou o alerta, que apresenta o contexto do motivo de acionamento do alerta e como corrigir o problema.
    • Quando você precisar investigar isso nos logs, use o link do alerta para os resultados da pesquisa nos logs.
    • Caso você precise dos resultados brutos da pesquisa ou de qualquer outra personalização avançada, use os Aplicativos Lógicos do Azure.
  • O assistente de nova regra de alerta não dá suporte à personalização de conteúdo JSON.
    • Use as propriedades personalizadas da nova API para adicionar parâmetros estáticos e valores associados às ações de webhook disparadas pelo alerta.
    • Para personalizações mais avançadas, use os Aplicativos Lógicos do Azure.
  • O assistente de nova regra de alerta não dá suporte à personalização do assunto do email.
    • Os clientes geralmente usam um assunto de email personalizado para indicar o recurso em que o alerta foi disparado, em vez de usar o workspace do Log Analytics. Use a nova API para disparar um alerta do recurso desejado usando a coluna da ID do recurso.
    • Para personalizações mais avançadas, use os Aplicativos Lógicos do Azure.

Gerenciar as regras de alerta criadas em versões anteriores no portal do Azure

  1. No portal do Azure, selecione o recurso que você deseja.

  2. Em Monitoramento, selecione Alertas.

  3. Na barra superior, selecione Regras de alertas.

  4. Selecione a regra de alerta que você deseja editar.

  5. Na seção Condição selecione a condição.

  6. O painel Configurar lógica de sinal é aberto exibindo um gráfico com os dados históricos para a consulta. Você pode alterar o Intervalo de tempo do gráfico para exibir dados das últimas seis horas até a semana passada. Se os resultados da consulta contiverem dados resumidos ou colunas específicas sem a coluna de tempo, o gráfico mostrará um único valor.

    Screenshot that shows the Configure signal logic pane.

  7. Edite as condições da regra de alerta usando estas seções:

    • Consulta de pesquisa: nesta seção, você pode modificar sua consulta.

    • Lógica do alerta: os alertas de pesquisa de logs podem ser baseados em dois tipos de medidas:

      1. Número de resultados: número de registros retornados pela consulta.
      2. Medição de métrica: o valor agregadosummarize é calculado usando agrupado por expressões escolhidas e a seleção bin(). Por exemplo:
        // Reported errors
        union Event, Syslog // Event table stores Windows event records, Syslog stores Linux records
        | where EventLevelName == "Error" // EventLevelName is used in the Event (Windows) records
        or SeverityLevel== "err" // SeverityLevel is used in Syslog (Linux) records
        | summarize AggregatedValue = count() by Computer, bin(TimeGenerated, 15m)
        

      Para a lógica de alerta de medicação de métrica, você pode especificar como dividir os alertas por dimensões usando a opção Agregar em. A expressão de agrupamento de linhas deve ser exclusiva e classificada.

      A função bin() pode resultar em intervalos de tempo desiguais, portanto, o serviço de alerta converte automaticamente a função bin() para a função bin_at() com tempo adequado no runtime para garantir resultados com um ponto fixo.

      Observação

      A opção Dividir por dimensões de alerta está disponível apenas para a API scheduleQueryRules atual. Se você usar a API herdada de Alerta do Log Analytics, precisará mudar. Saiba mais sobre comutação. Os alertas centrados em recursos em escala têm suporte apenas na versão da API 2021-08-01 e posteriores.

      Screenshot that shows Aggregate on.

    • Período: escolha o intervalo de tempo sobre o qual avaliar a condição especificada, usando a opção Período.

  8. Ao terminar de editar as condições, selecione Concluído.

  9. Usando o conjunto de dados de versão prévia para configurar o Operador, Valor limite e a Frequência.

  10. Configure o número de violações para disparar um alerta usando as Violações totais ou consecutivas.

  11. Selecione Concluído.

  12. Você pode editar a Descrição e a Gravidade da regra. Esses detalhes são usados em todas as ações de alerta. Você também pode optar por não ativar a regra de alerta na criação, selecionando Habilitar regra na criação.

  13. Use a opção Suprimir Alertas se você desejar suprimir as ações de regra por um tempo especificado após o disparo de um alerta. A regra ainda será executada e criará alertas, mas as ações não serão disparadas para evitar ruídos. Para ser eficaz, o valor Desativar notificação de ações deve ser maior do que a frequência do alerta.

    Screenshot that shows the Alert Details pane.

  14. Para tornar os alertas com estado, selecione Resolver alertas automaticamente (versão prévia).

  15. Especifique se a regra de alerta deverá disparar um ou mais grupos de ações quando a condição de alerta for atendida. Para conhecer os limites das ações que podem ser executadas, confira Limites de serviço do Azure Monitor.

  16. (Opcional) Personalizar ações em regras de alerta de pesquisa de logs:

    • Assunto do email personalizado: Substituir o assunto do email das ações de email. Não é possível modificar o corpo do email e este campo não é destinado para endereços de email.
    • Incluir o payload Json personalizado para webhook: substitui o webhook JSON usado pelos grupos de ações, presumindo que o grupo de ação contém uma ação de webhook. Saiba mais sobre as ações de webhook para alertas de pesquisa de logs.

    Screenshot that shows Action overrides for log search alerts.

  17. Depois que terminar de editar todas as opções de regra de alerta, selecione Salvar.

Gerenciar alertas de pesquisa de logs usando o PowerShell

Observação

Recomendamos que você use o módulo Az PowerShell do Azure para interagir com o Azure. Confira Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.

Use os cmdlets do PowerShell a seguir para gerenciar regras com a API de Regras de Consulta Agendada:

Observação

Os cmdlets do PowerShell ScheduledQueryRules somente podem gerenciar as regras criadas nesta versão da API de Regras de Consulta Agendada. As regras de alerta de pesquisa de logs criadas usando a API de Alertas do Log Analytics herdada somente podem ser gerenciadas usando o PowerShell após alternar para a API de Regras de Consulta Agendada.

Etapas de exemplo para criar uma regra de alerta de pesquisa de logs usando o PowerShell:

$source = New-AzScheduledQueryRuleSource -Query 'Heartbeat | summarize AggregatedValue = count() by bin(TimeGenerated, 5m), _ResourceId' -DataSourceId "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.OperationalInsights/workspaces/servicews"
$schedule = New-AzScheduledQueryRuleSchedule -FrequencyInMinutes 15 -TimeWindowInMinutes 30
$metricTrigger = New-AzScheduledQueryRuleLogMetricTrigger -ThresholdOperator "GreaterThan" -Threshold 2 -MetricTriggerType "Consecutive" -MetricColumn "_ResourceId"
$triggerCondition = New-AzScheduledQueryRuleTriggerCondition -ThresholdOperator "LessThan" -Threshold 5 -MetricTrigger $metricTrigger
$aznsActionGroup = New-AzScheduledQueryRuleAznsActionGroup -ActionGroup "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.insights/actiongroups/sampleAG" -EmailSubject "Custom email subject" -CustomWebhookPayload "{ `"alert`":`"#alertrulename`", `"IncludeSearchResults`":true }"
$alertingAction = New-AzScheduledQueryRuleAlertingAction -AznsAction $aznsActionGroup -Severity "3" -Trigger $triggerCondition
New-AzScheduledQueryRule -ResourceGroupName "contosoRG" -Location "Region Name for your Application Insights App or Log Analytics Workspace" -Action $alertingAction -Enabled $true -Description "Alert description" -Schedule $schedule -Source $source -Name "Alert Name"

Etapas de exemplo para criar uma regra de alerta de pesquisa de logs usando o PowerShell com consultas de recursos cruzados:

$authorized = @ ("/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.OperationalInsights/workspaces/servicewsCrossExample", "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.insights/components/serviceAppInsights")
$source = New-AzScheduledQueryRuleSource -Query 'Heartbeat | summarize AggregatedValue = count() by bin(TimeGenerated, 5m), _ResourceId' -DataSourceId "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.OperationalInsights/workspaces/servicews" -AuthorizedResource $authorized
$schedule = New-AzScheduledQueryRuleSchedule -FrequencyInMinutes 15 -TimeWindowInMinutes 30
$metricTrigger = New-AzScheduledQueryRuleLogMetricTrigger -ThresholdOperator "GreaterThan" -Threshold 2 -MetricTriggerType "Consecutive" -MetricColumn "_ResourceId"
$triggerCondition = New-AzScheduledQueryRuleTriggerCondition -ThresholdOperator "LessThan" -Threshold 5 -MetricTrigger $metricTrigger
$aznsActionGroup = New-AzScheduledQueryRuleAznsActionGroup -ActionGroup "/subscriptions/a123d7efg-123c-1234-5678-a12bc3defgh4/resourceGroups/contosoRG/providers/microsoft.insights/actiongroups/sampleAG" -EmailSubject "Custom email subject" -CustomWebhookPayload "{ `"alert`":`"#alertrulename`", `"IncludeSearchResults`":true }"
$alertingAction = New-AzScheduledQueryRuleAlertingAction -AznsAction $aznsActionGroup -Severity "3" -Trigger $triggerCondition
New-AzScheduledQueryRule -ResourceGroupName "contosoRG" -Location "Region Name for your Application Insights App or Log Analytics Workspace" -Action $alertingAction -Enabled $true -Description "Alert description" -Schedule $schedule -Source $source -Name "Alert Name" 

Também é possível criar o alerta de pesquisa de logs utilizando arquivos de um modelo e de parâmetros usando o PowerShell:

Connect-AzAccount
Select-AzSubscription -SubscriptionName <yourSubscriptionName>
New-AzResourceGroupDeployment -Name AlertDeployment -ResourceGroupName ResourceGroupofTargetResource `
  -TemplateFile mylogalerttemplate.json -TemplateParameterFile mylogalerttemplate.parameters.json

Próximas etapas