Configurare un webhook in un avviso relativo alle metriche di AzureConfigure a webhook on an Azure metric alert

È possibile usare i webhook per instradare le notifiche di avviso di Azure ad altri sistemi per la post-elaborazione o le azioni personalizzate.You can use webhooks to route an Azure alert notification to other systems for post-processing or custom actions. È possibile usare un webhook in un avviso per instradarlo a servizi che inviano SMS, registrano bug, inviano notifiche a un team tramite chat o servizi di messaggistica oppure per varie altre azioni.You can use a webhook on an alert to route it to services that send SMS messages, to log bugs, to notify a team via chat or messaging services, or for various other actions.

Questo articolo descrive come impostare un webhook per un avviso di metrica di Azure.This article describes how to set a webhook on an Azure metric alert. L'articolo illustra anche le caratteristiche del payload per un'operazione HTTP POST a un webhook.It also shows you what the payload for the HTTP POST to a webhook looks like. Per informazioni sulla configurazione e lo schema per un avviso del log attività di Azure (avviso per eventi), vedere Chiamare un webhook negli avvisi dei log attività di Azure.For information about the setup and schema for an Azure activity log alert (alert on events), see Call a webhook on an Azure activity log alert.

Gli avvisi di Azure usano HTTP POST per inviare il contenuto degli avvisi in formato JSON a un URI webhook specificato durante la creazione dell'avviso.Azure alerts use HTTP POST to send the alert contents in JSON format to a webhook URI that you provide when you create the alert. Lo schema è definito più avanti in questo articolo.The schema is defined later in this article. L'URI deve essere un endpoint HTTP o HTTPS valido.The URI must be a valid HTTP or HTTPS endpoint. Azure inserisce una voce per ogni richiesta quando viene attivato un avviso.Azure posts one entry per request when an alert is activated.

Configurare webhook tramite il portale di AzureConfigure webhooks via the Azure portal

Per aggiungere o aggiornare l'URI del webhook, nel portale di Azure passare alla schermata di creazione/aggiornamento degli avvisi.To add or update the webhook URI, in the Azure portal, go to Create/Update Alerts.

Riquadro Aggiungi una regola di avviso

È anche possibile configurare un avviso da inserire nell'URI di un webhook usando i cmdlet di Azure PowerShell, l'interfaccia della riga di comando multipiattaforma o l'API REST di Monitoraggio di Azure.You can also configure an alert to post to a webhook URI by using Azure PowerShell cmdlets, a cross-platform CLI, or Azure Monitor REST APIs.

Autenticazione del webhookAuthenticate the webhook

È possibile autenticare il webhook usando l'autorizzazione basata su token.The webhook can authenticate by using token-based authorization. L'URI del webhook viene salvato con un ID token.The webhook URI is saved with a token ID. Ad esempio: https://mysamplealert/webcallback?tokenid=sometokenid&someparameter=somevalueFor example: https://mysamplealert/webcallback?tokenid=sometokenid&someparameter=somevalue

Schema del payloadPayload schema

L'operazione POST contiene il payload e lo schema JSON seguenti per tutti gli avvisi basati su metriche:The POST operation contains the following JSON payload and schema for all metric-based alerts:

