Udostępnij za pośrednictwem


Typowe schematy alertów

Typowy schemat alertu standaryzuje sposób przetwarzania powiadomień o alertach z usługi Azure Monitor. W przeszłości dziennik aktywności, metryka i alerty przeszukiwania dzienników miały własne szablony wiadomości e-mail i schematy elementów webhook. Wspólny schemat alertu zawiera jeden ustandaryzowany schemat dla wszystkich powiadomień o alertach.

Użycie ustandaryzowanego schematu pomaga zminimalizować liczbę integracji, co upraszcza proces zarządzania i konserwacji integracji. Wspólny schemat umożliwia bogatsze doświadczenie korzystania z alertów zarówno w portalu Azure, jak i w aplikacji mobilnej Azure.

Wspólny schemat alertów zapewnia spójną strukturę dla następujących elementów:

  • Szablony wiadomości e-mail: użyj szczegółowego szablonu wiadomości e-mail, aby szybko zdiagnozować problemy. Osadzone linki do wystąpienia alertu w portalu i do zasobu, którego dotyczy problem, zapewniają szybkie przejście do procesu korygowania.

  • Struktura JSON: użyj spójnej struktury JSON do kompilowania integracji dla wszystkich typów alertów przy użyciu:

    • Azure Logic Apps
    • Funkcje Azure
    • Runbook usługi Azure Automation

Uwaga

  • Alerty generowane przez VM insights nie obsługują wspólnego schematu.
  • Inteligentne alerty wykrywania domyślnie używają wspólnego schematu. Nie musisz włączać wspólnego schematu dla alertów wykrywania inteligentnego.

Struktura wspólnego schematu

Wspólny schemat zawiera informacje o zasobie, którego dotyczy problem, oraz przyczynę alertu w poniższych sekcjach:

  • Podstawowe informacje: pola ustandaryzowane, używane przez wszystkie typy alertów, które opisują zasób, na który ma wpływ alert i typowe metadane alertu, takie jak ważność lub opis.

    Jeśli chcesz kierować wystąpienia alertów do określonych zespołów na podstawie kryteriów, takich jak grupa zasobów, możesz użyć pól w sekcji Podstawy, aby zapewnić logikę routingu dla wszystkich typów alertów . Zespoły, które otrzymają powiadomienie o alercie, mogą następnie używać pól kontekstu do badania.

  • Kontekst alertu: pola, które różnią się w zależności od typu alertu. Pola kontekstu alertu opisują przyczynę alertu. Na przykład alert dotyczący metryki będzie zawierał pola, takie jak nazwa i wartość metryki w kontekście alertu. Alert dziennika aktywności zawiera informacje o zdarzeniu, które wygenerowało alert.

  • Właściwości niestandardowe: dodatkowe informacje, które nie są domyślnie uwzględnione w ładunku alertu, mogą być uwzględniane w ładunku alertu przy użyciu właściwości niestandardowych. Właściwości niestandardowe to para Key:Value, mogąca zawierać dowolne informacje skonfigurowane w regule alertu.

Przykładowy ładunek alarmu

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

Aby uzyskać przykładowe alerty korzystające ze wspólnego schematu, zobacz Przykładowe ładunki alertów.

Pola Wymagane

Pole opis
identyfikator alertu Unikatowy identyfikator zasobu identyfikujący wystąpienie alertu.
zasada alertu Nazwa reguły alertu, która wygenerowała wystąpienie alertu.
Ważność Ważność alertu. Możliwe wartości to Sev0, Sev1, Sev2, Sev3 lub Sev4.
typ sygnału Określa sygnał, na którym zdefiniowano regułę alertu. Możliwe wartości to Metryka, Dziennik zdarzeń lub Dziennik aktywności.
monitorować stan Gdy alert zostanie wyzwolony, stan monitora alertu zostanie ustawiony na aktywny. Jeśli podstawowy warunek, który spowodował uruchomienie alertu, zostanie usunięty, stan monitora zostanie ustawiony na Rozwiązane.
usługa monitorowania Usługa monitorowania lub rozwiązanie, które wygenerowało alert. Usługa monitorowania określa, które pola znajdują się w kontekście alertu.
identyfikatoryCelówAlertu Lista identyfikatorów Azure Resource Manager, które są celem alertu. W przypadku alertu przeszukiwania dzienników, zdefiniowanego w obszarze roboczym Log Analytics lub w instancji Application Insights, jest to odpowiedni obszar roboczy lub aplikacja.
elementy konfiguracji Lista zasobów, których dotyczy alert.
W niektórych przypadkach elementy konfiguracji mogą różnić się od elementów docelowych alertów. Na przykład w alertach typu "metric-for-log" lub alertach wyszukiwania logów zdefiniowanych w obszarze roboczym Log Analytics, elementy konfiguracji są rzeczywistymi zasobami wysyłającymi dane, a nie samym obszarem roboczym.
  • W interfejsie API alertów przeszukiwania dzienników (reguły zaplanowanego zapytania) v2021-08-01 configurationItem wartości są pobierane z jawnie zdefiniowanych wymiarów w tym priorytecie: _ResourceId, ResourceId, Resource, Computer.
  • We wcześniejszych wersjach interfejsu API configurationItem wartości alertów wyszukiwania dzienników są pobierane niejawnie z wyników według następującego priorytetu: _ResourceId, ResourceId, Resource, Computer.
