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 pomocí Service Fabric. Uvedené scénáře se týkají všech 3 vrstev service fabric: Aplikace, Cluster a Infrastruktura. Každé řešení používá k dokončení každého scénáře protokoly Application Insights a Azure Monitor, monitorovací nástroje Azure. Kroky v jednotlivých řešeních poskytují uživatelům úvod k používání protokolů Application Insights a Azure Monitoru v kontextu Service Fabric.
Poznámka
Tento článek byl nedávno aktualizován tak, aby místo Log Analytics používal termín protokoly Azure Monitoru. Data protokolu jsou stále uložená v pracovním prostoru služby Log Analytics a stále je shromažďuje a analyzuje stejná služba Log Analytics. Aktualizujeme terminologii tak, aby lépe odrážela roli protokolů ve službě Azure Monitor. Podrobnosti najdete v tématu Změny terminologie služby Azure Monitor .
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 se Service Fabric
- Povolení Azure Diagnostics v clusteru
- Nastavení pracovního prostoru služby Log Analytics
- Agent Log Analytics pro sledování čítačů výkonu
Jak se v aplikaci zobrazí neošetřené výjimky?
Přejděte k prostředku Application Insights, se kterým je vaše aplikace nakonfigurovaná.
V levém horním rohu klikněte na Hledat . Potom klikněte na filtr na dalším panelu.
Zobrazí se spousta typů událostí (trasování, požadavky, vlastní události). Jako filtr zvolte Výjimka.
Kliknutím na výjimku v seznamu se můžete podívat na 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 používají v mých službách?
Ve stejném prostředku Application Insights můžete místo výjimek filtrovat požadavky a zobrazit všechny provedené požadavky.
Pokud používáte sadu Service Fabric Application Insights SDK, můžete zobrazit vizuální znázornění služeb propojených mezi sebou a počet úspěšných a neúspěšných požadavků. Na levé straně klikněte na Mapa aplikace.
Další informace o mapě aplikace najdete v dokumentaci k mapě aplikace.
Návody vytvořit upozornění při výpadku uzlu
Události uzlů sleduje váš cluster Service Fabric. Přejděte k prostředku řešení Service Fabric Analytics s názvem ServiceFabric(NameofResourceGroup).
Klikněte na graf v dolní části okna s názvem Souhrn.
Tady máte mnoho grafů a dlaždic zobrazující různé metriky. Klikněte na jeden z grafů a přejdete do prohledávání protokolu. Tady můžete dotazovat na události clusteru nebo čítače výkonu.
Zadejte následující dotaz. Tato ID událostí najdete v referenčních informacích o událostech uzlu.
ServiceFabricOperationalEvent | where EventID >= 25622 and EventID <= 25626
V horní části klikněte na Nové pravidlo upozornění a teď, kdykoli na základě tohoto dotazu dorazí událost, obdržíte upozornění ve zvoleném způsobu komunikace.
Jak můžu být upozorněn(a) 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 upgradu. Tato ID událostí najdete v referenčních informacích o událostech aplikací.
ServiceFabricOperationalEvent | where EventID == 29623 or EventID == 29624
V horní části klikněte na Nové pravidlo upozornění a teď, kdykoli na základě tohoto dotazu přijde událost, zobrazí se upozornění.
Návody zobrazit metriky kontejneru?
Ve stejném zobrazení se všemi grafy uvidíte některé dlaždice pro výkon kontejnerů. K naplnění těchto dlaždic potřebujete řešení agenta Log Analytics a monitorování kontejnerů .
Poznámka
Pokud chcete instrumentovat telemetrii z 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 musíte přidat konkrétní čítače výkonu, které chcete sledovat. Na portálu přejděte na stránku pracovního prostoru služby Log Analytics – na stránce řešení je v nabídce vlevo karta pracovního prostoru.
Jakmile budete na stránce pracovního prostoru, klikněte ve stejné levé nabídce na Upřesnit nastavení.
Kliknutím na Datové > čítače výkonu Systému Windows (čítače výkonu v Linuxu pro > počítače s Linuxem) zahájíte shromažďování konkrétních čítačů z uzlů prostřednictvím agenta Log Analytics. Tady jsou příklady formátu pro přidání čítačů.
.NET CLR Memory(<ProcessNameHere>)\\# Total committed Bytes
Processor(_Total)\\% Processor Time
V rychlém startu jsou použité názvy procesů VotingData a VotingWeb, 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í upozornění na základě využití prostředků. Můžete například chtít nastavit upozornění, pokud celkové využití procesoru překročí 90 % nebo nižší než 5 %. Název čítače, který byste použili, je % času procesoru. Můžete to udělat vytvořením pravidla upozornění pro následující dotaz:
Perf | where CounterName == "% Processor Time" and InstanceName == "_Total" | where CounterValue >= 90 or CounterValue <= 5.
Návody sledovat výkon reliable services a actors?
Pokud chcete sledovat výkon Reliable Services nebo Actors ve vašich aplikacích, měli byste také shromažďovat čítače Service Fabric Actor, Actor Method, Service a Service Method. Tady jsou příklady spolehlivých čítačů výkonu služby a objektu actor ke shromažďování
Poznámka
Agent Log Analytics v současné době nemůže shromažďovat čítače výkonu Service Fabric, ale můžou je shromažďovat jiná diagnostická řešení.
Service Fabric Service(*)\\Average milliseconds per request
Service Fabric Service Method(*)\\Invocations/Sec
Service Fabric Actor(*)\\Average milliseconds per request
Service Fabric Actor Method(*)\\Invocations/Sec
Úplný seznam čítačů výkonu ve službě Reliable Services a actors najdete na těchto odkazech.
Další kroky
- Vyhledání běžných chyb aktivace balíčku kódu
- Nastavení upozornění v AI , která mají být upozorňována na změny výkonu nebo využití
- Inteligentní detekce v Application Insights provádí proaktivní analýzu telemetrie odesílané do AI, aby vás upozornila na potenciální problémy s výkonem.
- Přečtěte si další informace o upozorňování protokolů Azure Monitoru, které vám pomůžou s detekcí a diagnostikou.
- Pro místní clustery nabízí protokoly Azure Monitoru bránu (proxy předávání HTTP), kterou je možné použít k odesílání dat do protokolů služby Azure Monitor. Další informace najdete v tématu Připojení počítačů bez přístupu k internetu k protokolům Azure Monitoru pomocí brány Log Analytics.
- Seznámení s funkcemi prohledávání protokolů a dotazování nabízenými jako součást protokolů služby Azure Monitor
- Podrobnější přehled protokolů Služby Azure Monitor a jeho nabídek najdete v článku Co jsou protokoly Azure Monitoru?