Řešení potíží s Azure Stream Analytics pomocí protokolů prostředků

Zpracování úlohy Azure Stream Analytics se občas může neočekávaně zastavit. Je důležité mít možnost tento druh události vyřešit. Selhání můžou být způsobená neočekávaným výsledkem dotazu, připojením k zařízením nebo neočekávaným výpadkem služby. Protokoly prostředků ve službě Stream Analytics vám můžou pomoct identifikovat příčinu problémů, ke kterým dochází, a zkrátit dobu obnovení.

Důrazně doporučujeme povolit protokoly prostředků pro všechny úlohy, protože to výrazně pomůže s laděním a monitorováním.

Typy protokolů

Stream Analytics nabízí dva typy protokolů:

  • Protokoly aktivit (vždy zapnuté), které poskytují přehled o operacích prováděných s úlohami.

  • Protokoly prostředků (konfigurovatelné), které poskytují bohatší přehled o všem, co se děje s úlohou. Protokoly prostředků se spustí při vytvoření a ukončení úlohy při odstranění úlohy. Pokrývají události, kdy se úloha aktualizuje a když je spuštěná.

Poznámka:

K analýze nekonformních dat můžete použít služby, jako jsou Azure Storage, Azure Event Hubs a protokoly služby Azure Monitor. Na základě cenového modelu těchto služeb se vám budou účtovat poplatky.

Poznámka:

Tento článek byl nedávno aktualizován tak, aby místo Log Analytics používal termín protokoly služby Azure Monitor. Data protokolů jsou stále uložená v pracovním prostoru služby Log Analytics a stále se shromažďují a analyzují stejnou službou Log Analytics. Aktualizujeme terminologii tak, aby lépe odrážela roli protokolů ve službě Azure Monitor. Podrobnosti najdete v tématu Změny terminologie služby Azure Monitor.

Ladění pomocí protokolů aktivit

Protokoly aktivit jsou ve výchozím nastavení zapnuté a poskytují základní přehled o operacích prováděných vaší úlohou Stream Analytics. Informace, které jsou přítomné v protokolech aktivit, můžou pomoct najít původní příčinu problémů, které mají vliv na vaši úlohu. Pokud chcete v Stream Analytics používat protokoly aktivit, postupujte následovně:

  1. Přihlaste se k webu Azure Portal a v části Přehled vyberte protokol aktivit.

    Protokol aktivit Stream Analytics

  2. Zobrazí se seznam provedených operací. Jakákoli operace, která způsobila selhání vaší úlohy, má červenou informační bublinu.

  3. Výběrem operace zobrazíte souhrnné zobrazení. Informace zde jsou často omezené. Pokud chcete získat další podrobnosti o operaci, vyberte JSON.

    Souhrn operací protokolu aktivit Stream Analytics

  4. Posuňte se dolů do části Vlastnosti ve formátu JSON, která obsahuje podrobnosti o chybě, která způsobila neúspěšnou operaci. V tomto příkladu došlo k chybě modulu runtime z hodnoty zeměpisné šířky mimo vazbu. Nesrovnalosti v datech zpracovávaných úlohou Stream Analytics způsobí chybu dat. Dozvíte se o různých chybách vstupních a výstupních dat a o tom, proč k nim dochází.

    Podrobnosti o chybě JSON

  5. Na základě chybové zprávy ve formátu JSON můžete provést opravné akce. V tomto příkladu zkontroluje, jestli je hodnota zeměpisné šířky v rozmezí -90 stupňů až 90 stupňů, je potřeba do dotazu přidat.

  6. Pokud chybová zpráva v protokolech aktivit není užitečná při identifikaci původní příčiny, povolte protokoly prostředků a použijte protokoly služby Azure Monitor.

Odeslání diagnostiky do protokolů služby Azure Monitor

Zapnutí protokolů prostředků a jejich odesílání do protokolů služby Azure Monitor se důrazně doporučuje. Ve výchozím nastavení jsou vypnuté . Pokud je chcete zapnout, proveďte tyto kroky:

  1. Pokud ho ještě nemáte, vytvořte pracovní prostor služby Log Analytics. Doporučujeme mít pracovní prostor služby Log Analytics ve stejné oblasti jako vaše úloha Stream Analytics.

  2. Přihlaste se k webu Azure Portal a přejděte k úloze Stream Analytics. V části Monitorování vyberte Diagnostické protokoly. Pak vyberte Zapnout diagnostiku.

    Navigace v okně k protokolům prostředků

  3. Zadejte název v názvu nastavení diagnostiky a zaškrtněte políčka pro spouštění a vytváření v protokolu a Všechny metriky v rámci metriky. Pak vyberte Odeslat do Log Analytics a zvolte svůj pracovní prostor. Zvolte Uložit.

    Nastavení pro protokoly prostředků

  4. Při spuštění úlohy Stream Analytics se protokoly prostředků směrují do pracovního prostoru služby Log Analytics. Pokud chcete zobrazit protokoly prostředků pro vaši úlohu, vyberte protokoly v části Monitorování .

    Snímek obrazovky s nabídkou Obecné s vybranou možností Protokoly

  5. Stream Analytics poskytuje předdefinované dotazy, které umožňují snadno vyhledávat protokoly, které vás zajímají. V levém podokně můžete vybrat všechny předdefinované dotazy a pak vybrat Spustit. Výsledky dotazu se zobrazí v dolním podokně.

    Snímek obrazovky znázorňující protokoly pro úlohu Stream Analytics

