Diagnostika běžných scénářů pomocí Service Fabric
Tento článek popisuje běžné scénáře, se kterými se uživatelé setkali v oblasti monitorování a diagnostiky s Service Fabric. Uvedené scénáře zahrnují všechny 3 vrstvy Service Fabric: aplikace, cluster a infrastruktura. Každé řešení používá protokoly Application Insights a Azure Monitor, nástroje pro monitorování Azure k dokončení jednotlivých scénářů. Kroky v jednotlivých řešeních dávají uživatelům úvodní informace o tom, jak používat protokoly Application Insights a Azure Monitor v kontextu Service Fabric.
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 .
Požadavky a doporučení
Řešení v tomto článku budou používat následující nástroje. Doporučujeme, abyste nastavili a nakonfigurovali:
- Application Insights s Service Fabric
- Povolení Azure Diagnostics v clusteru
- Nastavení pracovního prostoru Log Analytics
- Log Analytics agenta pro sledování čítačů výkonu
Jak můžu v aplikaci zobrazit neošetřené výjimky?
Přejděte na prostředek Application Insights, pomocí kterého je vaše aplikace nakonfigurovaná.
V levém horním rohu klikněte na Hledat . Pak klikněte na tlačítko filtr na dalším panelu.

Zobrazí se spousta typů událostí (trasování, požadavky, vlastní události). Jako filtr vyberte "Exception".

Kliknutím na výjimku v seznamu můžete zobrazit další podrobnosti, včetně kontextu služby, pokud používáte sadu Service Fabric Application Insights SDK.

Návody zobrazit, která volání HTTP se ve svých službách používají?
Ve stejném Application Insights prostředku můžete místo výjimek a zobrazení všech požadavků vytvořit filtrování požadavků.
Pokud používáte sadu SDK Service Fabric Application Insights, uvidíte vizuální znázornění vašich služeb, které jsou připojené k druhému, a počet úspěšných a neúspěšných žádostí. Na levé straně klikněte na mapa aplikace.
Mapa aplikace AI okno Mapa aplikace AI 
Další informace o mapě aplikace najdete v dokumentaci k mapě aplikací .
Návody vytvořit výstrahu, když se uzel ukončí
Události uzlu jsou sledovány Service Fabricm clusterem. Přejděte do prostředku řešení Service Fabric Analytics s názvem ServiceFabric (NameofResourceGroup) .
V dolní části okna s názvem Summary klikněte na graf.

Tady máte spoustu grafů a dlaždic znázorňující různé metriky. Klikněte na jeden z grafů a přejdete k prohledávání protokolu. Tady se můžete dotazovat na všechny události clusteru nebo čítače výkonu.
Zadejte následující dotaz. Tato ID událostí se nacházejí v odkazu na události uzlu .
ServiceFabricOperationalEvent | where EventID >= 25622 and EventID <= 25626V horní části klikněte na nové pravidlo upozornění a teď na základě tohoto dotazu dostanou událost, že se vám zobrazí výstraha ve zvolené metodě komunikace.

Jak se dá upozornit na vrácení zpět upgradu aplikace?
Ve stejném okně prohledávání protokolu jako předtím zadejte následující dotaz pro vrácení zpět se systémem upgradu. Tato ID událostí se nacházejí v části referenční informace o událostech aplikace
ServiceFabricOperationalEvent | where EventID == 29623 or EventID == 29624V horní části klikněte na nové pravidlo upozornění a teď na základě tohoto dotazu dostanou událost, že se vám zobrazí výstraha.
Návody viz metriky kontejnerů?
Ve stejném zobrazení se všemi grafy se zobrazí některé dlaždice pro výkon kontejnerů. K naplnění těchto dlaždic potřebujete Log Analytics agenta a řešení pro monitorování kontejnerů .

Poznámka
K instrumentaci telemetrie zevnitř vašeho kontejneru budete muset přidat balíček NuGet Application Insights pro kontejnery.
Jak můžu monitorovat čítače výkonu?
Po přidání agenta Log Analytics do clusteru je nutné přidat konkrétní čítače výkonu, které chcete sledovat. Přejděte na stránku Log Analytics pracovního prostoru na portálu – na stránce řešení na kartě pracovní prostor se nachází v levé nabídce.

Až budete na stránce pracovního prostoru, klikněte v levé nabídce na Upřesnit nastavení.

Kliknutím na data > čítače výkonu systému Windows (čítače výkonu data > Linux pro počítače se systémem Linux) zahájíte shromažďování konkrétních čítačů z uzlů pomocí agenta Log Analytics. Tady jsou příklady formátu pro přidání čítačů.
.NET CLR Memory(<ProcessNameHere>)\\# Total committed BytesProcessor(_Total)\\% Processor TimeV rychlém startu jsou VotingData a VotingWeb používané názvy procesů, takže sledování těchto čítačů by vypadalo takto.
.NET CLR Memory(VotingData)\\# Total committed Bytes.NET CLR Memory(VotingWeb)\\# Total committed Bytes
To vám umožní zjistit, jak vaše infrastruktura zpracovává vaše úlohy, a nastavit relevantní výstrahy na základě využití prostředků. Například můžete chtít nastavit výstrahu, pokud celkové využití procesoru překročí 90% nebo pod 5%. Název čítače, který byste použili, je% času procesoru. To můžete provést vytvořením pravidla výstrahy pro následující dotaz:
Perf | where CounterName == "% Processor Time" and InstanceName == "_Total" | where CounterValue >= 90 or CounterValue <= 5.
Návody sledovat výkon mých Reliable Services a Actorů?
Chcete-li sledovat výkon Reliable Services nebo objektů actor ve vašich aplikacích, měli byste také shromažďovat i čítače Service Fabric Actor, metoda Actor, Service a Service Method. Tady jsou příklady čítačů výkonu spolehlivých služeb a objektů Actor, které se mají shromáždit.
Poznámka
Agentem Log Analytics momentálně nelze shromáždit Service Fabric čítače výkonu, ale mohou být shromažďována jinými diagnostickými řešeními .
Service Fabric Service(*)\\Average milliseconds per requestService Fabric Service Method(*)\\Invocations/SecService Fabric Actor(*)\\Average milliseconds per requestService Fabric Actor Method(*)\\Invocations/Sec
V těchto odkazech najdete úplný seznam čítačů výkonu pro spolehlivé služby a objekty Actors .
Další kroky
- Vyhledat společné chyby při aktivaci balíčku kódu
- V AI nastavte výstrahy na změny výkonu nebo využití.
- Inteligentní zjišťování v Application Insights provádí proaktivní analýzu telemetrie, která se POSÍLÁ do AI a upozorňuje na potenciální problémy s výkonem.
- Přečtěte si další informace o tom, Azure Monitor protokoly upozorňují na pomoc při detekci a diagnostice.
- U místních clusterů nabízí Azure Monitor protokoly bránu (proxy server HTTP, která se dá použít k odesílání dat do protokolů Azure Monitor. Přečtěte si další informace o tom, jak v počítačích připojit počítače bez přístupu k internetu Azure monitor protokoly pomocí Log Analytics brány .
- Seznámení s funkcemi prohledávání protokolů a dotazování , které nabízí jako součást protokolů Azure monitor
- Získejte podrobnější přehled o Azure Monitor protokolů a o tom, co nabízí, najdete v článku co jsou protokoly Azure monitor?