Schema di avviso comune

Lo schema di avviso comune standardizza l'utilizzo delle notifiche di avviso di Monitoraggio di Azure. In passato, i log attività, le metriche e gli avvisi per la ricerca log avevano modelli di e-mail e schemi webhook personalizzati. Lo schema di avviso comune fornisce uno schema standardizzato per tutte le notifiche di avviso.

L'uso di uno schema standardizzato consente di ridurre al minimo il numero di integrazioni, semplificando il processo di gestione e gestione delle integrazioni. Lo schema comune consente un'esperienza di utilizzo degli avvisi più completa sia nel portale di Azure che nell'app per dispositivi mobili di Azure.

Lo schema di avviso comune fornisce una struttura coerente per:

  • Modelli di posta elettronica: Usa il modello di posta elettronica dettagliato per diagnosticare i problemi a colpo d'occhio. I collegamenti incorporati all'istanza di avviso nel portale e alla risorsa interessata assicurano la possibilità di avviare rapidamente il processo di correzione.
  • Struttura JSON: Usa la struttura JSON coerente per compilare integrazioni per tutti i tipi di avviso usando:
    • App per la logica di Azure
    • Funzioni di Azure
    • Runbook di Automazione di Azure

Nota

  • Gli avvisi generati da informazioni dettagliate sulle VM non supportano lo schema comune.
  • Gli avvisi di rilevamento intelligente usano lo schema comune per impostazione predefinita. Non è necessario abilitare lo schema comune per gli avvisi di rilevamento intelligente.

Struttura dello schema comune

Lo schema comune include informazioni sulla risorsa interessata e sulla causa dell'avviso in queste sezioni:

  • Essentials: campi standardizzati, usati da tutti i tipi di avviso che descrivono la risorsa interessata dall'avviso e dai metadati comuni degli avvisi, ad esempio gravità o descrizione.

    Per instradare istanze di avviso a team specifici in base a criteri come un gruppo di risorse, è possibile usare i campi nella sezione Essentials per fornire la logica di routing per tutti i tipi di avviso. I team che ricevono la notifica di avviso possono quindi usare i campi di contesto per l'indagine.

  • Contesto di avviso: i campi che variano a seconda del tipo di avviso. I campi del contesto di avviso descrivono la causa dell'avviso. Ad esempio, un avviso di metrica include campi come il nome della metrica e il valore della metrica nel contesto di avviso. Un avviso del log attività contiene informazioni sull'evento che ha generato l'avviso.

  • Proprietà personalizzate: è possibile includere nel payload dell'avviso informazioni aggiuntive non incluse nel payload dell'avviso per impostazione predefinita grazie a proprietà personalizzate. Le proprietà personalizzate sono una coppia Chiave:Valore che può includere qualsiasi informazione configurata nella regola di avviso.

Payload di avvisi di esempio

{
  "schemaId": "azureMonitorCommonAlertSchema",
  "data": {
    "essentials": {
      "alertId": "/subscriptions/<subscription ID>/providers/Microsoft.AlertsManagement/alerts/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e",
      "alertRule": "WCUS-R2-Gen2",
      "severity": "Sev3",
      "signalType": "Metric",
      "monitorCondition": "Resolved",
      "monitoringService": "Platform",
      "alertTargetIDs": [
        "/subscriptions/<subscription ID>/resourcegroups/pipelinealertrg/providers/microsoft.compute/virtualmachines/wcus-r2-gen2"
      ],
      "configurationItems": [
        "wcus-r2-gen2"
      ],
      "originAlertId": "3f2d4487-b0fc-4125-8bd5-7ad17384221e_PipeLineAlertRG_microsoft.insights_metricAlerts_WCUS-R2-Gen2_-117781227",
      "firedDateTime": "2019-03-22T13:58:24.3713213Z",
      "resolvedDateTime": "2019-03-22T14:03:16.2246313Z",
      "description": "",
      "essentialsVersion": "1.0",
      "alertContextVersion": "1.0"
    },
    "alertContext": {
      "properties": null,
      "conditionType": "SingleResourceMultipleMetricCriteria",
      "condition": {
        "windowSize": "PT5M",
        "allOf": [
          {
            "metricName": "Percentage CPU",
            "metricNamespace": "Microsoft.Compute/virtualMachines",
            "operator": "GreaterThan",
            "threshold": "25",
            "timeAggregation": "Average",
            "dimensions": [
              {
                "name": "ResourceId",
                "value": "3efad9dc-3d50-4eac-9c87-8b3fd6f97e4e"
              }
            ],
            "metricValue": 7.727
          }
        ]
      }
    },
    "customProperties": {
      "Key1": "Value1",
      "Key2": "Value2"
    }
  }
}

Per gli avvisi di esempio che usano lo schema comune, vedere Payload di avviso di esempio.

Campi essenziali

Campo Descrizione
alertId ID risorsa univoco che identifica l'istanza dell'avviso.
alertRule Il nome della regola di avviso che ha generato l'istanza di avviso.
Gravità La gravità dell'avviso. I valori possibili sono Sev0, Sev1, Sev2, Sev3 o Sev4.
signalType Identifica il segnale su cui è stata definita la regola di avviso. I valori possibili sono Metrica, Log o Log attività.
monitorCondition Quando si attiva un avviso, la relativa condizione del monitoraggio viene impostata su Attivato. Quando la condizione sottostante che ha determinato l'attivazione dell'avviso viene cancellata, la condizione del monitoraggio viene impostata su Risolto.
monitoringService Il servizio di monitoraggio o la soluzione che ha generato l'avviso. Il servizio di monitoraggio determina quali campi si trovano nel contesto di avviso.
alertTargetIds Elenco degli ID Azure Resource Manager interessati da un avviso. Per un avviso per la ricerca log definito in un'area di lavoro Log Analytics o in un'istanza di Application Insights, si tratta della rispettiva area di lavoro o applicazione.
configurationItems Elenco delle risorse interessate di un avviso.
In alcuni casi, gli elementi di configurazione possono essere diversi dalle destinazioni di avviso. Ad esempio, negli avvisi per la ricerca delle metriche-per-log o per la ricerca log definiti in un'area di lavoro Log Analytics, gli elementi di configurazione sono le risorse effettive che inviano i dati e non l'area di lavoro.
  • Nell'API avvisi per la ricerca log (Regole di query pianificate) v2021-08-01 i valori configurationItem vengono ricavati da dimensioni definite in modo esplicito in questa priorità: _ResourceId, ResourceId, Resource, Computer.
  • Nelle versioni precedenti dell'API degli avvisi per la ricerca log, i valori di configurationItem vengono acquisiti in modo implicito dai risultati in questa priorità: _ResourceId, ResourceId, Resource, Computer.
Nei sistemi Gestione dei servizi IT il campo configurationItems viene usato per correlare gli avvisi alle risorse in un database di gestione della configurazione.
originAlertId ID dell'istanza di avviso, generato dal servizio di monitoraggio che genera l'avviso.
firedDateTime Data e ora in cui l'istanza di avviso è stata attivata nel formato Coordinated Universal Time (UTC).
resolvedDateTime Data e ora in cui la condizione di monitoraggio per l'istanza di avviso è impostata su Risolto nel formato UTC. Attualmente applicabile solo per gli avvisi di metrica.
description La descrizione, come definito nella regola di avviso.
alertRuleID Il nome della regola di avviso che ha generato l'istanza di avviso.
resourceType Tipo di risorsa interessato dall'avviso.
resourceGroupName Nome del gruppo di risorse della risorsa interessata.
essentialsVersion Il numero di versione per la sezione Essentials.
alertContextVersion Il numero di versione per la sezione alertContext.
investigationLink Collegamento per analizzare l'avviso in Monitoraggio di Azure. Attualmente è necessaria una registrazione di anteprima limitata.

Campi del contesto di avviso per gli avvisi delle metriche

Campo Descrizione
proprietà Facoltativo. Raccolta di proprietà definite dal cliente.
conditionType Tipo di condizione selezionata per la regola di avviso:
- soglia statica
- soglia dinamica
- webtest
condizione
windowSize Periodo di tempo analizzato dalla regola di avviso.
allOf Indica che tutte le condizioni definite nella regola di avviso devono essere soddisfatte per attivare un avviso.
alertSensitivity In una regola di avviso con una soglia dinamica indica quanto è sensibile la regola o quanto il valore può deviare dalla soglia superiore o inferiore.
failingPeriods In una regola di avviso con una soglia dinamica, il numero di periodi di valutazione che non soddisfano la soglia di avviso che attiva un avviso. Ad esempio, è possibile indicare che un avviso viene attivato quando 3 dei cinque periodi di valutazione non rientrano nelle soglie di avviso.
numberOfEvaluationPeriods Numero totale di valutazioni.
minFailingPeriodsToAlert Numero minimo di valutazioni che non soddisfano le condizioni della regola di avviso.
ignoreDataBefore Facoltativo. In una regola di avviso con una soglia dinamica, la data da cui viene calcolata la soglia. Usare questo valore per indicare che la regola non deve calcolare la soglia dinamica usando i dati precedenti alla data specificata.
metricName Nome della metrica monitorata dalla regola di avviso.
metricNamespace Spazio dei nomi della metrica monitorata dalla regola di avviso.
Operatore Operatore logico della regola di avviso.
threshold Soglia definita nella regola di avviso. Per una regola di avviso con una soglia dinamica, questo valore è la soglia calcolata.
timeAggregation Tipo di aggregazione della regola di avviso.
dimensioni Dimensione della metrica che ha attivato l'avviso.
name Nome della dimensione.
value Valore della dimensione.
metricValue Valore della metrica al momento in cui ha violato la soglia.
webTestName Se il tipo di condizione è webtest, il nome del webtest.
windowStartTime Ora di inizio della finestra di valutazione in cui è stato attivato l'avviso.
windowEndTime Ora di fine della finestra di valutazione in cui è stato generato l'avviso.

Avviso di metrica di esempio con una soglia statica quando monitoringService = Platform

