Sdílet prostřednictvím


Důležité informace o správě provozu pro akcelerátor cílové zóny služby AIS Services

Tento článek obsahuje důležité informace a doporučení pro správu a monitorování provozu při používání nabídek AIS.

Většina doporučení v této části se vztahuje na verzi Logic Apps Standard (s jedním tenantem), která je sama o sobě součástí nabídky Azure App Service a sdílí mnoho stejných funkcí správy.

Mnoho prostředků, které tvoří AIS, je možné nakonfigurovat tak, aby ukládaly protokoly, telemetrická data a data metrik ve službě Log Analytics, Application Insights nebo ve vlastních umístěních úložišť (mezi tyto prostředky patří účty úložiště, event hubs a další).

Tyto informace můžeme využít k vizualizaci celkového stavu našich prostředků a provedení příslušných akcí správy.

Definice

  • Protokoly služby Azure Monitor shromažďují a uspořádají data protokolů a výkonu z monitorovaných prostředků. Nástroje, jako je Log Analytics, pak můžou tyto informace protokolu dotazovat nebo vizualizovat, případně vám umožní upozorňovat, pokud jsou splněny určité podmínky.

  • Protokoly metrik Azure shromažďují číselná data do databáze časových řad z monitorovaných prostředků. Nástroje, jako je Application Insights, pak můžou tato data vizualizovat, což vám pomůže identifikovat problémy s výkonem a modulem runtime.

  • Log Analytics je nabídka monitorování Azure, která poskytuje umístění pro ukládání dat protokolu a výkonu a poskytuje mechanismus a jazyk pro dotazování těchto protokolů (Kusto). a poskytuje možnost vytvářet výstrahy a řídicí panely založené na těchto protokolech (mimo jiné funkce).

  • Application Insights je nabídka monitorování Azure, která poskytuje možnost vizualizovat a upozorňovat na data o výkonu generovaná monitorovanými prostředky.

  • dotazovací jazyk Kusto (KQL) je výkonný dotazovací jazyk optimalizovaný pro dotazování a formátování dat. Jedná se například o primární dotazovací jazyk pro Log Analytics.

Aspekty návrhu

  • Zvažte řešení monitorování jako celek:

    • Jaké prostředky potřebujete monitorovat?

    • Jak budete sledovat zprávy, které proudí mezi prostředky?

    • K jakým externím systémům se připojíte?

    • Jaké typy upozornění budete potřebovat?

  • Zamyslete se nad tím, jaké dotazy potřebujete spustit. Budete například potřebovat vědět, jestli daná žádost trvá déle, než se čekalo? Nebo pokud se zobrazí jedna chyba vs. cluster chyb?

  • Jakou úroveň sledování budete potřebovat? Pokud například přijde zpráva od třetí strany, musíte ji sledovat prostřednictvím všech přidružených prostředků?

  • Jaké úlohy správy budete muset provést? Budete muset znovu odeslat zprávy nebo soubory?

  • Ve výchozím nastavení je historie spuštění aplikace logiky uložená ve službě Azure Storage, ale můžete také exportovat metriky a soubory protokolů do jiných zdrojů (například Log Analytics nebo externího účtu úložiště). Zvažte, jak používáte informace o protokolování a jestli používáte centralizované úložiště protokolů.

  • Application Insights slouží k poskytování monitorování výkonu aplikací. Dělá to tak, že shromažďuje metriky z prostředků, které tvoří vaše řešení.

  • Log Analytics se používá k dotazování protokolů a nastavení upozornění, což vám umožní zobrazit stav vašich prostředků a porozumět problémům, ke kterým může dojít. Data protokolu můžou obsahovat vlastní vlastnosti (viz sledované vlastnosti níže).

  • Další důležité informace a doporučení týkající se služeb App Services najdete v článku o správě akcelerátoru cílových zón App Service.

