Dela via


Händelseanalys och visualisering med Application Insights

Application Insights är en del av Azure Monitor och är en utökningsbar plattform för programövervakning och diagnostik. Den innehåller ett kraftfullt analys- och frågeverktyg, anpassningsbara instrumentpaneler och visualiseringar samt ytterligare alternativ, inklusive automatiserad avisering. Application Insights integrering med Service Fabric omfattar verktygsupplevelser för Visual Studio och Azure Portal, samt Service Fabric-specifika mått, vilket ger en omfattande välkomstloggning. Även om många loggar skapas automatiskt och samlas in åt dig med Application Insights rekommenderar vi att du lägger till ytterligare anpassad loggning i dina program för att skapa en mer omfattande diagnostikupplevelse.

Den här artikeln hjälper dig att lösa följande vanliga frågor:

  • Hur gör jag för att vet vad som händer i mitt program och tjänster och samlar in telemetri?
  • Hur gör jag för att felsöka mitt program, särskilt tjänster som kommunicerar med varandra?
  • Hur gör jag för att få mått om hur mina tjänster fungerar, till exempel sidinläsningstid, HTTP-begäranden?

Syftet med den här artikeln är att visa hur du får insikter och felsöker inifrån Application Insights. Om du vill lära dig hur du konfigurerar Application Insights med Service Fabric kan du läsa den här självstudien.

Övervakning i Application Insights

Application Insights har en omfattande välkomstupplevelse när du använder Service Fabric. På översiktssidan innehåller Application Insights viktig information om din tjänst, till exempel svarstid och antal begäranden som bearbetas. Genom att klicka på knappen Sök längst upp kan du se en lista över de senaste begärandena i ditt program. Dessutom skulle du kunna se misslyckade begäranden här och diagnostisera vilka fel som kan ha inträffat.

Översikt över Application Insights

På den högra panelen i föregående bild finns det två huvudsakliga typer av poster i listan: begäranden och händelser. Begäranden är anrop till appens API via HTTP-begäranden i det här fallet, och händelser är anpassade händelser som fungerar som telemetri som du kan lägga till var som helst i koden. Du kan utforska instrumenteringen av dina program ytterligare i Application Insights API för anpassade händelser och mått. Om du klickar på en begäran visas ytterligare information enligt följande bild, inklusive data som är specifika för Service Fabric, som samlas in i NuGet-paketet för Application Insights Service Fabric. Den här informationen är användbar för att felsöka och veta vad programmets tillstånd är, och all den här informationen är sökbar i Application Insights

Skärmbild som visar ytterligare information, inklusive data som är specifika för Service Fabric, som samlas in i Application Insights Service Fabric NuGet-paketet.

Application Insights har en avsedd vy för att fråga mot alla data som kommer in. Välj "Metrics Explorer" överst på sidan Översikt för att gå till Application Insights-portalen. Här kan du köra frågor mot anpassade händelser som nämnts tidigare, begäranden, undantag, prestandaräknare och andra mått med hjälp av Kusto-frågespråket. I följande exempel visas alla begäranden under den senaste 1 timmen.

Information om Application Insights-begäran

Om du vill utforska funktionerna i Application Insights-portalen går du vidare till dokumentationen för Application Insights-portalen.

Konfigurera Application Insights med EventFlow

Om du använder EventFlow för att aggregera händelser ska du importera Microsoft.Diagnostics.EventFlow.Outputs.ApplicationInsightsNuGet-paketet. Följande kod krävs i utdataavsnittet i eventFlowConfig.json:

"outputs": [
    {
        "type": "ApplicationInsights",
        "instrumentationKey": "***ADD INSTRUMENTATION KEY HERE***"
    }
]

Se till att göra de nödvändiga ändringarna i dina filter, samt inkludera andra indata (tillsammans med deras respektive NuGet-paket).

Application Insights SDK

Vi rekommenderar att du använder EventFlow och WAD som aggregeringslösningar, eftersom de möjliggör en mer modulär metod för diagnostik och övervakning. Om du vill ändra dina utdata från EventFlow krävs ingen ändring av din faktiska instrumentation, bara en enkel ändring av konfigurationsfilen. Om du bestämmer dig för att investera i att använda Application Insights och sannolikt inte kommer att ändra till en annan plattform bör du titta på hur du använder Application Insights nya SDK för att aggregera händelser och skicka dem till Application Insights. Det innebär att du inte längre behöver konfigurera EventFlow för att skicka dina data till Application Insights, utan i stället installerar ApplicationInsights Service Fabric NuGet-paket. Information om paketet finns här.

Application Insights-stöd för mikrotjänster och containrar visar några av de nya funktioner som bearbetas (för närvarande fortfarande i betaversion), vilket gör att du kan ha mer avancerade övervakningsalternativ med Application Insights. Dessa inkluderar beroendespårning (används för att skapa en AppMap för alla dina tjänster och program i ett kluster och kommunikationen mellan dem) och bättre korrelation av spårningar som kommer från dina tjänster (hjälper till att bättre identifiera ett problem i arbetsflödet för ett program eller en tjänst).

Om du utvecklar i .NET och förmodligen kommer att använda några av Service Fabrics programmeringsmodeller och är villig att använda Application Insights som plattform för att visualisera och analysera händelse- och loggdata rekommenderar vi att du går via Application Insights SDK-vägen som ditt arbetsflöde för övervakning och diagnostik. Läs dokumentationen om Application Insights och spårningsloggar för att komma igång med att använda Application Insights för att samla in och visa dina loggar.

När du har konfigurerat Application Insights som utdata för dina händelser och loggar bör informationen börja visas i Application Insights-resursen om några minuter. Gå till Application Insights-resursen, som tar dig till Application Insights-resursens instrumentpanel. Välj Sök i Aktivitetsfältet i Application Insights för att se de senaste spårningarna som den har tagit emot och för att kunna filtrera igenom dem.

Metrics Explorer är ett användbart verktyg för att skapa anpassade instrumentpaneler baserat på mått som dina program, tjänster och kluster kan rapportera. Se Utforska mått i Application Insights för att konfigurera några diagram åt dig själv baserat på de data som du samlar in.

Om du klickar på Analytics kommer du till Application Insights Analytics-portalen, där du kan köra frågor mot händelser och spårningar med större omfång och valfritt. Läs mer om detta på Analytics i Application Insights.

Nästa steg