Metodtips för övervakning och diagnostik för Azure Service Fabric
Övervakning och diagnostik är avgörande för att utveckla, testa och distribuera arbetsbelastningar i alla molnmiljöer. Du kan till exempel spåra hur dina program används, de åtgärder som vidtas av Service Fabric-plattformen, resursanvändningen med prestandaräknare och klustrets övergripande hälsa. Du kan använda den här informationen för att diagnostisera och korrigera problem och förhindra att de inträffar i framtiden.
Programövervakning
Programövervakning spårar hur funktioner och komponenter i ditt program används. Övervaka dina program för att se till att problem som påverkar användarna fångas upp. Programövervakning är ansvaret för dem som utvecklar programmet och dess tjänster eftersom det är unikt för programmets affärslogik. Vi rekommenderar att du konfigurerar programövervakning med Application Insights, Azures programövervakningsverktyg.
Klusterövervakning
Ett av Service Fabrics mål är att göra program motståndskraftiga mot maskinvarufel. Det här målet uppnås genom plattformens systemtjänsters förmåga att identifiera infrastrukturproblem och snabbt redundansväxla arbetsbelastningar till andra noder i klustret. Men vad händer om själva systemtjänsterna har problem? Eller om regler för placering av tjänster överträds vid försök att distribuera eller flytta en arbetsbelastning? Service Fabric tillhandahåller diagnostik för dessa och andra problem för att se till att du får information om hur Service Fabric-plattformen interagerar med dina program, tjänster, containrar och noder.
För Windows-kluster rekommenderar vi att du konfigurerar klusterövervakning med Diagnostikagent och Azure Monitor-loggar.
För Linux-kluster är Azure Monitor-loggar också det rekommenderade verktyget för azure-plattforms- och infrastrukturövervakning. Linux-plattformsdiagnostik kräver olika konfigurationer som anges i Service Fabric Linux-klusterhändelser i Syslog.
Infrastrukturövervakning
Azure Monitor-loggar rekommenderas för övervakning av händelser på klusternivå. När du har konfigurerat Log Analytics-agenten med din arbetsyta enligt beskrivningen i föregående länk kan du samla in prestandamått som CPU-användning, .NET-prestandaräknare som processoranvändning på processnivå, Service Fabric-prestandaräknare som antal undantag från en tillförlitlig tjänst och containermått som CPU-användning. Du måste skriva containerloggar till stdout eller stderr så att de blir tillgängliga i Azure Monitor-loggar.
Vakthundar
I allmänhet är en vakthund en separat tjänst som bevakar hälsa och belastning för tjänster, pingar slutpunkter och rapporterar oväntade hälsohändelser i klustret. Detta kan hjälpa till att förhindra fel som kanske inte identifieras enbart baserat på prestanda för en enda tjänst. Vakthundar är också en bra plats för att vara värd för kod som utför åtgärdsåtgärder som inte kräver användarinteraktion, till exempel att rensa loggfiler i lagring vid vissa tidsintervall. Om du vill ha en fullständigt implementerad SF-övervakningstjänst med öppen källkod som innehåller en lätthanterad utökningsmodell för vakthundar och som körs i både Windows- och Linux-kluster kan du läsa fabricObserver-projektet . FabricObserver är produktionsklar programvara. Vi rekommenderar att du distribuerar FabricObserver till dina test- och produktionskluster och utökar det för att uppfylla dina behov, antingen via dess plugin-modell eller genom att förgrena den och skriva egna inbyggda observatörer. Den tidigare metoden (plugin-program) är den rekommenderade metoden.
Nästa steg
- Kom igång med instrumentering av dina program: Händelse och logggenerering på programnivå.
- Gå igenom stegen för att konfigurera Application Insights för ditt program med Övervaka och diagnostisera ett ASP.NET Core-program i Service Fabric.
- Läs mer om övervakning av plattformen och de händelser som Service Fabric tillhandahåller för dig: Händelse- och logggenerering på plattformsnivå.
- Konfigurera Integrering av Azure Monitor-loggar med Service Fabric: Konfigurera Azure Monitor-loggar för ett kluster
- Lär dig hur du konfigurerar Azure Monitor-loggar för övervakning av containrar: Övervakning och diagnostik för Windows-containrar i Azure Service Fabric.
- Se exempel på diagnostikproblem och lösningar med Service Fabric: diagnostisera vanliga scenarier
- Lär dig mer om allmänna övervakningsrekommendationer för Azure-resurser: Metodtips – övervakning och diagnostik.