Řešení potíží s upozorněními prohledávání protokolů ve službě Azure Monitor

Tento článek popisuje, jak řešit běžné problémy s upozorněními prohledávání protokolů ve službě Azure Monitor. Poskytuje také řešení běžných problémů s funkcemi a konfigurací upozornění protokolu.

Pomocí upozornění protokolu můžete vyhodnotit protokoly prostředků při každé nastavené frekvenci pomocí dotazu Log Analytics a aktivovat výstrahu, která je založená na výsledcích. Pravidla můžou aktivovat jednu nebo více akcí pomocí skupin akcí. Další informace o funkcích a terminologii upozornění prohledávání protokolů najdete v tématu Upozornění protokolu ve službě Azure Monitor.

Poznámka:

Tento článek se nezabírá případy, kdy se pravidlo upozornění aktivovalo, můžete ho zobrazit na webu Azure Portal, ale oznámení se neodeslalo. Pro případy, jako jsou tyto, si prohlédnou výstrahy při řešení potíží.

Upozornění prohledávání protokolu se neaktivovalo, když mělo

Pokud se upozornění prohledávání protokolu neaktivovalo, když mělo, zkontrolujte následující položky:

  1. Je pravidlo upozornění v degradované nebo nedostupné stavu?

    Zobrazení stavu pravidla upozornění prohledávání protokolu:

    1. Na portálu vyberte Možnost Sledovat a pak Výstrahy.

    2. Na horním panelu příkazů vyberte Pravidla upozornění. Na stránce se zobrazí všechna pravidla upozornění pro všechna předplatná.

    3. Vyberte pravidlo upozornění prohledávání protokolu, které chcete monitorovat.

    4. V levém podokně v části Nápověda vyberte Stav prostředku.

      Snímek obrazovky oddílu Resource Health v pravidlu upozornění prohledávání protokolu

    Další informace najdete v tématu Monitorování stavu pravidel upozornění prohledávání protokolu.

  2. Zkontrolujte latenci příjmu protokolů.

    Azure Monitor zpracovává terabajty protokolů zákazníků z celého světa, což může způsobit latenci příjmu protokolů.

    Protokoly jsou částečně strukturovaná data a jsou ze své podstaty opožděnější než metriky. Pokud u aktivovaných upozornění dochází k více než 4minutové prodlevě, měli byste zvážit použití upozornění na metriky. Data můžete odesílat do úložiště metrik z protokolů pomocí upozornění metrik pro protokoly.

    Aby se snížila latence, systém několikrát opakuje vyhodnocení výstrahy. Jakmile data dorazí, aktivuje se výstraha, která se ve většině případů nerovná času záznamu protokolu.

  3. Jsou akce ztlumené nebo je pravidlo upozornění nakonfigurované tak, aby se automaticky vyřešilo?

    Běžným problémem je, že se upozornění neaktivovalo, ale pravidlo se nakonfigurovalo tak, aby se upozornění neaktivovalo. Podívejte se na pokročilé možnosti pravidla upozornění prohledávání protokolu a ověřte, že nejsou vybrány obě následující možnosti:

    • Zaškrtávací políčko Ztlumit akce : Umožňuje ztlumit aktivované akce upozornění po nastavenou dobu.
    • Automaticky vyřešit výstrahy: Nakonfiguruje výstrahu tak, aby se aktivovalo jenom jednou za splněnou podmínku.

    Potlačení upozornění

  4. Přesunul nebo odstranil prostředek pravidla upozornění?

    Pokud se prostředek pravidla upozornění přesune, přejmenuje nebo odstraní, přeruší se všechna pravidla upozornění protokolu odkazující na tento prostředek. Pokud chcete tento problém vyřešit, pravidla upozornění je potřeba znovu vytvořit pomocí platného cílového prostředku pro daný obor.

  5. Používá pravidlo upozornění spravovanou identitu přiřazenou systémem?

    Když vytvoříte pravidlo upozornění protokolu se spravovanou identitou přiřazenou systémem, identita se vytvoří bez jakýchkoli oprávnění. Po vytvoření pravidla je potřeba přiřadit příslušné role identitě pravidla, aby mohl přistupovat k datům, která chcete dotazovat. Může být například potřeba, abyste jí dali roli Čtenář pro příslušné pracovní prostory služby Log Analytics, roli Čtenář a roli Čtenář pro příslušný cluster ADX. Další informace o používání spravovaných identit v upozorněních protokolu najdete v tématu Spravované identity.

  6. Je dotaz použitý v pravidle upozornění prohledávání protokolu platný?

    Po vytvoření pravidla upozornění protokolu se dotaz ověří pro správnou syntaxi. Někdy ale může dojít k selhání dotazu zadaného v pravidle upozornění protokolu. Mezi běžné důvody patří:

    • Pravidla byla vytvořena prostřednictvím rozhraní API a uživatel přeskočil ověření.
    • Dotaz běží na několika prostředcích a jeden nebo více prostředků bylo odstraněno nebo přesunuto.
    • Dotaz selže , protože:
      • Řešení protokolování se do pracovního prostoru nenasadilo, takže se nevytvořily tabulky.
      • Data přestala do tabulky v dotazu po dobu delší než 30 dnů přetékat.
      • Vlastní tabulky protokolů se nevytvořily, protože tok dat se nezačal.
    • Změny v dotazovacím jazyce zahrnují revidovaný formát příkazů a funkcí, takže zadaný dotaz už není platný.

    Azure Advisor vás upozorní na toto chování. Přidá doporučení k ovlivněným pravidlu upozornění prohledávání protokolu. Použitá kategorie je Vysoká dostupnost se středním dopadem a popisem "Oprava pravidla upozornění protokolu, aby se zajistilo monitorování".

  7. Bylo pravidlo upozornění prohledávání protokolu zakázané?

    Pokud se dotaz na pravidlo upozornění prohledávání protokolu nepovede vyhodnotit nepřetržitě po dobu týdne, Azure Monitor ho automaticky zakáže.

    Následující části obsahují některé důvody, proč může Azure Monitor zakázat pravidlo upozornění prohledávání protokolu. Kromě toho existuje příklad události protokolu aktivit, která se odešle, když je pravidlo zakázané.