Kategorie protokolu prostředků

Azure Stream Analytics zachycuje dvě kategorie protokolů prostředků:

  • Vytváření: Zaznamenává události protokolu, které souvisejí s operacemi vytváření úloh, jako je vytvoření úlohy, přidání a odstranění vstupů a výstupů, přidání a aktualizace dotazu a spuštění nebo zastavení úlohy.

  • Provádění: Zaznamenává události, ke kterým dochází během provádění úlohy.

    • Chyby připojení
    • Chyby zpracování dat, mezi které patří:
      • Události, které neodpovídají definici dotazu (neshodované typy polí a hodnoty, chybějící pole atd.)
      • Chyby vyhodnocení výrazů
    • Další události a chyby

Schéma protokolů prostředků

Všechny protokoly jsou uložené ve formátu JSON. Každá položka má následující společná pole řetězců:

Název Popis
čas Časové razítko (ve standardu UTC) protokolu
resourceId ID prostředku, na který se operace uskutečnila, v velkým případě Zahrnuje ID předplatného, skupinu prostředků a název úlohy. Například /SUBSCRIPTIONS/6503D296-DAC1-4449-9B03-609A1F4A1C87/RESOURCEGROUPS/MY-RESOURCE-GROUP/PROVIDERS/MICROSOFT. STREAMANALYTICS/STREAMINGJOBS/MYSTREAMINGJOB.
category Kategorie protokolu, spuštění nebo vytváření.
operationName Název operace, která se protokoluje. Například odesílání událostí: Selhání zápisu výstupu SQL do mysqloutput.
stav Stav operace. Například neúspěšné nebo úspěšné.
úroveň Úroveň protokolu. Například Chyba, Upozornění nebo Informační.
vlastnosti Podrobnosti specifické pro záznam protokolu serializované jako řetězec JSON. Další informace najdete v následujících částech tohoto článku.

Schéma vlastností protokolu spouštění

Protokoly spouštění obsahují informace o událostech, ke kterým došlo během provádění úlohy Stream Analytics. Schéma vlastností se liší v závislosti na tom, jestli je událost chybou dat nebo obecnou událostí.

Chyby dat

Jakákoli chyba, ke které dojde, když úloha zpracovává data, je v této kategorii protokolů. Tyto protokoly se nejčastěji vytvářejí během operací čtení, serializace a zápisu dat. Tyto protokoly nezahrnují chyby připojení. Připojení chyby citlivosti se považují za obecné události. Další informace o příčině různých chyb vstupních a výstupních dat.

Název Popis
Zdroj Název vstupu nebo výstupu úlohy, kde došlo k chybě.
Zpráva Zpráva přidružená k chybě
Typ Typ chyby. Například DataConversionError, CsvParserError nebo ServiceBusPropertyColumnMissingError.
Data Obsahuje data, která jsou užitečná k přesnému vyhledání zdroje chyby. V závislosti na velikosti se může zkrátit.

V závislosti na hodnotě operationName mají chyby dat následující schéma:

  • Události serializace probíhají během operací čtení událostí. K těmto datům na vstupu dochází v případě, že schéma dotazu nevyhovuje z jednoho z těchto důvodů:

    • Neshoda typů během serializace nebo deserializace událostí: Identifikuje pole, které způsobuje chybu.

    • Nelze přečíst událost, neplatná serializace: Obsahuje informace o umístění ve vstupních datech, kde došlo k chybě. Obsahuje název objektu blob pro vstup objektu blob, posun a ukázku dat.

  • Události odesílání probíhají během operací zápisu. Identifikují událost streamování, která způsobila chybu.

Obecné události

Obecné události pokrývají všechno ostatní.

Název Popis
Chyba (volitelné) Informace o chybě Obvykle se jedná o informace o výjimce, pokud jsou k dispozici.
Zpráva Zpráva protokolu
Typ Typ zprávy Mapy k interní kategorizaci chyb. Například JobValidationError nebo BlobOutputAdapterInitializationFailure.
ID korelace IDENTIFIKÁTOR GUID, který jednoznačně identifikuje provádění úlohy. Všechny položky protokolu spuštění od okamžiku spuštění úlohy, dokud úloha nezastaví stejnou hodnotu ID korelace.

Referenční informace najdete v seznamu všech typů kategorií protokolů prostředků podporovaných ve službě Azure Monitor nebo všech typech kategorií protokolů prostředků shromážděných pro Azure Stream Analytics.

Další kroky