Creación y administración de reglas de alerta de Log Analytics con la API de RESTCreate and manage alert rules in Log Analytics with REST API

Importante

Como ya se anunció, las áreas de trabajo de Log Analytics creadas después del 1 de junio de 2019 administran las reglas de alertas mediante la versión actual de scheduledQueryRules API.As announced, log analytics workspace(s) created after June 1, 2019 manage alert rules using the current scheduledQueryRules API. Se anima a los clientes a cambiar a la API actual en áreas de trabajo más antiguas para aprovechar las ventajas de scheduledQueryRules de Azure Monitor.Customers are encouraged to switch to the current API in older workspaces to leverage Azure Monitor scheduledQueryRules benefits. En este artículo se describe la administración de reglas de alerta mediante la API heredada.This article describes management of alert rules using the legacy API.

La API REST de alertas de Log Analytics le permite crear y administrar alertas en Log Analytics.The Log Analytics Alert REST API allows you to create and manage alerts in Log Analytics. En este artículo encontrará información detallada sobre la API y varios ejemplos para realizar distintas operaciones.This article provides details of the API and several examples for performing different operations.

La API de REST de búsqueda de Log Analytics es de tipo RESTful y se puede obtener acceso a ella a través de la API de REST de Azure Resource Manager.The Log Analytics Search REST API is RESTful and can be accessed via the Azure Resource Manager REST API. En este documento encontrará ejemplos donde se tiene acceso a la API desde una línea de comandos de PowerShell a través de ARMClient, una herramienta de línea de comandos de código abierto que simplifica la tarea de invocar a la API de Azure Resource Manager.In this document, you will find examples where the API is accessed from a PowerShell command line using ARMClient, an open-source command-line tool that simplifies invoking the Azure Resource Manager API. El uso de ARMClient y PowerShell es una de las muchas opciones para tener acceso a la API de búsqueda de Log Analytics.The use of ARMClient and PowerShell is one of many options to access the Log Analytics Search API. Con estas herramientas, puede usar la API de RESTful de Azure Resource Manager para realizar llamadas a las áreas de trabajo de Log Analytics y ejecutar comandos de búsqueda dentro de ellas.With these tools, you can utilize the RESTful Azure Resource Manager API to make calls to Log Analytics workspaces and perform search commands within them. La API generará resultados de búsqueda, en formato JSON, lo que le permite usar los resultados de búsqueda de muchas formas distintas mediante programación.The API will output search results to you in JSON format, allowing you to use the search results in many different ways programmatically.

PrerrequisitosPrerequisites

Actualmente, solo se pueden crear alertas con una búsqueda guardada en Log Analytics.Currently, alerts can only be created with a saved search in Log Analytics. Para obtener más información, consulte API de búsqueda de registros de Log Analytics .You can refer to the Log Search REST API for more information.

ProgramacionesSchedules

Una búsqueda guardada puede tener una o varias programaciones.A saved search can have one or more schedules. La programación define la frecuencia con que se realiza la búsqueda y el intervalo de tiempo en el que se identifican los criterios.The schedule defines how often the search is run and the time interval over which the criteria is identified. Las programaciones tienen las propiedades de la siguiente tabla.Schedules have the properties in the following table.

PropiedadProperty DescripciónDescription
IntervaloInterval Frecuencia con que se realiza la búsqueda.How often the search is run. Se mide en minutos.Measured in minutes.
QueryTimeSpanQueryTimeSpan Intervalo de tiempo en el que se evalúan los criterios.The time interval over which the criteria is evaluated. Debe ser igual o mayor que Intervalo.Must be equal to or greater than Interval. Se mide en minutos.Measured in minutes.
VersiónVersion Versión de API en uso.The API version being used. Actualmente, siempre debe estar establecida en 1.Currently, this should always be set to 1.

Por ejemplo, en una consulta de evento con un valor de Intervalo de 15 minutos y un valor de Timespan de 30 minutos,For example, consider an event query with an Interval of 15 minutes and a Timespan of 30 minutes. la consulta se ejecutaría cada 15 minutos y se desencadenaría una alerta si los criterios siguieran evaluándose como True durante un intervalo de 30 minutos.In this case, the query would be run every 15 minutes, and an alert would be triggered if the criteria continued to resolve to true over a 30-minute span.

Recuperar programacionesRetrieving schedules

Use el método Get para recuperar todas las programaciones de una búsqueda guardada.Use the Get method to retrieve all schedules for a saved search.

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

