API REST do Alerta do Log Analytics Legado

Este artigo descreve como gerir regras de alerta com a API legada.

Importante

Conforme anunciado, a API de Alertas do Log Analytics será descontinuada a 1 de outubro de 2025. Tem de transitar para a API de Regras de Consulta Agendadas para alertas de pesquisa de registos até essa data. As áreas de trabalho do Log Analytics criadas após 1 de junho de 2019 utilizam a API scheduledQueryRules para gerir regras de alerta. Mude para a API atual em áreas de trabalho mais antigas para tirar partido dos benefícios do Azure Monitor scheduledQueryRules.

A API REST do Alerta do Log Analytics permite-lhe criar e gerir alertas no Log Analytics. Este artigo fornece detalhes sobre a API e vários exemplos para realizar operações diferentes.

A API REST Pesquisa do Log Analytics é RESTful e pode ser acedida através da API REST do Azure Resource Manager. Neste artigo, encontrará exemplos em que a API é acedida a partir de uma linha de comandos do PowerShell com o ARMClient. Esta ferramenta de linha de comandos open source simplifica a invocação da API de Resource Manager do Azure.

A utilização do ARMClient e do PowerShell é uma das muitas opções que pode utilizar para aceder à API de Pesquisa do Log Analytics. Com estas ferramentas, pode utilizar a API reSTful do Azure Resource Manager para efetuar chamadas para áreas de trabalho do Log Analytics e executar comandos de pesquisa nas mesmas. A API produz resultados de pesquisa no formato JSON para que possa utilizar os resultados da pesquisa de várias formas diferentes programaticamente.

Pré-requisitos

Atualmente, os alertas só podem ser criados com uma pesquisa guardada no Log Analytics. Para obter mais informações, veja a API REST do Pesquisa de Registo.

Agendas

Uma pesquisa guardada pode ter uma ou mais agendas. A agenda define a frequência com que a pesquisa é executada e o intervalo de tempo sobre o qual os critérios são identificados. As agendas têm as propriedades descritas na tabela seguinte:

Propriedade Descrição
Interval Com que frequência a pesquisa é executada. Medido em minutos.
QueryTimeSpan O intervalo de tempo sobre o qual os critérios são avaliados. Tem de ser igual ou maior que Interval. Medido em minutos.
Version A versão da API que está a ser utilizada. Atualmente, esta definição deve ser 1sempre .

Por exemplo, considere uma consulta de evento com um Interval de 15 minutos e um Timespan de 30 minutos. Neste caso, a consulta seria executada a cada 15 minutos. Um alerta seria acionado se os critérios continuassem a ser resolvidos durante true um intervalo de 30 minutos.

Obter agendas

Utilize o método Get para obter todos os agendamentos de uma pesquisa guardada.

armclient get /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search  ID}/schedules?api-version=2015-03-20

Utilize o método Get com um ID de agendamento para obter uma agenda específica para uma pesquisa guardada.

armclient get /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Subscription ID}/schedules/{Schedule ID}?api-version=2015-03-20

A seguinte resposta de exemplo destina-se a uma agenda:

{
   "value": [{
      "id": "subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/sampleRG/providers/Microsoft.OperationalInsights/workspaces/MyWorkspace/savedSearches/0f0f4853-17f8-4ed1-9a03-8e888b0d16ec/schedules/a17b53ef-bd70-4ca4-9ead-83b00f2024a8",
      "etag": "W/\"datetime'2016-02-25T20%3A54%3A49.8074679Z'\"",
      "properties": {
         "Interval": 15,
         "QueryTimeSpan": 15,
         "Enabled": true,
      }
   }]
}

Criar uma agenda

Utilize o método Put com um ID de agenda exclusivo para criar uma nova agenda. Dois horários não podem ter o mesmo ID, mesmo que estejam associados a diferentes pesquisas guardadas. Quando cria uma agenda na consola do Log Analytics, é criado um GUID para o ID da agenda.

Nota