W systemach ITSM pole configurationItems jest używane do powiązywania alertów z zasobami w bazie danych do zarządzania konfiguracją.
originAlertId Identyfikator wystąpienia alertu wygenerowany przez usługę monitorowania.
firedDateTime Data i godzina wystąpienia alertu uruchomionego w czasie koordynowanym uniwersalnym (UTC).
data i czas rozwiązania Data i godzina ustawienia warunku monitora wystąpienia alertu na wartość Rozwiązano w formacie UTC. Obecnie dotyczy tylko alertów dotyczących metryk.
opis Opis zgodny z definicją reguły alertu.
ID zasady alertu Identyfikator reguły alertu, która wygenerowała wystąpienie alertu.
typ zasobu Typ zasobu, którego dotyczy alert.
nazwaGrupyZasobów Nazwa grupy zasobów dla zasobu, na który ma to wpływ.
wersja podstawowa Numer wersji sekcji podstawowej.
wersja kontekstu alertu Numer wersji sekcji alertContext.
investigationLink Link do zbadania alertu w usłudze Azure Monitor. Obecnie wymagana jest ograniczona rejestracja w wersji zapoznawczej.

Pola kontekstu alertu dla alertów dotyczących metryk

Pole opis
właściwości (Opcjonalnie). Kolekcja właściwości zdefiniowanych przez klienta.
conditionType Typ warunku wybranego dla reguły alertu:
  • próg statyczny
  • próg dynamiczny
  • test sieciowy
warunek / stan / kondycja (select according to the specific context)
rozmiar okna Okres analizowany przez regułę alertu.
allOf Wskazuje, że wszystkie warunki zdefiniowane w regule alertu muszą zostać spełnione, aby wyzwolić alert.
czułość powiadomień W regule alertu z progiem dynamicznym wskazuje, jak wrażliwa jest reguła lub ile wartość może odbiegać od górnego lub niższego progu.
okresy awarii W regule alertu z progiem dynamicznym liczba okresów oceny, które nie spełniają progu alertu i wyzwalają alert. Możesz na przykład wskazać, że alert jest wyzwalany, gdy 3 z ostatnich pięciu okresów oceny nie mieści się w progach alertów.
liczbaOkresówEwaluacyjnych Całkowita liczba ocen.
minimalneOkresyAwariiDoAlarmu Minimalna liczba ocen, które nie spełniają warunków reguły alertu.
ignoreDataBefore (Opcjonalnie) Data, od której próg jest obliczany w regule alertu z progiem dynamicznym. Użyj tej wartości, aby wskazać, że reguła nie powinna obliczać progu dynamicznego przy użyciu danych sprzed określonej daty.
nazwaMiar Nazwa metryki monitorowanej przez regułę alertu.
metricNamespace (przestrzeń nazw) Przestrzeń nazw dla metryki, którą monitoruje reguła alertu.
operator Operator logiczny reguły alertu.
próg Próg zdefiniowany w regule alertu. W przypadku reguły alertu z progiem dynamicznym ta wartość to obliczony próg.
agregacja czasowa Typ agregacji reguły alertu.
wymiary Wymiar miary, który wyzwolił alert.
nazwa Nazwa wymiaru.
wartość Wartość wymiaru.
metricValue Wartość metryki w momencie, w którym naruszono próg.
webTestName Jeśli typ warunku to webtest, nazwa testu internetowego.
CzasRozpoczęciaOkna Godzina rozpoczęcia okna ewaluacji, w którym uruchomiono alert.
czas zakończenia okna Godzina zakończenia okna oceny, w którym alert został uruchomiony.