Příklad protokolu aktivit při zakázání pravidla

{
    "caller": "Microsoft.Insights/ScheduledQueryRules",
    "channels": "Operation",
    "claims": {
        "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/spn": "Microsoft.Insights/ScheduledQueryRules"
    },
    "correlationId": "abcdefg-4d12-1234-4256-21233554aff",
    "description": "Alert: test-bad-alerts is disabled by the System due to : Alert has been failing consistently with the same exception for the past week",
    "eventDataId": "f123e07-bf45-1234-4565-123a123455b",
    "eventName": {
        "value": "",
        "localizedValue": ""
    },
    "category": {
        "value": "Administrative",
        "localizedValue": "Administrative"
    },
    "eventTimestamp": "2019-03-22T04:18:22.8569543Z",
    "id": "/SUBSCRIPTIONS/<subscriptionId>/RESOURCEGROUPS/<ResourceGroup>/PROVIDERS/MICROSOFT.INSIGHTS/SCHEDULEDQUERYRULES/TEST-BAD-ALERTS",
    "level": "Informational",
    "operationId": "",
    "operationName": {
        "value": "Microsoft.Insights/ScheduledQueryRules/disable/action",
        "localizedValue": "Microsoft.Insights/ScheduledQueryRules/disable/action"
    },
    "resourceGroupName": "<Resource Group>",
    "resourceProviderName": {
        "value": "MICROSOFT.INSIGHTS",
        "localizedValue": "Microsoft Insights"
    },
    "resourceType": {
        "value": "MICROSOFT.INSIGHTS/scheduledqueryrules",
        "localizedValue": "MICROSOFT.INSIGHTS/scheduledqueryrules"
    },
    "resourceId": "/SUBSCRIPTIONS/<subscriptionId>/RESOURCEGROUPS/<ResourceGroup>/PROVIDERS/MICROSOFT.INSIGHTS/SCHEDULEDQUERYRULES/TEST-BAD-ALERTS",
    "status": {
        "value": "Succeeded",
        "localizedValue": "Succeeded"
    },
    "subStatus": {
        "value": "",
        "localizedValue": ""
    },
    "submissionTimestamp": "2019-03-22T04:18:22.8569543Z",
    "subscriptionId": "<SubscriptionId>",
    "properties": {
        "resourceId": "/SUBSCRIPTIONS/<subscriptionId>/RESOURCEGROUPS/<ResourceGroup>/PROVIDERS/MICROSOFT.INSIGHTS/SCHEDULEDQUERYRULES/TEST-BAD-ALERTS",
        "subscriptionId": "<SubscriptionId>",
        "resourceGroup": "<ResourceGroup>",
        "eventDataId": "12e12345-12dd-1234-8e3e-12345b7a1234",
        "eventTimeStamp": "03/22/2019 04:18:22",
        "issueStartTime": "03/22/2019 04:18:22",
        "operationName": "Microsoft.Insights/ScheduledQueryRules/disable/action",
        "status": "Succeeded",
        "reason": "Alert has been failing consistently with the same exception for the past week"
    },
    "relatedEvents": []
}

Upozornění prohledávání protokolu se aktivovalo, když nemělo