O nome de todas as pesquisas guardadas, agendas e ações criadas com a API do Log Analytics tem de estar em minúsculas.

$scheduleJson = "{'properties': { 'Interval': 15, 'QueryTimeSpan':15, 'Enabled':'true' } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/mynewschedule?api-version=2015-03-20 $scheduleJson

Editar uma agenda

Utilize o método Put com um ID de agenda existente para a mesma pesquisa guardada para modificar essa agenda. No exemplo seguinte, a agenda está desativada. O corpo do pedido tem de incluir o etag da agenda.

$scheduleJson = "{'etag': 'W/\"datetime'2016-02-25T20%3A54%3A49.8074679Z'\""','properties': { 'Interval': 15, 'QueryTimeSpan':15, 'Enabled':'false' } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/mynewschedule?api-version=2015-03-20 $scheduleJson

Eliminar agendas

Utilize o método Delete com um ID de agendamento para eliminar uma agenda.

armclient delete /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Subscription ID}/schedules/{Schedule ID}?api-version=2015-03-20

Ações

Uma agenda pode ter múltiplas ações. Uma ação pode definir um ou mais processos a executar, como enviar um e-mail ou iniciar um runbook. Uma ação também pode definir um limiar que determina quando os resultados de uma pesquisa correspondem a alguns critérios. Algumas ações definirão ambas para que os processos sejam executados quando o limiar é cumprido.

Todas as ações têm as propriedades descritas na tabela seguinte. Os diferentes tipos de alertas têm outras propriedades diferentes, que estão descritas na seguinte tabela:

Propriedade Descrição
Type Tipo de ação. Atualmente, os valores possíveis são Alert e Webhook.
Name Nome a apresentar para o alerta.
Version A versão da API que está a ser utilizada. Atualmente, esta definição deve ser 1sempre .

Obter ações

Utilize o método Get para obter todas as ações de uma agenda.

armclient get /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search  ID}/schedules/{Schedule ID}/actions?api-version=2015-03-20

Utilize o método Get com o ID de ação para obter uma ação específica para uma agenda.

armclient get /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Subscription ID}/schedules/{Schedule ID}/actions/{Action ID}?api-version=2015-03-20

Criar ou editar ações

Utilize o método Put com um ID de ação exclusivo da agenda para criar uma nova ação. Quando cria uma ação na consola do Log Analytics, um GUID destina-se ao ID de ação.

Nota

O nome de todas as pesquisas guardadas, agendas e ações criadas com a API do Log Analytics tem de estar em minúsculas.

Utilize o método Put com um ID de ação existente para a mesma pesquisa guardada para modificar essa agenda. O corpo do pedido tem de incluir o etag da agenda.

O formato de pedido para criar uma nova ação varia consoante o tipo de ação, pelo que estes exemplos são fornecidos nas secções seguintes.

Eliminar ações

Utilize o método Delete com o ID de ação para eliminar uma ação.

armclient delete /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Subscription ID}/schedules/{Schedule ID}/Actions/{Action ID}?api-version=2015-03-20

Ações de alerta

Uma agenda deve ter uma e apenas uma ação de Alerta. As ações de alerta têm uma ou mais das secções descritas na seguinte tabela:

Section Description Utilização
Limite Critérios para quando a ação é executada. Necessário para cada alerta, antes ou depois de serem expandidos para o Azure.
Gravidade Etiqueta utilizada para classificar o alerta quando acionado. Necessário para cada alerta, antes ou depois de serem expandidos para o Azure.
Suprimir Opção para parar notificações de alertas. Opcional para cada alerta, antes ou depois de serem expandidos para o Azure.
Grupos de ação IDs do Azure ActionGroup onde as ações necessárias são especificadas, como e-mails, SMSs, chamadas de voz, webhooks, runbooks de automatização e Conectores ITSM. Necessário depois de os alertas serem expandidos para o Azure.
Personalizar ações Modifique a saída padrão para ações selecionadas a partir de ActionGroup. Opcional para cada alerta e pode ser utilizado depois de os alertas serem expandidos para o Azure.