Use el método Get con un identificador de programación para recuperar una programación concreta de una búsqueda guardada.Use the Get method with a schedule ID to retrieve a particular schedule for a saved search.

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

La siguiente es una respuesta de ejemplo de una programación.Following is a sample response for a schedule.

{
   "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,
      }
   }]
}

Creación de una programaciónCreating a schedule

Use el método Put con un identificador de programación único para crear una programación nueva.Use the Put method with a unique schedule ID to create a new schedule. Dos programaciones no pueden tener el mismo identificador, aunque estén asociadas a diferentes búsquedas guardadas.Two schedules cannot have the same ID even if they are associated with different saved searches. Al crear una programación en la consola de Log Analytics, se crea un GUID para el identificador de programación.When you create a schedule in the Log Analytics console, a GUID is created for the schedule ID.

Nota

El nombre de todas las búsquedas guardadas, programaciones y acciones creadas con Log Analytics API debe estar en minúsculas.The name for all saved searches, schedules, and actions created with the Log Analytics API must be in lowercase.

$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

Edición de una programaciónEditing a schedule

Utilice el método Put con un identificador de programación existente para modificar la programación de la misma búsqueda guardada. En el ejemplo siguiente, la programación está deshabilitada.Use the Put method with an existing schedule ID for the same saved search to modify that schedule; in example below the schedule is disabled. El cuerpo de la solicitud debe incluir el valor etag de la programación.The body of the request must include the etag of the schedule.

$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 programacionesDeleting schedules

Para eliminar una programación, use el método Delete con un identificador de programación.Use the Delete method with a schedule ID to delete a schedule.

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

AccionesActions

Una programación puede tener varias acciones.A schedule can have multiple actions. Una acción puede definir uno o varios procesos que se van a realizar (como enviar un correo o iniciar un Runbook), o bien puede definir un umbral que determina si los resultados de una búsqueda coinciden con algunos criterios.An action may define one or more processes to perform such as sending a mail or starting a runbook, or it may define a threshold that determines when the results of a search match some criteria. Algunas acciones definen ambos aspectos, de forma que los procesos se realizan cuando se alcance el umbral.Some actions will define both so that the processes are performed when the threshold is met.

Todas las acciones tienen las propiedades de la siguiente tabla.All actions have the properties in the following table. Los distintos tipos de alertas tienen diferentes propiedades adicionales, descritas aquí.Different types of alerts have different additional properties, which are described below.

PropiedadProperty DescripciónDescription
Type Tipo de la acción.Type of the action. Actualmente, los valores posibles son Alert y Webhook.Currently the possible values are Alert and Webhook.
Name Nombre para mostrar de la alerta.Display name for the alert.
Version Versión de API en uso.The API version being used. Actualmente, siempre debe estar establecida en 1.Currently, this should always be set to 1.

Recuperar accionesRetrieving actions

Use el método Get para recuperar todas las acciones de una programación.Use the Get method to retrieve all actions for a schedule.

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

Use el método Get con el identificador de una acción para recuperar esa acción concreta para una programación.Use the Get method with the action ID to retrieve a particular action for a schedule.

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

Crear o editar accionesCreating or editing actions

Para crear una acción, use el método Put con un identificador de acción único de la programación.Use the Put method with an action ID that is unique to the schedule to create a new action. Al crear una acción en la consola de Log Analytics, se crea un GUID para el identificador de acción.When you create an action in the Log Analytics console, a GUID is for the action ID.

Nota

El nombre de todas las búsquedas guardadas, programaciones y acciones creadas con Log Analytics API debe estar en minúsculas.The name for all saved searches, schedules, and actions created with the Log Analytics API must be in lowercase.

Utilice el método Put con un identificador de acción existente para modificar la programación de la misma búsqueda guardada.Use the Put method with an existing action ID for the same saved search to modify that schedule. El cuerpo de la solicitud debe incluir el valor etag de la programación.The body of the request must include the etag of the schedule.

El formato de solicitud para crear una acción varía según el tipo de acción. En las secciones siguientes se proporcionan ejemplos.The request format for creating a new action varies by action type so these examples are provided in the sections below.

Eliminar accionesDeleting actions

Use el método Delete con el identificador de acción para eliminar esa acción.Use the Delete method with the action ID to delete an action.

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

Acciones de alertaAlert Actions