{
  "alertContext": {
      "properties": null,
      "conditionType": "SingleResourceMultipleMetricCriteria",
      "condition": {
        "windowSize": "PT5M",
        "allOf": [
          {
            "metricName": "Percentage CPU",
            "metricNamespace": "Microsoft.Compute/virtualMachines",
            "operator": "GreaterThan",
            "threshold": "25",
            "timeAggregation": "Average",
            "dimensions": [
              {
                "name": "ResourceId",
                "value": "3efad9dc-3d50-4eac-9c87-8b3fd6f97e4e"
              }
            ],
            "metricValue": 31.1105
          }
        ],
        "windowStartTime": "2019-03-22T13:40:03.064Z",
        "windowEndTime": "2019-03-22T13:45:03.064Z"
      }
    }
}

Avviso di metrica di esempio con una soglia dinamica quando monitoringService = Platform

{
  "alertContext": {
      "properties": null,
      "conditionType": "DynamicThresholdCriteria",
      "condition": {
        "windowSize": "PT5M",
        "allOf": [
          {
            "alertSensitivity": "High",
            "failingPeriods": {
              "numberOfEvaluationPeriods": 1,
              "minFailingPeriodsToAlert": 1
            },
            "ignoreDataBefore": null,
            "metricName": "Egress",
            "metricNamespace": "microsoft.storage/storageaccounts",
            "operator": "GreaterThan",
            "threshold": "47658",
            "timeAggregation": "Total",
            "dimensions": [],
            "metricValue": 50101
          }
        ],
        "windowStartTime": "2021-07-20T05:07:26.363Z",
        "windowEndTime": "2021-07-20T05:12:26.363Z"
      }
    }
}

Avviso di metrica di esempio per i test di disponibilità quando monitoringService = Platform

{
  "alertContext": {
      "properties": null,
      "conditionType": "WebtestLocationAvailabilityCriteria",
      "condition": {
        "windowSize": "PT5M",
        "allOf": [
          {
            "metricName": "Failed Location",
            "metricNamespace": null,
            "operator": "GreaterThan",
            "threshold": "2",
            "timeAggregation": "Sum",
            "dimensions": [],
            "metricValue": 5,
            "webTestName": "myAvailabilityTest-myApplication"
          }
        ],
        "windowStartTime": "2019-03-22T13:40:03.064Z",
        "windowEndTime": "2019-03-22T13:45:03.064Z"
      }
    }
}

Campi del contesto di avviso per gli avvisi per la ricerca log

Nota

Quando si abilita lo schema comune, i campi nel payload vengono reimpostati sui campi dello schema comuni. Di conseguenza, gli avvisi per la ricerca log presentano queste limitazioni relative allo schema comune:

  • Lo schema comune non è supportato per gli avvisi per la ricerca log che usano webhook con un oggetto di e-mail personalizzato e/o un payload JSON, poiché lo schema comune sovrascrive le configurazioni personalizzate.
  • Gli avvisi che usano lo schema comune hanno un limite di dimensioni superiori di 256 KB per avviso. Se il payload degli avvisi per la ricerca log include i risultati della ricerca che causano il superamento delle dimensioni massime dell'avviso, i risultati della ricerca non vengono incorporati nel payload degli avvisi per la ricerca log. È possibile verificare se il payload include i risultati della ricerca con il flag IncludedSearchResults. Usare LinkToFilteredSearchResultsAPI o LinkToSearchResultsAPI per accedere ai risultati delle query con l'API di Log Analytics se i risultati della ricerca non sono inclusi.
Campo Descrizione
SearchQuery Query definita nella regola di avviso.
SearchIntervalStartTimeUtc Ora di inizio della finestra di valutazione in cui l'avviso è stato attivato in formato UTC.
SearchIntervalEndTimeUtc Ora di fine della finestra di valutazione in cui l'avviso è stato attivato in formato UTC.
ResultCount Numero di record restituiti dalla query. Per le regole di misurazione delle metriche, il numero o i record che corrispondono alla combinazione di dimensioni specifica.
LinkToSearchResults Collegamento ai risultati della ricerca.
LinkToFilteredSearchResultsUI Per le regole di misurazione delle metriche, il collegamento ai risultati della ricerca dopo che sono stati filtrati in base alle combinazioni di dimensioni.
LinkToSearchResultsAPI Collegamento ai risultati della query usando l'API Log Analytics.
LinkToFilteredSearchResultsAPI Per le regole di misurazione delle metriche, il collegamento ai risultati della ricerca usando l'API Log Analytics dopo che sono stati filtrati in base alle combinazioni di dimensioni.
SearchIntervalDurationMin Numero totale di minuti nell'intervallo di ricerca.
SearchIntervalInMin Numero totale di minuti nell'intervallo di ricerca.
Threshold Soglia definita nella regola di avviso.
Operatore Operatore definito nella regola di avviso.
ApplicationID ID di Application Insights in cui è stato attivato l'avviso.
Dimensioni Per le regole di misurazione delle metriche, le dimensioni delle metriche in cui è stato attivato l'avviso.
name Nome della dimensione.
value Valore della dimensione.
SearchResults Risultati della ricerca completi.
table Tabella dei risultati nei risultati della ricerca.
name Nome della tabella nei risultati della ricerca.
colonne Colonne della tabella.
name Nome della colonna.
type Tipo della colonna.
rows Righe della tabella.
DataSources Origini dati in cui è stato attivato l'avviso.
resourceID ID risorsa interessato dall'avviso.
tabelle Le tabelle di risposta bozza incluse nella query.
IncludedSearchResults Flag che indica se il payload deve contenere i risultati.
AlertType Tipo di avviso:
- Misura della metrica
- Numero di risultati