Limiares

Uma ação de Alerta deve ter um e apenas um limiar. Quando os resultados de uma pesquisa guardada correspondem ao limiar numa ação associada a essa pesquisa, todos os outros processos nessa ação são executados. Uma ação também pode conter apenas um limiar para que possa ser utilizada com ações de outros tipos que não contenham limiares.

Os limiares têm as propriedades descritas na tabela seguinte:

Propriedade Descrição
Operator Operador para a comparação de limiares.
gt = Maior que
lt = Menor que
Value Valor para o limiar.

Por exemplo, considere uma consulta de evento com um Interval de 15 minutos, um Timespan de 30 minutos e um Threshold superior a 10. Neste caso, a consulta seria executada a cada 15 minutos. Um alerta seria acionado se devolvesse 10 eventos que foram criados ao longo de um intervalo de 30 minutos.

A seguinte resposta de exemplo destina-se a uma ação com apenas um Threshold:

"etag": "W/\"datetime'2016-02-25T20%3A54%3A20.1302566Z'\"",
"properties": {
   "Type": "Alert",
   "Name": "My threshold action",
   "Threshold": {
      "Operator": "gt",
      "Value": 10
   },
   "Version": 1
}

Utilize o método Put com um ID de ação exclusivo para criar uma nova ação de limiar para uma agenda.

$thresholdJson = "{'properties': { 'Name': 'My Threshold', 'Version':'1', 'Type':'Alert', 'Threshold': { 'Operator': 'gt', 'Value': 10 } } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/mythreshold?api-version=2015-03-20 $thresholdJson

Utilize o método Put com um ID de ação existente para modificar uma ação de limiar para uma agenda. O corpo do pedido tem de incluir o etag da ação.

$thresholdJson = "{'etag': 'W/\"datetime'2016-02-25T20%3A54%3A20.1302566Z'\"','properties': { 'Name': 'My Threshold', 'Version':'1', 'Type':'Alert', 'Threshold': { 'Operator': 'gt', 'Value': 10 } } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/mythreshold?api-version=2015-03-20 $thresholdJson

Gravidade

O Log Analytics permite-lhe classificar os alertas em categorias para uma gestão e triagem mais fáceis. Os níveis de gravidade dos Alertas são informational, warninge critical. Estas categorias são mapeadas para a escala de gravidade normalizada dos Alertas do Azure, conforme mostrado na tabela seguinte:

Nível de gravidade do Log Analytics Nível de gravidade dos Alertas do Azure
critical Sev 0
warning Sev 1
informational Sev2

A seguinte resposta de exemplo destina-se a uma ação com apenas Threshold e Severity:

"etag": "W/\"datetime'2016-02-25T20%3A54%3A20.1302566Z'\"",
"properties": {
   "Type": "Alert",
   "Name": "My threshold action",
   "Threshold": {
      "Operator": "gt",
      "Value": 10
   },
   "Severity": "critical",
   "Version": 1
}

Utilize o método Put com um ID de ação exclusivo para criar uma nova ação para uma agenda com Severity.

$thresholdWithSevJson = "{'properties': { 'Name': 'My Threshold', 'Version':'1','Severity': 'critical', 'Type':'Alert', 'Threshold': { 'Operator': 'gt', 'Value': 10 } } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/mythreshold?api-version=2015-03-20 $thresholdWithSevJson

Utilize o método Put com um ID de ação existente para modificar uma ação de gravidade para uma agenda. O corpo do pedido tem de incluir o etag da ação.

$thresholdWithSevJson = "{'etag': 'W/\"datetime'2016-02-25T20%3A54%3A20.1302566Z'\"','properties': { 'Name': 'My Threshold', 'Version':'1','Severity': 'critical', 'Type':'Alert', 'Threshold': { 'Operator': 'gt', 'Value': 10 } } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/mythreshold?api-version=2015-03-20 $thresholdWithSevJson

Suprimir