Nakonfigurované pravidlo upozornění protokolu ve službě Azure Monitor se může neočekávaně aktivovat. Následující části popisují některé běžné důvody.

  1. Aktivovalo se upozornění kvůli problémům s latencí?

    Azure Monitor zpracovává terabajty protokolů zákazníků globálně, což může způsobit latenci příjmu protokolů. Existují integrované funkce, které brání falešným výstrahám, ale mohou se stále vyskytovat u velmi latentních dat (přes ~30 minut) a u dat s nárůsty latence.

    Protokoly jsou částečně strukturovaná data a jsou ze své podstaty opožděnější než metriky. Pokud u aktivovaných upozornění dochází k mnoha chybám, zvažte použití upozornění na metriky. Data můžete odesílat do úložiště metrik z protokolů pomocí upozornění metrik pro protokoly.

    Upozornění prohledávání protokolů fungují nejlépe, když se pokoušíte detekovat konkrétní data v protokolech. Jsou méně efektivní, když se pokoušíte detekovat nedostatek dat v protokolech, například upozorňování na prezenčních signálech virtuálního počítače.

Chybové zprávy při konfiguraci pravidel upozornění prohledávání protokolu

Konkrétní chybové zprávy a jejich řešení najdete v následujících částech.

Dotaz se nepovedlo ověřit, protože potřebujete oprávnění pro protokoly.

Pokud se vám při vytváření nebo úpravě dotazu pravidla upozornění zobrazí tato chybová zpráva, ujistěte se, že máte oprávnění ke čtení protokolů cílových prostředků.

  • Oprávnění potřebná ke čtení protokolů v režimu přístupu v kontextu pracovního prostoru: Microsoft.OperationalInsights/workspaces/query/read.
  • Oprávnění potřebná ke čtení protokolů v režimu přístupu kontextu prostředků (včetně prostředků Přehledy aplikace založené na pracovním prostoru): Microsoft.Insights/logs/tableName/read.

Další informace o oprávněních najdete v tématu Správa přístupu k pracovním prostorům služby Log Analytics.

Jednominutová frekvence není pro tento dotaz podporovaná.

Při použití jednominutové frekvence pravidel upozornění platí určitá omezení. Když nastavíte frekvenci pravidla upozornění na jednu minutu, bude provedena interní manipulace s optimalizací dotazu. Tato manipulace může způsobit selhání dotazu, pokud obsahuje nepodporované operace.

Seznam nepodporovaných scénářů najdete v této poznámce.

Nepodařilo se přeložit skalární výraz s názvem <>

Tato chybová zpráva se může vrátit při vytváření nebo úpravě dotazu pravidla upozornění, pokud:

  • Odkazujete na sloupec, který ve schématu tabulky neexistuje.
  • Odkazujete na sloupec, který nebyl použit v předchozí klauzuli projektu dotazu.

Pokud chcete tento problém zmírnit, můžete sloupec buď přidat do předchozí klauzule projektu, nebo použít operátor columnifexists .

Pro upozornění OMS jen pro čtení se nepodporuje rozhraní ScheduledQueryRules API

Tato chybová zpráva se vrátí při pokusu o aktualizaci nebo odstranění pravidel vytvořených pomocí starší verze rozhraní API pomocí webu Azure Portal.

  1. Upravte nebo odstraňte pravidlo programově pomocí rozhraní REST API služby Log Analytics.
  2. Doporučeno: Upgradujte pravidla upozornění tak, aby používala rozhraní API pravidel naplánovaných dotazů (starší verze rozhraní API je na cestě k vyřazení).

Bylo dosaženo limitu služby pravidla upozornění

Podrobnosti o počtu pravidel upozornění prohledávání protokolu na předplatné a maximální limity prostředků najdete v tématu Omezení služby Azure Monitor. Informace o tom, kolik pravidel upozornění metrik se aktuálně používá, najdete v tématu Kontrola celkového počtu použitých pravidel upozornění protokolu. Pokud jste dosáhli limitu kvóty, můžou vám s řešením tohoto problému pomoct následující kroky.

  1. Odstraňte nebo zakažte pravidla upozornění prohledávání protokolu, která se již nepoužívají.

  2. Pomocí rozdělení podle dimenzí snižte počet pravidel. Při použití rozdělení podle dimenzí může jedno pravidlo monitorovat mnoho prostředků.

  3. Pokud potřebujete zvýšit limit kvóty, pokračujte otevřením žádosti o podporu a zadejte následující informace:

    • ID předplatného a ID prostředků, pro které je potřeba zvýšit limit kvóty
    • Důvod navýšení kvóty
    • Typ prostředku pro navýšení kvóty, například Log Analytics nebo aplikační Přehledy
    • Požadovaný limit kvóty

Další kroky