Avviso per la ricerca log di esempio quando monitoringService = Log Analytics

{
  "alertContext": {
    "SearchQuery": "Perf | where ObjectName == \"Processor\" and CounterName == \"% Processor Time\" | summarize AggregatedValue = avg(CounterValue) by bin(TimeGenerated, 5m), Computer",
    "SearchIntervalStartTimeUtc": "3/22/2019 1:36:31 PM",
    "SearchIntervalEndtimeUtc": "3/22/2019 1:51:31 PM",
    "ResultCount": 2,
    "LinkToSearchResults": "https://portal.azure.com/#Analyticsblade/search/index?_timeInterval.intervalEnd=2018-03-26T09%3a10%3a40.0000000Z&_timeInterval.intervalDuration=3600&q=Usage",
    "LinkToFilteredSearchResultsUI": "https://portal.azure.com/#Analyticsblade/search/index?_timeInterval.intervalEnd=2018-03-26T09%3a10%3a40.0000000Z&_timeInterval.intervalDuration=3600&q=Usage",
    "LinkToSearchResultsAPI": "https://api.loganalytics.io/v1/workspaces/workspaceID/query?query=Heartbeat&timespan=2020-05-07T18%3a11%3a51.0000000Z%2f2020-05-07T18%3a16%3a51.0000000Z",
    "LinkToFilteredSearchResultsAPI": "https://api.loganalytics.io/v1/workspaces/workspaceID/query?query=Heartbeat&timespan=2020-05-07T18%3a11%3a51.0000000Z%2f2020-05-07T18%3a16%3a51.0000000Z",
    "SeverityDescription": "Warning",
    "WorkspaceId": "12345a-1234b-123c-123d-12345678e",
    "SearchIntervalDurationMin": "15",
    "AffectedConfigurationItems": [
      "INC-Gen2Alert"
    ],
    "SearchIntervalInMinutes": "15",
    "Threshold": 10000,
    "Operator": "Less Than",
    "Dimensions": [
      {
        "name": "Computer",
        "value": "INC-Gen2Alert"
      }
    ],
    "SearchResults": {
      "tables": [
        {
          "name": "PrimaryResult",
          "columns": [
            {
              "name": "$table",
              "type": "string"
            },
            {
              "name": "Computer",
              "type": "string"
            },
            {
              "name": "TimeGenerated",
              "type": "datetime"
            }
          ],
          "rows": [
            [
              "Fabrikam",
              "33446677a",
              "2018-02-02T15:03:12.18Z"
            ],
            [
              "Contoso",
              "33445566b",
              "2018-02-02T15:16:53.932Z"
            ]
          ]
        }
      ],
      "dataSources": [
        {
          "resourceId": "/subscriptions/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/resourcegroups/test/providers/microsoft.operationalinsights/workspaces/test",
          "tables": [
            "Heartbeat"
          ]
        }
      ]
    },
    "IncludedSearchResults": "True",
    "AlertType": "Metric measurement"
  }
}

Avviso per la ricerca log di esempio quando monitoringService = Application Insights

{
  "alertContext": {
    "SearchQuery": "requests | where resultCode == \"500\" | summarize AggregatedValue = Count by bin(Timestamp, 5m), IP",
    "SearchIntervalStartTimeUtc": "3/22/2019 1:36:33 PM",
    "SearchIntervalEndtimeUtc": "3/22/2019 1:51:33 PM",
    "ResultCount": 2,
    "LinkToSearchResults": "https://portal.azure.com/AnalyticsBlade/subscriptions/12345a-1234b-123c-123d-12345678e/?query=search+*+&timeInterval.intervalEnd=2018-03-26T09%3a10%3a40.0000000Z&_timeInterval.intervalDuration=3600&q=Usage",
    "LinkToFilteredSearchResultsUI": "https://portal.azure.com/AnalyticsBlade/subscriptions/12345a-1234b-123c-123d-12345678e/?query=search+*+&timeInterval.intervalEnd=2018-03-26T09%3a10%3a40.0000000Z&_timeInterval.intervalDuration=3600&q=Usage",
    "LinkToSearchResultsAPI": "https://api.applicationinsights.io/v1/apps/0MyAppId0/metrics/requests/count",
    "LinkToFilteredSearchResultsAPI": "https://api.applicationinsights.io/v1/apps/0MyAppId0/metrics/requests/count",
    "SearchIntervalDurationMin": "15",
    "SearchIntervalInMinutes": "15",
    "Threshold": 10000.0,
    "Operator": "Less Than",
    "ApplicationId": "00001111-aaaa-2222-bbbb-3333cccc4444",
    "Dimensions": [
      {
        "name": "IP",
        "value": "1.1.1.1"
      }
    ],
    "SearchResults": {
      "tables": [
        {
          "name": "PrimaryResult",
          "columns": [
            {
              "name": "$table",
              "type": "string"
            },
            {
              "name": "Id",
              "type": "string"
            },
            {
              "name": "Timestamp",
              "type": "datetime"
            }
          ],
          "rows": [
            [
              "Fabrikam",
              "33446677a",
              "2018-02-02T15:03:12.18Z"
            ],
            [
              "Contoso",
              "33445566b",
              "2018-02-02T15:16:53.932Z"
            ]
          ]
        }
      ],
      "dataSources": [
        {
          "resourceId": "/subscriptions/cccc2c2c-dd3d-ee4e-ff5f-aaaaaa6a6a6a/resourcegroups/test/providers/microsoft.operationalinsights/workspaces/test",
          "tables": [
            "Heartbeat"
          ]
        }
      ]
    },
    "IncludedSearchResults": "True",
    "AlertType": "Metric measurement"
  }
}