Os alertas de consulta baseados no Log Analytics são acionados sempre que o limiar é atingido ou excedido. Com base na lógica implícita na consulta, um alerta pode ser acionado para uma série de intervalos. O resultado é que as notificações são enviadas constantemente. Para evitar tal cenário, pode definir a opção que instrui o Suppress Log Analytics a aguardar um período de tempo estipulado antes de a notificação ser acionada pela segunda vez para a regra de alerta.

Por exemplo, se Suppress estiver definido durante 30 minutos, o alerta será acionado pela primeira vez e enviará notificações configuradas. Em seguida, aguardará 30 minutos até que a notificação da regra de alerta seja novamente utilizada. No período provisório, a regra de alerta continuará a ser executada. Apenas a notificação é suprimida pelo Log Analytics durante um período especificado, independentemente do número de vezes que a regra de alerta foi acionada neste período.

A Suppress propriedade de uma regra de alerta de pesquisa de registos é especificada com o Throttling valor . O período de supressão é especificado com o DurationInMinutes valor .

A seguinte resposta de exemplo destina-se a uma ação com apenas Threshold, Severitye Suppress propriedades.

"etag": "W/\"datetime'2016-02-25T20%3A54%3A20.1302566Z'\"",
"properties": {
   "Type": "Alert",
   "Name": "My threshold action",
   "Threshold": {
      "Operator": "gt",
      "Value": 10
   },
   "Throttling": {
   "DurationInMinutes": 30
   },
   "Severity": "critical",
   "Version": 1
}

Utilize o método Put com um ID de ação exclusivo para criar uma nova ação para uma agenda com Severity.

$AlertSuppressJson = "{'properties': { 'Name': 'My Threshold', 'Version':'1','Severity': 'critical', 'Type':'Alert', 'Throttling': { 'DurationInMinutes': 30 },'Threshold': { 'Operator': 'gt', 'Value': 10 } } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/myalert?api-version=2015-03-20 $AlertSuppressJson

Utilize o método Put com um ID de ação existente para modificar uma ação de gravidade para uma agenda. O corpo do pedido tem de incluir o etag da ação.

$AlertSuppressJson = "{'etag': 'W/\"datetime'2016-02-25T20%3A54%3A20.1302566Z'\"','properties': { 'Name': 'My Threshold', 'Version':'1','Severity': 'critical', 'Type':'Alert', 'Throttling': { 'DurationInMinutes': 30 },'Threshold': { 'Operator': 'gt', 'Value': 10 } } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{ResourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/myalert?api-version=2015-03-20 $AlertSuppressJson

Grupos de ação

Todos os alertas no Azure utilizam o grupo de ações como o mecanismo predefinido para processar ações. Com um grupo de ações, pode especificar as suas ações uma vez e, em seguida, associar o grupo de ações a múltiplos alertas no Azure sem ter de declarar repetidamente as mesmas ações. Os grupos de ações suportam várias ações, como e-mail, SMS, chamada de voz, ligação ITSM, runbook de automatização e URI do webhook.

Para os utilizadores que expandiram os respetivos alertas para o Azure, uma agenda deverá agora ter os detalhes do grupo de ações transmitidos juntamente com Threshold para poderem criar um alerta. Os detalhes do e-mail, os URLs do webhook, os detalhes da automatização do runbook e outras ações têm de ser definidos num grupo de ações antes de criar um alerta. Pode criar um grupo de ações a partir do Azure Monitor no portal do Azure ou utilizar a API do Grupo de Ações.

Para associar um grupo de ações a um alerta, especifique o ID exclusivo do Azure Resource Manager do grupo de ações na definição de alerta. O exemplo seguinte ilustra a utilização:

"etag": "W/\"datetime'2017-12-13T10%3A52%3A21.1697364Z'\"",
"properties": {
   "Type": "Alert",
   "Name": "test-alert",
   "Description": "I need to put a description here",
   "Threshold": {
      "Operator": "gt",
      "Value": 12
   },
   "AzNsNotification": {
      "GroupIds": [
         "/subscriptions/1234a45-123d-4321-12aa-123b12a5678/resourcegroups/my-resource-group/providers/microsoft.insights/actiongroups/test-actiongroup"
      ]
   },
   "Severity": "critical",
   "Version": 1
}