Una programación debe tener una acción de alerta única y exclusivamente.A Schedule should have one and only one Alert action. Las acciones de alerta tienen una o varias de las secciones de la siguiente tabla.Alert actions have one or more of the sections in the following table. Cada una de ellas se describe con más detalle abajo.Each is described in further detail below.

SecciónSection DescripciónDescription UsoUsage
UmbralThreshold Criterios para establecer cuándo se va a ejecutar la acción.Criteria for when the action is run. Se requiere para cada alerta, ya sea antes o después de extenderlas a Azure.Required for every alert, before or after they are extended to Azure.
severitySeverity Etiqueta que se usa para clasificar la alerta cuando se desencadena.Label used to classify alert when triggered. Se requiere para cada alerta, ya sea antes o después de extenderlas a Azure.Required for every alert, before or after they are extended to Azure.
SuprimirSuppress Opción para dejar de recibir notificaciones de la alerta.Option to stop notifications from alert. Opcional para cada alerta, ya sea antes o después de extenderlas a Azure.Optional for every alert, before or after they are extended to Azure.
Grupos de accionesAction Groups Identificadores para Azure ActionGroup donde se especifican las acciones requeridas, como correos electrónicos, mensajes SMS, llamadas de voz, webhooks, runbooks de Automation, conectores ITSM, etc.IDs of Azure ActionGroup where actions required are specified, like - E-Mails, SMSs, Voice Calls, Webhooks, Automation Runbooks, ITSM Connectors, etc. Se requiere una vez que las alertas se extienden a AzureRequired once alerts are extended to Azure
Personalizar las accionesCustomize Actions Modifica la salida estándar para seleccionar acciones en ActionGroupModify the standard output for select actions from ActionGroup Opcional para cada alerta, se puede usar después de que las alertas se extienden a Azure.Optional for every alert, can be used after alerts are extended to Azure.

UmbralesThresholds

Una acción de alerta debe tener un umbral única y exclusivamente.An Alert action should have one and only one threshold. Cuando los resultados de una búsqueda guardada coinciden con el umbral de una acción asociada a esa búsqueda, se ejecutan los demás procesos de esa acción.When the results of a saved search match the threshold in an action associated with that search, then any other processes in that action are run. Una acción también puede contener solo un umbral para que pueda usarse con acciones de otros tipos que no contienen umbrales.An action can also contain only a threshold so that it can be used with actions of other types that don’t contain thresholds.

Los umbrales tienen las propiedades de la siguiente tabla.Thresholds have the properties in the following table.

PropiedadProperty DescripciónDescription
Operator Operador de la comparación de umbral.Operator for the threshold comparison.
gt = Mayor quegt = Greater Than
lt = Menor quelt = Less Than
Value Valor del umbral.Value for the threshold.

Por ejemplo, en una consulta de evento con un valor de Intervalo de 15 minutos, un valor de Timespan de 30 minutos y un valor de Threshold mayor que 10,For example, consider an event query with an Interval of 15 minutes, a Timespan of 30 minutes, and a Threshold of greater than 10. la consulta se ejecutaría cada 15 minutos y se desencadenaría una alerta si devolviera 10 eventos creados durante un intervalo de 30 minutos.In this case, the query would be run every 15 minutes, and an alert would be triggered if it returned 10 events that were created over a 30-minute span.

La siguiente es una respuesta de ejemplo de una acción con un solo umbral.Following is a sample response for an action with only a threshold.

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

Use el método Put con un identificador de acción único para crear una acción de umbral para una programación.Use the Put method with a unique action ID to create a new threshold action for a schedule.

$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

Use el método Put con un identificador de acción existente para modificar una acción de umbral para una programación.Use the Put method with an existing action ID to modify a threshold action for a schedule. El cuerpo de la solicitud debe incluir el valor etag de la acción.The body of the request must include the etag of the action.

$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

severitySeverity

Log Analytics permite clasificar las alertas en categorías, para permitir una administración y una evaluación de prioridades más sencillas.Log Analytics allows you to classify your alerts into categories, to allow easier management and triage. La gravedad de la alerta que se define es: informativa, advertencia y crítica.The Alert severity defined is: informational, warning, and critical. Estos valores se asignan a la escala de gravedad normalizada de Alertas de Azure como:These are mapped to the normalized severity scale of Azure Alerts as:

Nivel de gravedad de Log AnalyticsLog Analytics Severity Level Nivel de gravedad de Alertas de AzureAzure Alerts Severity Level
critical Gravedad 0Sev 0
warning Gravedad 1Sev 1
informational Gravedad 2Sev 2