Avviso per la ricerca log di esempio quando monitoringService = Avvisi log V2

Nota

Le regole di avviso per la ricerca log dalla versione API 2020-05-01 usano questo tipo di payload, che supporta solo lo schema comune. I risultati della ricerca non sono incorporati nel payload degli avvisi per la ricerca log quando si usa questa versione. Usare dimensioni per fornire il contesto agli avvisi attivati. È anche possibile usare LinkToFilteredSearchResultsAPI o LinkToSearchResultsAPI per accedere ai risultati delle query con l'API di Log Analytics. Se è necessario incorporare i risultati, usare un'app per la logica con i collegamenti forniti per generare un payload personalizzato.

{
  "alertContext": {
    "properties": {
      "name1": "value1",
      "name2": "value2"
    },
    "conditionType": "LogQueryCriteria",
    "condition": {
      "windowSize": "PT10M",
      "allOf": [
        {
          "searchQuery": "Heartbeat",
          "metricMeasureColumn": "CounterValue",
          "targetResourceTypes": "['Microsoft.Compute/virtualMachines']",
          "operator": "LowerThan",
          "threshold": "1",
          "timeAggregation": "Count",
          "dimensions": [
            {
              "name": "Computer",
              "value": "TestComputer"
            }
          ],
          "metricValue": 0.0,
          "failingPeriods": {
            "numberOfEvaluationPeriods": 1,
            "minFailingPeriodsToAlert": 1
          },
          "linkToSearchResultsUI": "https://portal.azure.com#@12345a-1234b-123c-123d-12345678e/blade/Microsoft_Azure_Monitoring_Logs/LogsBlade/source/Alerts.EmailLinks/scope/%7B%22resources%22%3A%5B%7B%22resourceId%22%3A%22%2Fsubscriptions%212345a-1234b-123c-123d-12345678e%2FresourceGroups%2FContoso%2Fproviders%2FMicrosoft.Compute%2FvirtualMachines%2FContoso%22%7D%5D%7D/q/eJzzSE0sKklKTSypUSjPSC1KVQjJzE11T81LLUosSU1RSEotKU9NzdNIAfJKgDIaRgZGBroG5roGliGGxlYmJlbGJnoGEKCpp4dDmSmKMk0A/prettify/1/timespan/2020-07-07T13%3a54%3a34.0000000Z%2f2020-07-09T13%3a54%3a34.0000000Z",
          "linkToFilteredSearchResultsUI": "https://portal.azure.com#@12345a-1234b-123c-123d-12345678e/blade/Microsoft_Azure_Monitoring_Logs/LogsBlade/source/Alerts.EmailLinks/scope/%7B%22resources%22%3A%5B%7B%22resourceId%22%3A%22%2Fsubscriptions%212345a-1234b-123c-123d-12345678e%2FresourceGroups%2FContoso%2Fproviders%2FMicrosoft.Compute%2FvirtualMachines%2FContoso%22%7D%5D%7D/q/eJzzSE0sKklKTSypUSjPSC1KVQjJzE11T81LLUosSU1RSEotKU9NzdNIAfJKgDIaRgZGBroG5roGliGGxlYmJlbGJnoGEKCpp4dDmSmKMk0A/prettify/1/timespan/2020-07-07T13%3a54%3a34.0000000Z%2f2020-07-09T13%3a54%3a34.0000000Z",
          "linkToSearchResultsAPI": "https://api.loganalytics.io/v1/subscriptions/12345a-1234b-123c-123d-12345678e/resourceGroups/Contoso/providers/Microsoft.Compute/virtualMachines/Contoso/query?query=Heartbeat%7C%20where%20TimeGenerated%20between%28datetime%282020-07-09T13%3A44%3A34.0000000%29..datetime%282020-07-09T13%3A54%3A34.0000000%29%29&timespan=2020-07-07T13%3a54%3a34.0000000Z%2f2020-07-09T13%3a54%3a34.0000000Z",
          "linkToFilteredSearchResultsAPI": "https://api.loganalytics.io/v1/subscriptions/12345a-1234b-123c-123d-12345678e/resourceGroups/Contoso/providers/Microsoft.Compute/virtualMachines/Contoso/query?query=Heartbeat%7C%20where%20TimeGenerated%20between%28datetime%282020-07-09T13%3A44%3A34.0000000%29..datetime%282020-07-09T13%3A54%3A34.0000000%29%29&timespan=2020-07-07T13%3a54%3a34.0000000Z%2f2020-07-09T13%3a54%3a34.0000000Z"
        }
      ],
      "windowStartTime": "2020-07-07T13:54:34Z",
      "windowEndTime": "2020-07-09T13:54:34Z"
    }
  }
}

