Monitorování a diagnostika služeb v nastavení místních počítačů pro vývoj
Monitorování, zjišťování, diagnostika a řešení potíží umožňují službám pokračovat s minimálním přerušením uživatelského prostředí. I když monitorování a diagnostika jsou důležité ve skutečném nasazeném produkčním prostředí, efektivita bude záviset na přijetí podobného modelu během vývoje služeb, aby se zajistilo, že budou fungovat při přechodu na skutečné nastavení. Service Fabric usnadňuje vývojářům služeb implementaci diagnostiky, která bezproblémově funguje jak v místních nastaveních místního vývoje na jednom počítači, tak i v reálných nastaveních produkčního clusteru.
Trasování událostí pro Windows
Trasování událostí pro Windows (ETW) je doporučená technologie pro trasování zpráv v Service Fabric. Mezi výhody používání Trasování událostí pro Windows patří:
- Trasování událostí pro Windows je rychlé. Byla vytvořena jako technologie trasování, která má minimální dopad na časy provádění kódu.
- Trasování trasování událostí pro Windows bezproblémově funguje v místních vývojových prostředích a také v reálných nastaveních clusterů. To znamená, že kód trasování nemusíte přepisovat, až budete připraveni svůj kód nasadit do skutečného clusteru.
- Systémový kód Service Fabric také používá trasování událostí pro Windows pro interní trasování. Díky tomu můžete zobrazit trasování aplikací prokládání pomocí systémových trasování Service Fabric. Pomůže vám také snadněji porozumět sekvencí a vzájemným vztahům mezi kódem aplikace a událostmi v základním systému.
- V nástrojích Service Fabric Visual Studio je integrovaná podpora pro zobrazení událostí Trasování událostí pro Windows. Události Trasování událostí pro Windows se zobrazí v zobrazení diagnostických událostí sady Visual Studio, jakmile je sada Visual Studio správně nakonfigurovaná pomocí Service Fabric.
Zobrazení systémových událostí Service Fabric v sadě Visual Studio
Service Fabric generuje události Trasování událostí pro Windows, které vývojářům aplikací pomáhají pochopit, co se děje na platformě. Pokud jste to ještě neudělali, pokračujte a postupujte podle kroků v části Vytvoření první aplikace v sadě Visual Studio. Tyto informace vám pomůžou zprovoznění aplikace pomocí Prohlížeče diagnostických událostí zobrazující zprávy trasování.
Pokud se okno diagnostických událostí nezobrazuje automaticky, přejděte na kartu Zobrazení v sadě Visual Studio, zvolte Jiné windows a pak Prohlížeč diagnostických událostí.
Každá událost obsahuje standardní informace o metadatech, které říkají uzlu, aplikaci a službě, ze které událost pochází. Seznam událostí můžete také filtrovat pomocí pole Filtrovat události v horní části okna událostí. Můžete například filtrovat název uzlu nebo název služby. A když se díváte na podrobnosti události, můžete se také pozastavit pomocí tlačítka Pozastavit v horní části okna událostí a pokračovat později bez ztráty událostí.
Přidání vlastních trasování do kódu aplikace
Šablony projektů Sady Service Fabric sady Visual Studio obsahují ukázkový kód. Tento kód ukazuje, jak přidat trasování trasování trasování Trasování událostí pro Windows vlastní aplikace, která se zobrazují v prohlížeči Trasování událostí pro Windows sady Visual Studio spolu s trasováními systému z Service Fabric. Výhodou této metody je, že metadata se automaticky přidávají do trasování a prohlížeč diagnostických událostí sady Visual Studio je již nakonfigurovaný tak, aby je zobrazil.
U projektů vytvořených ze šablon služeb (bezstavové nebo stavové) stačí vyhledat implementaci RunAsync
:
- Volání
ServiceEventSource.Current.ServiceMessage
vRunAsync
metodě ukazuje příklad vlastní trasování Trasování událostí pro Windows z kódu aplikace. - V souboru ServiceEventSource.cs najdete přetížení metody
ServiceEventSource.ServiceMessage
, která by se měla používat pro události s vysokou frekvencí z důvodu výkonu.
Pro projekty vytvořené ze šablon objektu actor (bezstavové nebo stavové):
- Otevřete soubor ProjectName .cs, kde ProjectName je název, který jste zvolili pro projekt sady Visual Studio.
- Vyhledejte kód
ActorEventSource.Current.ActorMessage(this, "Doing Work");
v metodě DoWorkAsync . Toto je příklad vlastního trasování trasování Trasování událostí pro Windows napsané z kódu aplikace. - V souboru ActorEventSource.cs najdete přetížení metody
ActorEventSource.ActorMessage
, která by se měla použít pro události s vysokou frekvencí z důvodu výkonu.
Po přidání vlastního trasování trasování událostí pro Windows do kódu služby můžete znovu sestavit, nasadit a spustit aplikaci a zobrazit události v Prohlížeči diagnostických událostí. Pokud aplikaci ladíte pomocí klávesy F5, prohlížeč diagnostických událostí se otevře automaticky.
Další kroky
Stejný kód trasování, který jste přidali do aplikace výše pro místní diagnostiku, bude fungovat s nástroji, které můžete použít k zobrazení těchto událostí při spuštění aplikace v clusteru Azure. Podívejte se na tyto články, které popisují různé možnosti nástrojů a popisují, jak je můžete nastavit.