Przykładowy alert metryki z progiem statycznym, gdy 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"
      }
    }
}

Przykładowy alert metryki z progiem dynamicznym, gdy monitorService = 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"
      }
    }
}

Przykładowy alert dotyczący metryk testów dostępności, gdy parametr 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"
      }
    }
}

Pola kontekstu alertu dla alertów przeszukiwania dzienników

Uwaga

Po włączeniu wspólnego schematu pola w ładunku danych są resetowane do pól wspólnego schematu. W związku z tym alerty przeszukiwania dzienników mają następujące ograniczenia dotyczące wspólnego schematu:

  • Wspólny schemat nie jest obsługiwany w przypadku alertów przeszukiwania dzienników przy użyciu elementów webhook z niestandardowym tematem wiadomości e-mail i/lub ładunkiem JSON, ponieważ wspólny schemat zastępuje konfiguracje niestandardowe.

  • Alerty korzystające ze wspólnego schematu mają górny limit rozmiaru 256 KB na alert. Jeśli ładunek alertów przeszukiwania dzienników zawiera wyniki wyszukiwania, które powodują przekroczenie maksymalnego rozmiaru alertu, wyniki wyszukiwania nie są osadzone w ładunku alertów przeszukiwania dzienników. Możesz sprawdzić, czy ładunek zawiera wyniki wyszukiwania z flagą IncludedSearchResults . Użyj LinkToFilteredSearchResultsAPI lub LinkToSearchResultsAPI aby uzyskać dostęp do wyników zapytania za pomocą API Log Analytics, jeśli wyniki wyszukiwania nie są uwzględnione.

Pole opis
Zapytanie wyszukiwania Zapytanie zdefiniowane w regule alertu.
CzasRozpoczęciaInterwałuWyszukiwaniaUtc Godzina rozpoczęcia okna oceny, w którym alert został wyzwolony w formacie UTC.
Czas zakończenia interwału wyszukiwania UTC Czas zakończenia okna oceny w UTC, podczas którego wyzwolono alert.
Liczba wyników Liczba rekordów zwracanych przez zapytanie. W przypadku reguł pomiaru metryk liczba lub rekordy pasujące do określonej kombinacji wymiarów.
LinkDoWynikówWyszukiwania Link do wyników wyszukiwania.
LinkDoWynikówFiltrowanegoWyszukiwaniaUI W przypadku reguł pomiaru metryk link do wyników wyszukiwania po ich przefiltrowaniu według kombinacji wymiarów.
LinkDoWynikówWyszukiwaniaAPI Link do wyników zapytania przy użyciu interfejsu API usługi Log Analytics.
LinkDoPrzefiltrowanychWynikówWyszukiwaniaAPI Dla reguł pomiaru metryk, podano link do wyników wyszukiwania za pomocą interfejsu API Log Analytics, po przefiltrowaniu ich według kombinacji wymiarów.
CzasTrwaniaInterwałuWyszukiwaniaMin Łączna liczba minut w interwale wyszukiwania.
InterwałWyszukiwaniaWMinutach Łączna liczba minut w interwale wyszukiwania.
Próg Próg zdefiniowany w regule alertu.
Obsługujący Operator zdefiniowany w regule alertu.
Identyfikator aplikacji Identyfikator usługi Application Insights, który uruchomił alert.
Wymiary W przypadku reguł pomiaru metryk, wymiary, które spowodowały wyzwolenie alertu.
nazwa Nazwa wymiaru.
wartość Wartość wymiaru.
Wyniki wyszukiwania Kompletne wyniki wyszukiwania.
stół Tabela wyników w wynikach wyszukiwania.
nazwa Nazwa tabeli w wynikach wyszukiwania.
kolumny Kolumny w tabeli.
nazwa Nazwa kolumny.
typ Typ kolumny.
wiersze Wiersze w tabeli.
Źródła danych Źródła danych, w których został wyzwolony alert.
identyfikator zasobu Identyfikator zasobu, którego dotyczy alert.
Tabele Wersje robocze tabel odpowiedzi zawarte w zapytaniu.
Uwzględnione wyniki wyszukiwania Flaga wskazująca, czy ładunek powinien zawierać wyniki.
Typ alertu Typ alertu:
- Pomiar metryczny
- Liczba wyników

Przykładowy alert przeszukiwania dzienników, gdy usługa monitorowania = 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"
  }
}

Przykładowy alert przeszukiwania dzienników podczas monitorowaniaService = 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"
  }
}