Campi del contesto di avviso per gli avvisi del log attività

Per informazioni dettagliate sui campi negli avvisi del log attività, vedere Schema eventi del log attività di Azure.

Avviso del log attività di esempio quando monitoringService = Log attività - Amministrativo

{
  "alertContext": {
      "authorization": {
        "action": "Microsoft.Compute/virtualMachines/restart/action",
        "scope": "/subscriptions/<subscription ID>/resourceGroups/PipeLineAlertRG/providers/Microsoft.Compute/virtualMachines/WCUS-R2-ActLog"
      },
      "channels": "Operation",
      "claims": "{\"aud\":\"https://management.core.windows.net/\",\"iss\":\"https://sts.windows.net/12345a-1234b-123c-123d-12345678e/\",\"iat\":\"1553260826\",\"nbf\":\"1553260826\",\"exp\":\"1553264726\",\"aio\":\"42JgYNjdt+rr+3j/dx68v018XhuFAwA=\",\"appid\":\"11112222-bbbb-3333-cccc-4444dddd5555\",\"appidacr\":\"2\",\"http://schemas.microsoft.com/identity/claims/identityprovider\":\"https://sts.windows.net/12345a-1234b-123c-123d-12345678e/\",\"http://schemas.microsoft.com/identity/claims/objectidentifier\":\"22223333-cccc-4444-dddd-5555eeee6666\",\"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier\":\"22223333-cccc-4444-dddd-5555eeee6666\",\"http://schemas.microsoft.com/identity/claims/tenantid\":\"12345a-1234b-123c-123d-12345678e\",\"uti\":\"v5wYC9t9ekuA2rkZSVZbAA\",\"ver\":\"1.0\"}",
      "caller": "22223333-cccc-4444-dddd-5555eeee6666",
      "correlationId": "aaaa0000-bb11-2222-33cc-444444dddddd",
      "eventSource": "Administrative",
      "eventTimestamp": "2019-03-22T13:56:31.2917159+00:00",
      "eventDataId": "161fda7e-1cb4-4bc5-9c90-857c55a8f57b",
      "level": "Informational",
      "operationName": "Microsoft.Compute/virtualMachines/restart/action",
      "operationId": "310db69b-690f-436b-b740-6103ab6b0cba",
      "status": "Succeeded",
      "subStatus": "",
      "submissionTimestamp": "2019-03-22T13:56:54.067593+00:00"
    }
}

Avviso del log attività di esempio quando monitoringService = Log attività - Criteri

{
  "alertContext": {
    "authorization": {
      "action": "Microsoft.Resources/checkPolicyCompliance/read",
      "scope": "/subscriptions/<GUID>"
    },
    "channels": "Operation",
    "claims": "{\"aud\":\"https://management.azure.com/\",\"iss\":\"https://sts.windows.net/<GUID>/\",\"iat\":\"1566711059\",\"nbf\":\"1566711059\",\"exp\":\"1566740159\",\"aio\":\"42FgYOhynHNw0scy3T/bL71+xLyqEwA=\",\"appid\":\"<GUID>\",\"appidacr\":\"2\",\"http://schemas.microsoft.com/identity/claims/identityprovider\":\"https://sts.windows.net/<GUID>/\",\"http://schemas.microsoft.com/identity/claims/objectidentifier\":\"<GUID>\",\"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier\":\"<GUID>\",\"http://schemas.microsoft.com/identity/claims/tenantid\":\"<GUID>\",\"uti\":\"Miy1GzoAG0Scu_l3m1aIAA\",\"ver\":\"1.0\"}",
    "caller": "<GUID>",
    "correlationId": "<GUID>",
    "eventSource": "Policy",
    "eventTimestamp": "2019-08-25T11:11:34.2269098+00:00",
    "eventDataId": "<GUID>",
    "level": "Warning",
    "operationName": "Microsoft.Authorization/policies/audit/action",
    "operationId": "<GUID>",
    "properties": {
      "isComplianceCheck": "True",
      "resourceLocation": "eastus2",
      "ancestors": "<GUID>",
      "policies": "[{\"policyDefinitionId\":\"/providers/Microsoft.Authorization/policyDefinitions/<GUID>/\",\"policySetDefinitionId\":\"/providers/Microsoft.Authorization/policySetDefinitions/<GUID>/\",\"policyDefinitionReferenceId\":\"vulnerabilityAssessmentMonitoring\",\"policySetDefinitionName\":\"<GUID>\",\"policyDefinitionName\":\"<GUID>\",\"policyDefinitionEffect\":\"AuditIfNotExists\",\"policyAssignmentId\":\"/subscriptions/<GUID>/providers/Microsoft.Authorization/policyAssignments/SecurityCenterBuiltIn/\",\"policyAssignmentName\":\"SecurityCenterBuiltIn\",\"policyAssignmentScope\":\"/subscriptions/<GUID>\",\"policyAssignmentSku\":{\"name\":\"A1\",\"tier\":\"Standard\"},\"policyAssignmentParameters\":{}}]"
    },
    "status": "Succeeded",
    "subStatus": "",
    "submissionTimestamp": "2019-08-25T11:12:46.1557298+00:00"
  }
}

Avviso del log attività di esempio quando monitoringService = Log attività - Scalabilità automatica