Utilize o método Put com um ID de ação exclusivo para associar um grupo de ações já existente para uma agenda. O exemplo seguinte ilustra a utilização:

$AzNsJson = "{'properties': { 'Name': 'test-alert', 'Version':'1', 'Type':'Alert', 'Threshold': { 'Operator': 'gt', 'Value': 12 },'Severity': 'critical', 'AzNsNotification': {'GroupIds': ['subscriptions/1234a45-123d-4321-12aa-123b12a5678/resourcegroups/my-resource-group/providers/microsoft.insights/actiongroups/test-actiongroup']} } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{Resource Group Name}/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/myAzNsaction?api-version=2015-03-20 $AzNsJson

Utilize o método Put com um ID de ação existente para modificar um grupo de ações associado a uma agenda. O corpo do pedido tem de incluir o etag da ação.

$AzNsJson = "{'etag': 'datetime'2017-12-13T10%3A52%3A21.1697364Z'\"', 'properties': { 'Name': 'test-alert', 'Version':'1', 'Type':'Alert', 'Threshold': { 'Operator': 'gt', 'Value': 12 },'Severity': 'critical', 'AzNsNotification': { 'GroupIds': ['subscriptions/1234a45-123d-4321-12aa-123b12a5678/resourcegroups/my-resource-group/providers/microsoft.insights/actiongroups/test-actiongroup'] } } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{Resource Group Name}/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/myAzNsaction?api-version=2015-03-20 $AzNsJson

Personalizar ações

Por predefinição, as ações seguem modelos padrão e formatar para notificações. No entanto, pode personalizar algumas ações, mesmo que sejam controladas por grupos de ações. Atualmente, a personalização é possível para EmailSubject e WebhookPayload.

Personalizar o EmailSubject para um grupo de ações

Por predefinição, o assunto do e-mail para alertas é Notificação <AlertName> de Alerta para <WorkspaceName>. Mas o assunto pode ser personalizado para que possa especificar palavras ou etiquetas que lhe permitam utilizar facilmente regras de filtro na sua Caixa de Entrada. Os detalhes do cabeçalho de e-mail personalizado têm de ser enviados juntamente com ActionGroup os detalhes, tal como no exemplo seguinte:

"etag": "W/\"datetime'2017-12-13T10%3A52%3A21.1697364Z'\"",
"properties": {
   "Type": "Alert",
   "Name": "test-alert",
   "Description": "I need to put a description here",
   "Threshold": {
      "Operator": "gt",
      "Value": 12
   },
   "AzNsNotification": {
      "GroupIds": [
         "/subscriptions/1234a45-123d-4321-12aa-123b12a5678/resourcegroups/my-resource-group/providers/microsoft.insights/actiongroups/test-actiongroup"
      ],
      "CustomEmailSubject": "Azure Alert fired"
   },
   "Severity": "critical",
   "Version": 1
}

Utilize o método Put com um ID de ação exclusivo para associar um grupo de ações existente à personalização de uma agenda. O exemplo seguinte ilustra a utilização:

$AzNsJson = "{'properties': { 'Name': 'test-alert', 'Version':'1', 'Type':'Alert', 'Threshold': { 'Operator': 'gt', 'Value': 12 },'Severity': 'critical', 'AzNsNotification': {'GroupIds': ['subscriptions/1234a45-123d-4321-12aa-123b12a5678/resourcegroups/my-resource-group/providers/microsoft.insights/actiongroups/test-actiongroup'], 'CustomEmailSubject': 'Azure Alert fired'} } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{Resource Group Name}/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/myAzNsaction?api-version=2015-03-20 $AzNsJson

Utilize o método Put com um ID de ação existente para modificar um grupo de ações associado a uma agenda. O corpo do pedido tem de incluir o etag da ação.