La siguiente es una respuesta de ejemplo de una acción con un solo umbral y gravedad.Following is a sample response for an action with only a threshold and 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
}

Use el método Put con un identificador de acción único para crear una acción para una programación con gravedad.Use the Put method with a unique action ID to create a new action for a schedule with 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

Use el método Put con un identificador de acción existente para modificar una acción de gravedad para una programación.Use the Put method with an existing action ID to modify a severity action for a schedule. El cuerpo de la solicitud debe incluir el valor etag de la acción.The body of the request must include the etag of the action.

$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

SuprimirSuppress

Las alertas de consulta basadas en Log Analytics se activarán cada vez que se alcance o supere el umbral.Log Analytics based query alerts will fire every time threshold is met or exceeded. Según la lógica implicada en la consulta, esto puede producir que la alerta se active en una serie de intervalos y, por tanto, también se envíen notificaciones constantemente.Based on the logic implied in the query, this may result in alert getting fired for a series of intervals and hence notifications also being sent constantly. Para evitar estos escenarios, un usuario puede establecer la opción de suprimir para indicar a Log Analytics que debe esperar durante un período de tiempo estipulado antes de que la notificación se desencadene por segunda vez para la regla de alertas.To prevent such scenario, a user can set Suppress option instructing Log Analytics to wait for a stipulated amount of time before notification is fired the second time for the alert rule. Por lo tanto, si la supresión se establece en 30 minutos, la alerta se activará la primera vez y enviará las notificaciones configuradas.So if suppress is set for 30 minutes; then alert will fire the first time and send notifications configured. Pero, a continuación, espera 30 minutos antes de volver a utilizar la notificación para la regla de alertas.But then wait for 30 minutes, before notification for the alert rule is again used. En el período transitorio, la regla de alertas se seguirá ejecutando: Log Analytics solo suprime la notificación durante el tiempo especificado, independientemente de cuántas veces se desencadena la regla de alertas durante este período.In the interim period, alert rule will continue to run - only notification is suppressed by Log Analytics for specified time, regardless of how many times the alert rule fired in this period.

La propiedad de supresión de la regla de alertas de Log Analytics se especifica con el valor Throttling y el período de supresión mediante el valor DurationInMinutes.Suppress property of Log Analytics alert rule is specified using the Throttling value and the suppression period using DurationInMinutes value.

La siguiente es una respuesta de ejemplo de una acción con un solo umbral, la gravedad y la propiedad de supresión.Following is a sample response for an action with only a threshold, severity, and suppress property

"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
}

Use el método Put con un identificador de acción único para crear una acción para una programación con gravedad.Use the Put method with a unique action ID to create a new action for a schedule with 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

Use el método Put con un identificador de acción existente para modificar una acción de gravedad para una programación.Use the Put method with an existing action ID to modify a severity action for a schedule. El cuerpo de la solicitud debe incluir el valor etag de la acción.The body of the request must include the etag of the action.

$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 accionesAction Groups

Todas las alertas de Azure usan el grupo de acciones como el mecanismo predeterminado para controlar las acciones.All alerts in Azure, use Action Group as the default mechanism for handling actions. Con el grupo de acciones, puede especificar las acciones una vez y, luego, asociar el grupo de acciones a varias alertas en todo Azure,With Action Group, you can specify your actions once and then associate the action group to multiple alerts - across Azure. sin la necesidad de declarar repetidamente una y otra vez las mismas acciones.Without the need, to repeatedly declare the same actions over and over again. Los grupos de acciones admiten varias acciones, incluido el correo electrónico, SMS, llamadas de voz, conexión ITSM, runbook de Automation, URI de webhook, etc.Action Groups support multiple actions - including email, SMS, Voice Call, ITSM Connection, Automation Runbook, Webhook URI and more.

Para los usuarios que han extendido sus alertas a Azure, ahora una programación tendrá los detalles del grupo de acciones junto con el umbral, para así poder crear una alerta.For users who have extended their alerts into Azure - a schedule should now have Action Group details passed along with threshold, to be able to create an alert. Antes de crear una alerta, es necesario definir los detalles de correo electrónico, las direcciones URL de webhooks, los detalles de automatización de runbooks y otras acciones dentro de un grupo de acciones. Es posible crear un grupo de acciones desde Azure Monitor en el portal o usar la API Action Group.E-mail details, Webhook URLs, Runbook Automation details, and other Actions, need to be defined in side an Action Group first before creating an alert; one can create Action Group from Azure Monitor in Portal or use Action Group API.

