Analýza a vizualizace událostí s využitím Application Insights
Součástí služby Azure Monitor je Application Insights rozšiřitelná platforma pro monitorování a diagnostiku aplikací. Zahrnuje výkonný analytický nástroj a dotazovací nástroj, přizpůsobitelné řídicí panely a vizualizace a další možnosti, včetně automatizovaného upozorňování. Integrace Application Insights s Service Fabric zahrnuje prostředí nástrojů pro Visual Studio a Azure Portal a také metriky specifické pro Service Fabric, které poskytují komplexní integrované protokolování. I když se v Application Insights automaticky vytváří a shromažďuje mnoho protokolů, doporučujeme do aplikací přidat další vlastní protokolování, abyste vytvořili bohatší prostředí diagnostiky.
Tento článek vám pomůže vyřešit následující běžné otázky:
- Návody vědět, co se děje uvnitř mé aplikace a služeb a shromažďovat telemetrii?
- Návody řešit potíže s aplikací, zejména služby komunikující s sebou?
- Návody získat metriky o tom, jak moje služby fungují, například čas načítání stránky, požadavky HTTP?
Účelem tohoto článku je ukázat, jak získat přehledy a řešit potíže v rámci Application Insights. Pokud chcete zjistit, jak nastavit a nakonfigurovat Application Insights pomocí Service Fabric, podívejte se na tento kurz.
Monitorování ve službě Application Insights
Application Insights nabízí bohaté prostředí při používání Service Fabric. Na stránce přehledu poskytuje Application Insights klíčové informace o vaší službě, jako je doba odezvy a počet zpracovaných požadavků. Kliknutím na tlačítko Hledat v horní části zobrazíte seznam nedávných žádostí v aplikaci. Kromě toho byste tady viděli neúspěšné požadavky a mohli diagnostikovat, k jakým chybám mohlo dojít.
Na pravém panelu na předchozím obrázku jsou v seznamu dva hlavní typy položek: požadavky a události. Požadavky jsou volání do rozhraní API aplikace prostřednictvím požadavků HTTP v tomto případě a události jsou vlastní události, které fungují jako telemetrie, které můžete přidat kdekoli ve svém kódu. Instrumentaci aplikací v rozhraní API Application Insights můžete podrobněji prozkoumat pro vlastní události a metriky. Kliknutím na požadavek zobrazíte další podrobnosti, jak je znázorněno na následujícím obrázku, včetně dat specifických pro Service Fabric, která se shromažďují v balíčku NuGet Služby Application Insights. Tyto informace jsou užitečné pro řešení potíží a znalost stavu vaší aplikace a všechny tyto informace je možné prohledávat v rámci Application Insights.
Application Insights má určené zobrazení pro dotazování na všechna data, která přicházejí. V horní části stránky Přehled vyberte Průzkumník metrik a přejděte na portál Application Insights. Tady můžete spouštět dotazy na vlastní události uvedené dříve, požadavky, výjimky, čítače výkonu a další metriky pomocí dotazovacího jazyka Kusto. Následující příklad ukazuje všechny požadavky za posledních 1 hodinu.
Pokud chcete podrobněji prozkoumat možnosti portálu Application Insights, přejděte do dokumentace k portálu Application Insights.
Konfigurace Application Insights s využitím EventFlow
Pokud k agregaci událostí používáte EventFlow, nezapomeňte importovat Microsoft.Diagnostics.EventFlow.Outputs.ApplicationInsights
balíček NuGet. Následující kód je vyžadován ve výstupní části eventFlowConfig.json:
"outputs": [
{
"type": "ApplicationInsights",
"instrumentationKey": "***ADD INSTRUMENTATION KEY HERE***"
}
]
Nezapomeňte provést požadované změny ve vašich filtrech a zahrnout všechny další vstupy (společně s příslušnými balíčky NuGet).
Application Insights SDK
Jako agregační řešení se doporučuje používat EventFlow a WAD, protože umožňují modulární přístup k diagnostice a monitorování, to znamená, že pokud chcete změnit výstupy z EventFlow, nevyžaduje změnu skutečné instrumentace, pouze jednoduchou úpravu konfiguračního souboru. Pokud se rozhodnete investovat do používání Application Insights a pravděpodobně se nezměníte na jinou platformu, měli byste se podívat na novou sadu SDK application Insights pro agregaci událostí a jejich odesílání do Application Insights. To znamená, že už nebudete muset nakonfigurovat EventFlow tak, aby odesílala data do Application Insights, ale místo toho nainstaluje balíček Service Fabric NuGet služby ApplicationInsight. Podrobnosti o balíčku najdete tady.
Podpora Application Insights pro mikroslužby a kontejnery ukazuje některé z nových funkcí, na kterých se pracuje (aktuálně stále v beta verzi), které vám umožňují používat rozsáhlejší možnosti monitorování pomocí Application Insights. Patří sem sledování závislostí (používané při vytváření mapy aplikací všech služeb a aplikací v clusteru a komunikace mezi nimi) a lepší korelace trasování pocházejících z vašich služeb (pomáhá lépe určit problém v pracovním postupu aplikace nebo služby).
Pokud vyvíjíte v .NET a pravděpodobně budete používat některé programovací modely Service Fabric a jste ochotni používat Application Insights jako vaši platformu pro vizualizaci a analýzu dat událostí a protokolů, doporučujeme, abyste jako svůj pracovní postup monitorování a diagnostiky přešli přes trasu sady Application Insights SDK. Přečtěte si dokumentaci k Application Insights a dokumentaci k protokolům trasování, abyste mohli začít používat Application Insights ke shromažďování a zobrazení protokolů.
Navigace v prostředku Application Insights na webu Azure Portal
Jakmile nakonfigurujete Application Insights jako výstup pro vaše události a protokoly, informace by se měly během několika minut začít zobrazovat v prostředku Application Insights. Přejděte k prostředku Application Insights, který vás převeze na řídicí panel prostředků Application Insights. Výběrem možnosti Hledat na hlavním panelu Application Insights zobrazíte nejnovější trasování, která přijala, a budete je moct filtrovat.
Průzkumník metrik je užitečný nástroj pro vytváření vlastních řídicích panelů na základě metrik, které můžou hlásit vaše aplikace, služby a cluster. Podívejte se na zkoumání metrik v Application Insights a nastavte pro sebe několik grafů na základě dat, která shromažďujete.
Kliknutím na Analýzu přejdete na portál Application Insights Analytics, kde můžete dotazovat události a trasování s větším rozsahem a volitelností. Další informace najdete v analýze v Application Insights.
Další kroky
- Nastavení upozornění v AI tak, aby dostávala oznámení o změnách výkonu nebo využití
- Inteligentní zjišťování v Application Insights provádí proaktivní analýzu telemetrie odesílané do Application Insights, která vás upozorní na potenciální problémy s výkonem.