$AzNsJson = "{'etag': 'datetime'2017-12-13T10%3A52%3A21.1697364Z'\"', 'properties': { 'Name': 'test-alert', 'Version':'1', 'Type':'Alert', 'Threshold': { 'Operator': 'gt', 'Value': 12 },'Severity': 'critical', 'AzNsNotification': {'GroupIds': ['subscriptions/1234a45-123d-4321-12aa-123b12a5678/resourcegroups/my-resource-group/providers/microsoft.insights/actiongroups/test-actiongroup']}, 'CustomEmailSubject': 'Azure Alert fired' } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{Resource Group Name}/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/myAzNsaction?api-version=2015-03-20 $AzNsJson
Personalizar o WebhookPayload para um grupo de ações

Por predefinição, o webhook enviado através de um grupo de ações do Log Analytics tem uma estrutura fixa. Mas pode personalizar o payload JSON com variáveis específicas suportadas para cumprir os requisitos do ponto final do webhook. Para obter mais informações, veja Ação do Webhook para regras de alerta de pesquisa de registos.

Os detalhes personalizados do webhook têm de ser enviados juntamente com ActionGroup os detalhes. Serão aplicados a todos os URIs de webhook especificados no grupo de ações. O exemplo seguinte ilustra a utilização:

"etag": "W/\"datetime'2017-12-13T10%3A52%3A21.1697364Z'\"",
"properties": {
   "Type": "Alert",
   "Name": "test-alert",
   "Description": "I need to put a description here",
   "Threshold": {
      "Operator": "gt",
      "Value": 12
   },
   "AzNsNotification": {
      "GroupIds": [
         "/subscriptions/1234a45-123d-4321-12aa-123b12a5678/resourcegroups/my-resource-group/providers/microsoft.insights/actiongroups/test-actiongroup"
      ],
   "CustomWebhookPayload": "{\"field1\":\"value1\",\"field2\":\"value2\"}",
   "CustomEmailSubject": "Azure Alert fired"
   },
   "Severity": "critical",
   "Version": 1
},

Utilize o método Put com um ID de ação exclusivo para associar um grupo de ações existente à personalização de uma agenda. O exemplo seguinte ilustra a utilização:

$AzNsJson = "{'properties': { 'Name': 'test-alert', 'Version':'1', 'Type':'Alert', 'Threshold': { 'Operator': 'gt', 'Value': 12 },'Severity': 'critical', 'AzNsNotification': {'GroupIds': ['subscriptions/1234a45-123d-4321-12aa-123b12a5678/resourcegroups/my-resource-group/providers/microsoft.insights/actiongroups/test-actiongroup'], 'CustomEmailSubject': 'Azure Alert fired','CustomWebhookPayload': '{\"field1\":\"value1\",\"field2\":\"value2\"}'} } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{Resource Group Name}/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/myAzNsaction?api-version=2015-03-20 $AzNsJson

Utilize o método Put com um ID de ação existente para modificar um grupo de ações associado a uma agenda. O corpo do pedido tem de incluir o etag da ação.

$AzNsJson = "{'etag': 'datetime'2017-12-13T10%3A52%3A21.1697364Z'\"', 'properties': { 'Name': 'test-alert', 'Version':'1', 'Type':'Alert', 'Threshold': { 'Operator': 'gt', 'Value': 12 },'Severity': 'critical', 'AzNsNotification': {'GroupIds': ['subscriptions/1234a45-123d-4321-12aa-123b12a5678/resourcegroups/my-resource-group/providers/microsoft.insights/actiongroups/test-actiongroup']}, 'CustomEmailSubject': 'Azure Alert fired','CustomWebhookPayload': '{\"field1\":\"value1\",\"field2\":\"value2\"}' } }"
armclient put /subscriptions/{Subscription ID}/resourceGroups/{Resource Group Name}/Microsoft.OperationalInsights/workspaces/{Workspace Name}/savedSearches/{Search ID}/schedules/{Schedule ID}/actions/myAzNsaction?api-version=2015-03-20 $AzNsJson

Passos seguintes