{
  "alertContext": {
    "channels": "Admin, Operation",
    "claims": "{\"http://schemas.xmlsoap.org/ws/2005/05/identity/claims/spn\":\"Microsoft.Insights/autoscaleSettings\"}",
    "caller": "Microsoft.Insights/autoscaleSettings",
    "correlationId": "<GUID>",
    "eventSource": "Autoscale",
    "eventTimestamp": "2019-08-21T16:17:47.1551167+00:00",
    "eventDataId": "<GUID>",
    "level": "Informational",
    "operationName": "Microsoft.Insights/AutoscaleSettings/Scaleup/Action",
    "operationId": "<GUID>",
    "properties": {
      "description": "The autoscale engine attempting to scale resource '/subscriptions/d<GUID>/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachineScaleSets/testVMSS' from 9 instances count to 10 instances count.",
      "resourceName": "/subscriptions/<GUID>/resourceGroups/voiceassistancedemo/providers/Microsoft.Compute/virtualMachineScaleSets/alexademo",
      "oldInstancesCount": "9",
      "newInstancesCount": "10",
      "activeAutoscaleProfile": "{\r\n  \"Name\": \"Auto created scale condition\",\r\n  \"Capacity\": {\r\n    \"Minimum\": \"1\",\r\n    \"Maximum\": \"10\",\r\n    \"Default\": \"1\"\r\n  },\r\n  \"Rules\": [\r\n    {\r\n      \"MetricTrigger\": {\r\n        \"Name\": \"Percentage CPU\",\r\n        \"Namespace\": \"microsoft.compute/virtualmachinescalesets\",\r\n        \"Resource\": \"/subscriptions/<GUID>/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachineScaleSets/testVMSS\",\r\n        \"ResourceLocation\": \"eastus\",\r\n        \"TimeGrain\": \"PT1M\",\r\n        \"Statistic\": \"Average\",\r\n        \"TimeWindow\": \"PT5M\",\r\n        \"TimeAggregation\": \"Average\",\r\n        \"Operator\": \"GreaterThan\",\r\n        \"Threshold\": 0.0,\r\n        \"Source\": \"/subscriptions/<GUID>/resourceGroups/testRG/providers/Microsoft.Compute/virtualMachineScaleSets/testVMSS\",\r\n        \"MetricType\": \"MDM\",\r\n        \"Dimensions\": [],\r\n        \"DividePerInstance\": false\r\n      },\r\n      \"ScaleAction\": {\r\n        \"Direction\": \"Increase\",\r\n        \"Type\": \"ChangeCount\",\r\n        \"Value\": \"1\",\r\n        \"Cooldown\": \"PT1M\"\r\n      }\r\n    }\r\n  ]\r\n}",
      "lastScaleActionTime": "Wed, 21 Aug 2019 16:17:47 GMT"
    },
    "status": "Succeeded",
    "submissionTimestamp": "2019-08-21T16:17:47.2410185+00:00"
  }
}

Avviso del log attività di esempio quando monitoringService = Log attività - Sicurezza

{
  "alertContext": {
    "channels": "Operation",
    "correlationId": "<GUID>",
    "eventSource": "Security",
    "eventTimestamp": "2019-08-26T08:34:14+00:00",
    "eventDataId": "<GUID>",
    "level": "Informational",
    "operationName": "Microsoft.Security/locations/alerts/activate/action",
    "operationId": "<GUID>",
    "properties": {
      "threatStatus": "Quarantined",
      "category": "Virus",
      "threatID": "2147519003",
      "filePath": "C:\\AlertGeneration\\test.eicar",
      "protectionType": "Windows Defender",
      "actionTaken": "Blocked",
      "resourceType": "Virtual Machine",
      "severity": "Low",
      "compromisedEntity": "testVM",
      "remediationSteps": "[\"No user action is necessary\"]",
      "attackedResourceType": "Virtual Machine"
    },
    "status": "Active",
    "submissionTimestamp": "2019-08-26T09:28:58.3019107+00:00"
  }
}

Avviso del log attività di esempio quando monitoringService = ServiceHealth

{
  "alertContext": {
    "authorization": null,
    "channels": 1,
    "claims": null,
    "caller": null,
    "correlationId": "bbbb1111-cc22-3333-44dd-555555eeeeee",
    "eventSource": 2,
    "eventTimestamp": "2019-06-24T11:31:19.0312699+00:00",
    "httpRequest": null,
    "eventDataId": "<GUID>",
    "level": 3,
    "operationName": "Microsoft.ServiceHealth/maintenance/action",
    "operationId": "<GUID>",
    "properties": {
      "title": "Azure Synapse Analytics Scheduled Maintenance Pending",
      "service": "Azure Synapse Analytics",
      "region": "East US",
      "communication": "<MESSAGE>",
      "incidentType": "Maintenance",
      "trackingId": "<GUID>",
      "impactStartTime": "2019-06-26T04:00:00Z",
      "impactMitigationTime": "2019-06-26T12:00:00Z",
      "impactedServices": "[{\"ImpactedRegions\":[{\"RegionName\":\"East US\"}],\"ServiceName\":\"Azure Synapse Analytics\"}]",
      "impactedServicesTableRows": "<tr>\r\n<td align='center' style='padding: 5px 10px; border-right:1px solid black; border-bottom:1px solid black'>Azure Synapse Analytics</td>\r\n<td align='center' style='padding: 5px 10px; border-bottom:1px solid black'>East US<br></td>\r\n</tr>\r\n",
      "defaultLanguageTitle": "Azure Synapse Analytics Scheduled Maintenance Pending",
      "defaultLanguageContent": "<MESSAGE>",
      "stage": "Planned",
      "communicationId": "<GUID>",
      "maintenanceId": "<GUID>",
      "isHIR": "false",
      "version": "0.1.1"
    },
    "status": "Active",
    "subStatus": null,
    "submissionTimestamp": "2019-06-24T11:31:31.7147357+00:00",
    "ResourceType": null
  }
}

