Ř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ů v Stream Analytics vám můžou poznat příčinu problémů, když k nim dojde, a zkrátit tak dobu obnovení.
Důrazně doporučujeme povolit protokoly prostředků pro všechny úlohy, protože to významně pomůže s laděním a monitorováním.
Typy protokolů
Stream Analytics nabízí dva typy protokolů:
Protokoly aktivit (Always On), které poskytují přehled o operacích provedených v úlohách.
Protokoly prostředků (konfigurovatelné), které poskytují podrobné přehledy o všech úlohách, které se v rámci úlohy děje. Protokoly prostředků se spustí při vytvoření a ukončení úlohy, když se úloha odstraní. Pokrývají události při aktualizaci úlohy a při jejím spuštění.
Poznámka
K analýze nevyhovujících dat můžete použít služby, jako jsou Azure Storage, Azure Event Hubs a protokoly Azure Monitor. Účtují se vám poplatky podle cenového modelu pro tyto služby.
Poznámka
Tento článek byl nedávno aktualizován, aby používal Azure Monitor protokoly místo Log Analytics. Data protokolu se pořád ukládají do Log Analyticsho pracovního prostoru a pořád se shromažďují a analyzují pomocí stejné služby Log Analytics. Aktualizujeme terminologii, aby lépe odrážela roli protokolů v Azure monitor. Podrobnosti najdete v tématu Azure monitor změny terminologie .
Ladění pomocí protokolů aktivit
Protokoly aktivit jsou ve výchozím nastavení zapnuté a poskytují podrobné přehledy o operacích, které provádí vaše úloha Stream Analytics. Informace, které jsou k dispozici v protokolech aktivit, mohou pomáhat najít hlavní příčinu problémů, které mají vliv na vaši úlohu. K použití protokolů aktivit v Stream Analytics postupujte podle následujících kroků:
Přihlaste se k Azure Portal a v části Přehled vyberte Protokol aktivit .

Můžete zobrazit seznam operací, které byly provedeny. Jakákoli operace, která způsobila selhání úlohy, má bublinu červené informace.
Kliknutím na operaci zobrazíte její souhrnné zobrazení. Informace zde jsou často omezené. Chcete-li získat další informace o operaci, klikněte na tlačítko JSON.

Přejděte dolů k části vlastnosti ve formátu JSON, která poskytuje podrobné informace o chybě, která způsobila neúspěšnou operaci. V tomto příkladu došlo k chybě kvůli chybě za běhu z nevázaných hodnot zeměpisné šířky. Nesoulad v datech, která jsou zpracována úlohou Stream Analytics, způsobuje chybu dat. Můžete se seznámit s různými chybami vstupních a výstupních dat a proč k nim dojde.

Můžete provést opravné akce na základě chybové zprávy ve formátu JSON. V tomto příkladu zkontroluje, jestli je hodnota zeměpisné šířky mezi-90 stupňů a 90m stupně je potřeba přidat do dotazu.
Pokud chybová zpráva v protokolech aktivit není užitečná při identifikaci hlavní příčiny, povolte protokoly prostředků a použijte protokoly Azure Monitor.
Odeslání diagnostiky do protokolů Azure Monitor
Důrazně doporučujeme zapnout protokoly prostředků a odesílat je do protokolů Azure Monitor. Ve výchozím nastavení jsou vypnuté . Pokud je chcete zapnout, proveďte tyto kroky:
Vytvořte pracovní prostor Log Analytics, pokud ho ještě nemáte. Doporučuje se, aby byl váš pracovní prostor Log Analytics ve stejné oblasti jako vaše úloha Stream Analytics.
Přihlaste se k Azure Portal a přejděte do Stream Analytics úlohy. V části monitorování vyberte diagnostické protokoly. Pak vyberte zapnout diagnostiku.

Zadejte název v nastavení diagnostiky název a zaškrtněte políčka pro spouštění a vytváření v části log a AllMetrics v části metrika. Pak vyberte Odeslat do Log Analytics a zvolte pracovní prostor. Klikněte na Uložit.

Po spuštění úlohy Stream Analytics se protokoly prostředků směrují do vašeho pracovního prostoru Log Analytics. Chcete-li zobrazit protokoly prostředků pro vaši úlohu, vyberte v části monitorování možnost protokoly .

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

Kategorie protokolu prostředků
Azure Stream Analytics zachycuje dvě kategorie protokolů prostředků:
Vytváření obsahu: zachycuje události protokolu, které souvisejí s operacemi vytváření úloh, jako je vytváření úloh, přidávání a odstraňování vstupů a výstupů, přidávání a aktualizace dotazu a spuštění nebo zastavení úlohy.
Spuštění: zachycuje události, ke kterým dojde během provádění úlohy.
- Chyby připojení
- Chyby zpracování dat, včetně:
- Události, které neodpovídají definici dotazu (neshodné typy polí a hodnoty, chybějící pole atd.)
- Chyby vyhodnocení výrazu
- 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í obecná pole řetězců:
| Název | Description |
|---|---|
| time | Časové razítko (v UTC) protokolu |
| resourceId | ID prostředku, na kterém byla operace provedena, v horním případě. Obsahuje 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, buď spuštění , nebo vytváření obsahu. |
| operationName | Název operace, která se zaznamená do protokolu. Například odeslání událostí: Chyba zápisu výstupu SQL do mysqloutput. |
| status | Stav operace. Například Chyba nebo úspěch. |
| úroveň | Úroveň protokolování. Například Chyba, Upozornění nebo informativní. |
| properties | Podrobnosti specifické pro záznam v protokolu, serializované jako řetězec JSON. Další informace najdete v následujících částech tohoto článku. |
Schéma vlastností protokolu spuštění
Protokoly spouštění obsahují informace o událostech, ke kterým došlo během Stream Analytics provádění úlohy. Schéma vlastností se liší v závislosti na tom, zda se jedná o chybu dat nebo o obecnou událost.
Chyby dat
Všechny chyby, ke kterým dojde během zpracování úlohy, jsou 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í. Chyby připojení se považují za obecné události. Můžete si přečíst další informace o příčině různých vstupních a výstupních chybový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 nalezení zdroje chyby. Může se zkrátit v závislosti na velikosti. |
V závislosti na hodnotě OperationName mají chyby dat následující schéma:
Události serializace dojde během operací čtení událostí. K tomu dochází, když data na vstupu nevyhovují schématu dotazu v jednom z těchto důvodů:
Neshoda typů během události (de) serializace: identifikuje pole, které způsobuje chybu.
Událost se nedá přečíst, neplatná serializace: obsahuje informace o umístění ve vstupních datech, kde došlo k chybě. Zahrnuje název objektu BLOB pro vstup, posun a ukázku dat objektu BLOB.
Posílání událostí během operací zápisu. Identifikují událost streamování, která způsobila chybu.
Obecné události
Obecné události se týkají všech ostatních.
| Název | Description |
|---|---|
| Chyba | volitelné Informace o chybě. Obvykle se jedná o výjimku, pokud je k dispozici. |
| Zpráva | Zpráva protokolu |
| Typ | Typ zprávy Provede mapování na interní kategorizaci chyb. Například JobValidationError nebo BlobOutputAdapterInitializationFailure. |
| ID korelace | Identifikátor GUID, který jedinečně identifikuje provádění úlohy. Všechny položky protokolu spuštění od okamžiku spuštění úlohy, dokud úloha přestane mít stejnou hodnotu ID korelace . |