Doporučení k návrhu

  • Nastavte Application Insights tak, aby používal pracovní prostor služby Log Analytics jako zdroj dat (označovaný jako prostředek založený na pracovním prostoru). Tím umožníte, aby se data protokolování a výkonu uchovávala v konsolidovaném umístění.

  • Nastavte upozornění pro všechny prostředky, abyste příslušné týmy informovali o událostech souvisejících s jednotlivými prostředky nebo s úlohou.

  • Propojte prostředky ve vašem řešení se službou Application Insights, pokud je podporovaná. Aplikaci logiky je například možné propojit s Application Insights, aby byla k dispozici data a metriky modulu runtime pro dotazování. Příklad najdete tady.

  • Pomocí funkce clientTrackingId služby Logic Apps můžete zadat vlastní ID sledování, které vám umožní korelovat události napříč spuštěními aplikací logiky. K dosažení tohoto výsledku můžete použít hlavičku x-ms-client-tracking-id s triggery Request, HTTP nebo HTTP+WebHook.

  • Pomocí funkce Sledované vlastnosti v Logic Apps můžete do souborů protokolu protokolovat další data (vstup nebo výstup) z akce. Tyto vlastnosti jsou pak k dispozici pro dotazování protokolů pomocí KQL s Log Analytics nebo jiným řešením.

  • Zvažte použití značek prostředků. Značky prostředků vám můžou pomoct se správou a uspořádáním prostředků v Azure. Můžete je použít k přiřazení metadat k prostředkům. Tato metadata můžete použít k různým účelům, jako je kategorizace prostředků podle aplikace nebo obchodní jednotky, sledování nákladů na prostředky a identifikace prostředků pro dodržování předpisů.

Ukázkové dotazy Kusto

Následující dotazy ukazují, jak dotazovat tři hlavní tabulky používané pro data protokolu AIS. Ke každé z těchto tabulek je možné získat přístup z možnosti Protokoly v části Monitorování vaší aplikace logiky.

Hlavní tabulky dotazů jsou:

  • Výjimky
    Tato tabulka obsahuje všechny výjimky zaznamenané vaším prostředkem, jako jsou výjimky vyvolané modulem runtime aplikace logiky. Můžete ho použít k vyhledání základní příčiny jakýchkoli problémů, které se zobrazí, a to buď na portálu, nebo během provádění kódu.

  • požadavky
    Tato tabulka protokoluje všechny požadavky provedené modulem runtime aplikace logiky na jiný prostředek nebo na konkrétní akce v rámci pracovního postupu.

  • Stopy
    Tato tabulka obsahuje většinu protokolů modulu runtime služby Logic Apps, podrobnosti protokolování spuštění triggeru, spouštění a zastavování pracovních postupů a provádění akcí. Pokud jste zaprotokolovali nějaké sledované vlastnosti z akcí, najdete tato data v části customDimensions . Potom můžete pomocí klauzule extend v dotazu přidat data jako sloupce v odpovědi na dotaz.

Pracovní postupy s chybami:

> traces
>
> \| where customDimensions\["Category"\] == "Host.Triggers.Workflows"
>
> \| where customDimensions.LogLevel == "Error"

Počet spuštění pracovních postupů za posledních 24 hodin ve všech pracovních postupech:

> traces
>
> \| where customDimensions\["Category"\] == "Host.Triggers.Workflows"
>
> \| where customDimensions\["EventName"\] == "WorkflowActionStart"
>
> \| where timestamp \> ago(1d)
>
> \| count

Míra úspěšnosti aktivačních událostí v grafu v průběhu času

> traces  
> \| where customDimensions\["Category"\] == "Host.Triggers.Workflows"  
> \| where customDimensions\["EventName"\] == "WorkflowTriggerEnd"  
> \|summarize
>
> success = countif(customDimensions\["prop\_\_status"\] ==
> "Succeeded"),
>
> failures = countif(customDimensions\["prop\_\_status"\] == "Failed")
>
> by bin(timestamp, 1m)  
> \| render timechart

Další krok

Projděte si kritické oblasti návrhu a projděte si kompletní aspekty a doporučení pro vaši architekturu.