Avviso del log attività di esempio quando monitoringService = ResourceHealth

{
  "alertContext": {
    "channels": "Admin, Operation",
    "correlationId": "<GUID>",
    "eventSource": "ResourceHealth",
    "eventTimestamp": "2019-06-24T15:42:54.074+00:00",
    "eventDataId": "<GUID>",
    "level": "Informational",
    "operationName": "Microsoft.Resourcehealth/healthevent/Activated/action",
    "operationId": "<GUID>",
    "properties": {
      "title": "This virtual machine is stopping and deallocating as requested by an authorized user or process",
      "details": null,
      "currentHealthStatus": "Unavailable",
      "previousHealthStatus": "Available",
      "type": "Downtime",
      "cause": "UserInitiated"
    },
    "status": "Active",
    "submissionTimestamp": "2019-06-24T15:45:20.4488186+00:00"
  }
}

Campi del contesto di avviso per gli avvisi di Prometheus

Vedere Servizio gestito di Monitoraggio di Azure per i gruppi di regole Prometheus (anteprima) per informazioni dettagliate sui campi negli avvisi di Prometheus.

Avviso Prometheus di esempio

{
  "alertContext": {
    "interval": "PT1M",
    "expression": "sql_up > 0",
    "expressionValue": "0",
    "for": "PT2M",
    "labels": {
      "Environment": "Prod",
      "cluster": "myCluster1"
    },
    "annotations": {
      "summary": "alert on SQL availability"
    },
    "ruleGroup": "/subscriptions/<subscription ID>/resourceGroups/myResourceGroup/providers/Microsoft.AlertsManagement/prometheusRuleGroups/myRuleGroup"
  }
}

Campi delle proprietà personalizzate

Se la regola di avviso che ha generato l'avviso contiene gruppi di azioni, le proprietà personalizzate possono contenere informazioni aggiuntive sull'avviso. La sezione delle proprietà personalizzate contiene oggetti "chiave: valore" aggiunti alle notifiche webhook.

Se le proprietà personalizzate non sono impostate nella regola di avviso, il campo è Null.

Abilita lo schema di avviso comune

Usare i gruppi di azioni nel portale di Azure o usare l'API REST per abilitare lo schema di avviso comune. Gli schemi vengono definiti a livello di azione. Ad esempio, è necessario abilitare separatamente lo schema per un'azione di e-mail e un'azione webhook.

Abilitare lo schema comune nel portale di Azure

Screenshot che mostra il consenso esplicito dello schema di avviso comune.

  1. Aprire qualsiasi azione esistente o una nuova azione in un gruppo di azioni.
  2. Selezionare per abilitare lo schema di avviso comune.

Abilitare lo schema comune usando l'API REST

È anche possibile usare l'API gruppi di azioni per acconsentire esplicitamente allo schema di avviso comune. In creare o aggiornare la chiamata API REST,

  • Impostare il flag "useCommonAlertSchema" su true per abilitare lo schema comune
  • Impostare il flag "useCommonAlertSchema" su false per usare lo schema non comune per le azioni di runbook di e-mail, webhook, App per la logica, Funzioni di Azure o Automation.

Esempio di chiamata API REST per l'uso dello schema comune

La seguente richiesta di creazione o aggiornamento dell'API REST:

  • Abilita lo schema di avviso comune per l'azione di e-mail "E-mail di John Doe".
  • Disabilita lo schema di avviso comune per l'azione di e-mail "e-mail di Jane Smith".
  • Abilita lo schema di avviso comune per l'azione webhook "Webhook di esempio".
{
  "properties": {
    "groupShortName": "sample",
    "enabled": true,
    "emailReceivers": [
      {
        "name": "John Doe's email",
        "emailAddress": "johndoe@email.com",
        "useCommonAlertSchema": true
      },
      {
        "name": "Jane Smith's email",
        "emailAddress": "janesmith@email.com",
        "useCommonAlertSchema": false
      }
    ],
    "smsReceivers": [
      {
        "name": "John Doe's mobile",
        "countryCode": "1",
        "phoneNumber": "1234567890"
      },
      {
        "name": "Jane Smith's mobile",
        "countryCode": "1",
        "phoneNumber": "0987654321"
      }
    ],
    "webhookReceivers": [
      {
        "name": "Sample webhook",
        "serviceUri": "http://www.example.com/webhook",
        "useCommonAlertSchema": true
      }
    ]
  },
  "location": "Global",
  "tags": {}
}

Passaggi successivi