{
    "WebhookName": "Alert1515515157799",
    "RequestBody": {
        "status": "Activated",
        "context": {
            "timestamp": "2015-08-14T22:26:41.9975398Z",
            "id": "/subscriptions/s1/resourceGroups/useast/providers/microsoft.insights/alertrules/ruleName1",
            "name": "ruleName1",
            "description": "some description",
            "conditionType": "Metric",
            "condition": {
                "metricName": "Requests",
                "metricUnit": "Count",
                "metricValue": "10",
                "threshold": "10",
                "windowSize": "15",
                "timeAggregation": "Average",
                "operator": "GreaterThanOrEqual"
            },
            "subscriptionId": "s1",
            "resourceGroupName": "useast",
            "resourceName": "mysite1",
            "resourceType": "microsoft.foo/sites",
            "resourceId": "/subscriptions/s1/resourceGroups/useast/providers/microsoft.foo/sites/mysite1",
            "resourceRegion": "centralus",
            "portalLink": "https://portal.azure.com/#resource/subscriptions/s1/resourceGroups/useast/providers/microsoft.foo/sites/mysite1"
        },
        "properties": {
            "key1": "value1",
            "key2": "value2"
        }
    }
}
CampoField MandatoryMandatory Set di valori fissoFixed set of values NoteNotes
statusstatus SY Activated, ResolvedActivated, Resolved Stato dell'avviso in base alle condizioni impostate.The status for the alert based on the conditions you set.
contextcontext SY Contesto dell'avviso.The alert context.
timestamptimestamp SY Ora in cui è stato attivato l'avviso.The time at which the alert was triggered.
idid SY Ogni regola di avviso ha un ID univoco.Every alert rule has a unique ID.
namename SY Nome dell'avviso.The alert name.
descriptiondescription SY Descrizione dell'avviso.A description of the alert.
conditionTypeconditionType SY Metric, EventMetric, Event Sono supportati due tipi di avviso: metrica ed evento.Two types of alerts are supported: metric and event. Gli avvisi di metrica sono basati su una condizione di metrica.Metric alerts are based on a metric condition. Gli avvisi di eventi sono basati su un evento nel log attività.Event alerts are based on an event in the activity log. Usare questo valore per controllare se l'avviso è basato su una metrica o su un evento.Use this value to check whether the alert is based on a metric or on an event.
conditioncondition SY Campi specifici da controllare in base al valore di conditionType.The specific fields to check based on the conditionType value.
metricNamemetricName Per avvisi di metricaFor metric alerts Nome della metrica che definisce l'oggetto monitorato dalla regola.The name of the metric that defines what the rule monitors.
metricUnitmetricUnit Per avvisi di metricaFor metric alerts Bytes, BytesPerSecond, Count, CountPerSecond, Percent, SecondsBytes, BytesPerSecond, Count, CountPerSecond, Percent, Seconds Unità consentita nella metrica.The unit allowed in the metric. Vedere i valori consentiti.See allowed values.
metricValuemetricValue Per avvisi di metricaFor metric alerts Valore effettivo della metrica che ha generato l'avviso.The actual value of the metric that caused the alert.
thresholdthreshold Per avvisi di metricaFor metric alerts Valore soglia al quale viene attivato l'avviso.The threshold value at which the alert is activated.
windowSizewindowSize Per avvisi di metricaFor metric alerts Periodo di tempo usato per monitorare l'attività degli avvisi in base alla soglia.The period of time that's used to monitor alert activity based on the threshold. Il valore deve essere compreso tra 5 minuti e 1 giorno.The value must be between 5 minutes and 1 day. Il valore deve essere nel formato di durata ISO 8601.The value must be in ISO 8601 duration format.
timeAggregationtimeAggregation Per avvisi di metricaFor metric alerts Average, Last, Maximum, Minimum, None, TotalAverage, Last, Maximum, Minimum, None, Total Definisce come i dati raccolti devono essere combinati nel tempo.How the data that's collected should be combined over time. Il valore predefinito è "Average".The default value is Average. Vedere i valori consentiti.See allowed values.
operatoroperator Per avvisi di metricaFor metric alerts Operatore usato per confrontare i dati di metrica attuali con la soglia impostata.The operator that's used to compare the current metric data to the set threshold.
subscriptionIdsubscriptionId SY ID sottoscrizione di Azure.The Azure subscription ID.
resourceGroupNameresourceGroupName SY Nome del gruppo di risorse per la risorsa interessata.The name of the resource group for the affected resource.
resourceNameresourceName SY Nome della risorsa interessata.The resource name of the affected resource.
resourceTyperesourceType SY Tipo della risorsa interessata.The resource type of the affected resource.
ResourceIdresourceId SY ID della risorsa interessata.The resource ID of the affected resource.
resourceRegionresourceRegion SY Area o posizione della risorsa interessata.The region or location of the affected resource.
portalLinkportalLink SY Collegamento diretto alla pagina di riepilogo delle risorse del portale.A direct link to the portal resource summary page.
propertiesproperties NN FacoltativoOptional Set di coppie chiave/valore contenente i dettagli sull'evento.A set of key/value pairs that has details about the event. Ad esempio, Dictionary<String, String>.For example, Dictionary<String, String>. Il campo properties è facoltativo.The properties field is optional. In un flusso di lavoro basato su un'interfaccia utente personalizzata o un'app per la logica, gli utenti possono immettere una coppia chiave/valore che può essere passata tramite il payload.In a custom UI or logic app-based workflow, users can enter key/value pairs that can be passed via the payload. Un metodo alternativo per passare le proprietà personalizzate al webhook è rappresentato dall'URI del webhook stesso (sotto forma di parametri di query).An alternate way to pass custom properties back to the webhook is via the webhook URI itself (as query parameters).

Nota

È possibile impostare il campo delle proprietà solo tramite le API REST di Monitoraggio di Azure.You can set the properties field only by using Azure Monitor REST APIs.

Passaggi successiviNext steps