Para agregar la asociación de un grupo de acciones a una alerta, especifique el identificador de Azure Resource Manager único del grupo de acciones en la definición de la alerta.To add association of action group to an alert, specify the unique Azure Resource Manager ID of the action group in the alert definition. A continuación, aparece una ilustración de ejemplo:A sample illustration is provided below:

"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
}

Use el método Put con un identificación de acción único para asociar el grupo de acciones ya existente para una programación.Use the Put method with a unique action ID to associate already existing Action Group for a schedule. Esta es una ilustración de ejemplo del uso.The following is a sample illustration of usage.

$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

Use el método Put con un identificador de acción existente para modificar un grupo de acciones asociado para una programación.Use the Put method with an existing action ID to modify an Action Group associated for a schedule. El cuerpo de la solicitud debe incluir el valor etag de la acción.The body of the request must include the etag of the action.

$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 las accionesCustomize Actions

En el caso de las acciones predeterminadas, siga la plantilla y el formato estándar para las notificaciones.By default actions, follow standard template and format for notifications. Pero los usuarios pueden personalizar algunas acciones, incluso si los controlan los grupos de acciones.But user can customize some actions, even if they are controlled by Action Groups. Actualmente, es posible personalizar el asunto del correo electrónico y la carga del webhook.Currently, customization is possible for Email Subject and Webhook Payload.

Personalización del asunto del correo electrónico para el grupo de accionesCustomize E-Mail Subject for Action Group

De manera predeterminada, el asunto del correo electrónico para las alertas es: Notificación de alerta <AlertName> para <WorkspaceName>.By default, the email subject for alerts is: Alert Notification <AlertName> for <WorkspaceName>. Pero se puede personalizar, de modo que pueda especificar palabras o etiquetas, para permitirle emplear fácilmente reglas de filtro en la Bandeja de entrada.But this can be customized, so that you can specific words or tags - to allow you to easily employ filter rules in your Inbox. Los detalles del encabezado del correo electrónico personalizado se deben enviar junto con los detalles de ActionGroup, como se muestra en el ejemplo siguiente.The customize email header details need to send along with ActionGroup details, as in sample below.

"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
}

Use el método Put con un identificación de acción único para asociar el grupo de acciones ya existente con una personalización para una programación.Use the Put method with a unique action ID to associate already existing Action Group with customization for a schedule. Esta es una ilustración de ejemplo del uso.The following is a sample illustration of usage.

$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

Use el método Put con un identificador de acción existente para modificar un grupo de acciones asociado para una programación.Use the Put method with an existing action ID to modify an Action Group associated for a schedule. El cuerpo de la solicitud debe incluir el valor etag de la acción.The body of the request must include the etag of the action.

$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
Personalización de la carga de Webhook para un grupo de accionesCustomize Webhook Payload for Action Group

De manera predeterminada, el webhook enviado a través del grupo de acciones para Log Analytics tiene una estructura fija.By default, the webhook sent via Action Group for log analytics has a fixed structure. Sin embargo, un usuario puede personalizar la carga de JSON si usa variables específicas admitidas para cumplir con los requisitos del punto de conexión del webhook.But one can customize the JSON payload by using specific variables supported, to meet requirements of the webhook endpoint. Para más información, consulte Acciones de webhook para reglas de alertas de registro.For more information, see Webhook action for log alert rules.

Los detalles del webhook personalizado se deben enviar junto con los detalles de ActionGroup y se aplicarán a todo los URI del webhook especificados dentro del grupo de acciones, como se indica en el ejemplo a continuación.The customize webhook details need to send along with ActionGroup details and will be applied to all Webhook URI specified inside the action group; as in sample below.

"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
},

Use el método Put con un identificación de acción único para asociar el grupo de acciones ya existente con una personalización para una programación.Use the Put method with a unique action ID to associate already existing Action Group with customization for a schedule. Esta es una ilustración de ejemplo del uso.The following is a sample illustration of usage.

$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

Use el método Put con un identificador de acción existente para modificar un grupo de acciones asociado para una programación.Use the Put method with an existing action ID to modify an Action Group associated for a schedule. El cuerpo de la solicitud debe incluir el valor etag de la acción.The body of the request must include the etag of the action.

$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

Pasos siguientesNext steps