Przykładowy alert przeszukiwania dzienników, gdy monitorService = Log Alerts V2

Uwaga

Reguły alertów przeszukiwania dzienników z wersji interfejsu API 2020-05-01 używają tego typu ładunku, który obsługuje tylko schemat wspólny. Wyniki wyszukiwania nie są osadzone w ładunku alertów przeszukiwania dzienników podczas korzystania z tej wersji. Użyj wymiarów, aby nadawać kontekst wyzwalanym alertom. Możesz również użyć LinkToFilteredSearchResultsAPI lub LinkToSearchResultsAPI do uzyskania dostępu do wyników zapytań za pomocą interfejsu API usługi Log Analytics. Jeśli musisz osadzić wyniki, użyj aplikacji Logic App z podanymi linkami, aby wygenerować niestandardowy ładunek danych.

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

Pola kontekstu alertu dla alertów dziennika aktywności

Zobacz Schemat zdarzeń dziennika aktywności platformy Azure , aby uzyskać szczegółowe informacje o polach w alertach dziennika aktywności.

Przykładowy alert dziennika aktywności, gdy monitorService = Dziennik aktywności — Administracja

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

Przykładowy alert dziennika aktywności, gdy monitoringService = Dziennik aktywności — polityka

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

Przykładowy alert dziennika aktywności, gdy monitoringService = Dziennik aktywności — Autoskalowanie

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

Przykładowy alert dziennika aktywności, gdy monitoringService = Dziennik aktywności — Zabezpieczenia

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

Przykładowy alert dziennika aktywności, gdy monitoringService = ServiceHealth

{
  "alertContext": {
    "authorization": null,
    "channels": 1,
    "claims": null,
    "caller": null,
    "correlationId": "bbbb1111-cc22-3333-44dd-555555eeeeee",
    "eventSource": "ServiceHealth,
    "eventTimestamp": "2019-06-24T11:31:19.0312699+00:00",
    "httpRequest": null,
    "eventDataId": "<GUID>",
    "level": "Informational",
    "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
  }
}

Przykładowy alert dziennika aktywności, gdy 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"
  }
}

Pola kontekstu alertu dla alertów Prometheus

Aby uzyskać szczegółowe informacje na temat pól w alertach Prometheus, zobacz Zarządzana usługa Azure Monitor dla grup reguł Prometheus.

Przykładowy alert Prometheus

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

Pola właściwości niestandardowych

Jeśli reguła alertu, która wygenerowała alert, zawiera grupy działań, właściwości niestandardowe mogą zawierać dodatkowe informacje dotyczące alertu. Sekcja właściwości niestandardowych zawiera obiekty "key: value", które są dodawane do powiadomień webhook.

Jeśli właściwości niestandardowe nie są ustawione w regule alertu, pole ma wartość null.

Włączanie wspólnego schematu alertów

Użyj grup akcji w witrynie Azure Portal lub użyj interfejsu API REST, aby włączyć wspólny schemat alertów. Schematy są definiowane na poziomie akcji. Na przykład należy oddzielnie włączyć schemat dla akcji poczty e-mail oraz akcji webhook.

Włącz wspólny schemat w portalu Azure

Zrzut ekranu przedstawiający wspólną zgodę na schemat alertów.

  1. Otwórz dowolną istniejącą akcję lub nową akcję w grupie akcji.
  2. Wybierz pozycję Tak , aby włączyć wspólny schemat alertu.

Włączanie wspólnego schematu przy użyciu interfejsu API REST

Możesz również użyć interfejsu API grup akcji , aby wyrazić zgodę na wspólny schemat alertu. W wywołaniu interfejsu API REST tworzenia lub aktualizowania :

  • Ustaw flagę "useCommonAlertSchema" na true, aby włączyć wspólny schemat.
  • Ustaw flagę "useCommonAlertSchema" na false, aby korzystać z nienależącego do wspólnego schematu dla wiadomości e-mail, webhooków, aplikacji Logic Apps, funkcji Azure Functions lub działań Runbook w usłudze Automation.

Przykładowe wywołanie interfejsu API REST do używania wspólnego schematu

Następujące żądanie tworzenia lub aktualizowania interfejsu API REST:

  • Włącza wspólny schemat alertów dla akcji e-mailowej "e-mail Johna Doe".
  • Wyłącza wspólny schemat alertu dla akcji e-mail "Wiadomość e-mail Jane Smith".
  • Włącza wspólny schemat alertów dla akcji webhook "Przykładowy webhook".
{
  "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": {}
}

Następne kroki