Použití řídicího panelu .NET Aspire
Jakmile zaznamenáte telemetrická data, potřebujete způsob, jak je prozkoumat. Díky rozhraní .NET Aspire poskytuje řídicí panel bohaté nástroje pro zkoumání telemetrie a diagnostiku problémů.
Představte si, že pracujete pro prodejce venkovního vybavení. Ve své aplikaci nativní pro cloud .NET používáte OpenTelemetry. Teď chcete prozkoumat data, která telemetrie vysílá, a rozhodnout se, jestli je můžete použít ke zlepšení výkonu.
V této lekci se dozvíte, jak řídicí panel .NET Aspire zobrazuje telemetrická data.
Telemetrie na řídicím panelu .NET Aspire
Když spustíte aplikaci vytvořenou pomocí rozhraní .NET Aspire na vývojovém počítači a kontejnery, které spouští každou integraci, spustí .NET řídicí panel .NET Aspire. Toto webové rozhraní obsahuje pět částí, z nichž čtyři zobrazují telemetrii:
- Prostředky: Zobrazí seznam kontejnerů, projektů a spustitelných souborů, které tvoří celou aplikaci nativní pro cloud. Pomocí odkazů ve sloupci Koncové body se připojte ke každé mikroslužbě.
- Konzola: Zobrazí text odeslaný do standardního výstupu ze zadané integrace.
- Strukturované protokoly: Zobrazí informace odeslané do protokolovacích protokolů OpenTelemetry.
- Trasování: Zobrazí trasování pro každý požadavek přijatý jakoukoli mikroslužbou v aplikaci.
- Metriky: Zobrazí konfigurovatelné časové doménové grafy, které ukazují, jak se metriky, které zvolíte, liší.
Protokoly na řídicím panelu
Protokolované události popisují, co se stane při spuštění a spuštění aplikace. Na řídicím panelu můžete vidět dva typy protokolovaných informací: protokoly konzoly a strukturované protokoly.
Protokoly konzoly
Protokoly konzoly zobrazují text, který aplikace odeslala do standardního výstupu. Program příkazového řádku by zobrazoval například text jako řádky v konzole, ale mikroslužby a backingové služby nemají k zobrazení standardního výstupu žádné vnitřní místo. .NET Aspire pomáhá poskytnutím stránky protokolů konzoly na řídicím panelu.
Při otevření stránky musíte nejprve vybrat zdrojovou integraci, například jednu z mikroslužeb. Nástroj zobrazí veškerý standardní výstup z daného zdroje v hlavním okně s určitým formátováním. Například informační události se zobrazují zeleně, zatímco selhání jsou zobrazena červeně.
Protokoly konzoly jsou jednoduché řádky textu. Pro aplikace je snadné vytvářet a generovat, ale obtížně čte se pro lidi a obtížně zpracovávají pro účely analýzy, protože nemají strukturu.
Strukturované protokoly
Místo plochého textu uchovávají strukturované protokoly protokolované zprávy pomocí jejich šablony a parametrů zprávy. Tato struktura usnadňuje filtrování událostí, které jsou irelevantní, abyste mohli přejít k podrobnostem a vyřešit konkrétní problém. V produkčním prostředí je možné protokoly uchovávat, indexovat a pak dotazovat jako databázi. Tímto způsobem můžete provádět bohatou analýzu dat, která obsahují.
Poznámka:
Strukturované protokoly se také často označují jako sémantické protokoly.
V kódu odešlete událost do strukturovaných protokolů pomocí objektu OpenTelemetry ILogger
:
logger.Info("{shopitem} added to basket by {user}", "Ski goggles", "Kenny");
Na řídicím panelu .NET se na stránce Strukturované protokoly zobrazují události z každého prostředku v aplikaci. Pokud chcete přejít k podrobnostem, vyberte prostředek, který řešíte, a pomocí polí Filtr a Úroveň zobrazte pouze relevantní události.
Distribuované trasování na řídicím panelu
Trasování je záznam, který popisuje, jak byl požadavek zpracován a vrácen volajícímu. Každé trasování může zahrnovat volání více integrací ve vaší aplikaci. Například když uživatel požádá o webovou stránku katalogu produktů, může mikroslužba webového uživatelského rozhraní obdržet požadavek, který může volat ověřovací mikroslužbu, mikroslužbu katalogu a mezipaměť Redis před vrácením webové stránky uživateli.
Každé trasování se skládá z rozsahů, například volání mikroslužby katalogu. Systém zaznamenává jednotlivé rozsahy s časováním a nadřazenými informacemi, abyste viděli, která integrace reaguje rychle a která způsobuje zpoždění. Pro každé rozpětí jsou k dispozici další podrobnosti.
Podobně jako u strukturovaných protokolů můžete vybrat zdroj a použít filtry pro přechod k podrobnostem a vyhledat trasování pro konkrétní problém, který vás zajímá.
Metriky na řídicím panelu
Metriky jsou hodnoty, které se v průběhu času liší, zaznamenané integrací vaší aplikace. Metriky můžou například zaznamenávat dobu trvání požadavku a odpovědi nebo počet aktivních připojení k mikroslužbě katalogu. Některé metriky jsou integrované do .NET, některé mají knihovny sady OpenTelemetry SDK a vývojáři můžou přidat vlastní metriky OpenTelemetry, které jsou pro jejich integraci jedinečné.
Řídicí panel .NET Aspire obsahuje část Metriky , kterou můžete použít k prozkoumání a zobrazení toho, jak se metriky v průběhu času liší.
Metrika http.server.active_requests například zobrazuje počet zpracovávaných požadavků v libovolném okamžiku:
Metrika http.server.request.duration zobrazuje rychlost odezvy aplikace v libovolném okamžiku:
V každém grafu můžete zadat filtry, které budou cílit na graf. Tento graf například ukazuje metriku doby trvání požadavku pro požadavky na trasu domovské stránky: