Livemått: Övervaka och diagnostisera med svarstid på 1 sekund

Övervaka din live-webbapp i produktion med hjälp av Live Metrics (även kallat QuickPulse) från Application Insights. Du kan välja och filtrera mått och prestandaräknare att titta på i realtid, utan störningar i tjänsten. Du kan också inspektera stackspårningar från exempel på misslyckade begäranden och undantag. Tillsammans med Profiler och Snapshot Debugger tillhandahåller Live Metrics ett kraftfullt och icke-invasivt diagnostikverktyg för din livewebbplats.

Kommentar

Live Metrics stöder endast TLS 1.2. Mer information finns i Felsökning.

Med livemått kan du:

  • Verifiera en korrigering när den släpps genom att titta på prestanda- och felantal.
  • Titta på effekten av testbelastningar och diagnostisera problem live.
  • Fokusera på vissa testsessioner eller filtrera bort kända problem genom att välja och filtrera de mått som du vill titta på.
  • Hämta undantagsspårningar när de inträffar.
  • Experimentera med filter för att hitta de mest relevanta KPI:erna.
  • Övervaka alla Windows-prestandaräknare live.
  • Identifiera enkelt en server som har problem och filtrera all KPI/live-feed till just den servern.

Screenshot that shows the Live Metrics tab.

Live-mått stöds för närvarande för ASP.NET, ASP.NET Core, Azure Functions, Java och Node.js appar.

Kommentar

Antalet övervakade serverinstanser som visas med livemått kan vara lägre än det faktiska antalet instanser som allokerats för programmet. Det här matchningsfelet beror på att många moderna webbservrar tar bort program som inte tar emot begäranden under en tidsperiod för att spara resurser. Eftersom Live Metrics bara räknar servrar som för närvarande kör programmet inkluderas inte servrar som redan har tagit bort processen i den summan.

Kom igång

Viktigt!

Om du vill aktivera Application Insights kontrollerar du att det är aktiverat i Azure-portalen och att din app använder en ny version av Application Insights NuGet-paketet . Utan NuGet-paketet skickas viss telemetri till Application Insights, men telemetrin visas inte i Live Metrics.

  1. Följ språkspecifika riktlinjer för att aktivera livemått:

  2. Öppna Application Insights-resursen för din app i Azure-portalen. Öppna sedan Live Stream.

  3. Skydda kontrollkanalen om du kan använda känsliga data som kundnamn i dina filter.

Kommentar

Stödet för inmatning av instrumentationsnycklar upphör den 31 mars 2025. Inmatningen av instrumenteringsnyckeln fortsätter att fungera, men vi kommer inte längre att tillhandahålla uppdateringar eller stöd för funktionen. Övergå till anslutningssträng för att dra nytta av nya funktioner.

Aktivera livemått med hjälp av kod för alla .NET-program

Kommentar

Live-mått är aktiverat som standard när du registrerar det med hjälp av de rekommenderade anvisningarna för .NET-program.

Så här konfigurerar du livemått manuellt:

  1. Installera NuGet-paketet Microsoft.ApplicationInsights.PerfCounterCollector.
  2. Följande exempelkonsolappkod visar hur du konfigurerar livemått:
using Microsoft.ApplicationInsights;
using Microsoft.ApplicationInsights.Extensibility;
using Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse;

// Create a TelemetryConfiguration instance.
TelemetryConfiguration config = TelemetryConfiguration.CreateDefault();
config.InstrumentationKey = "INSTRUMENTATION-KEY-HERE";
QuickPulseTelemetryProcessor quickPulseProcessor = null;
config.DefaultTelemetrySink.TelemetryProcessorChainBuilder
    .Use((next) =>
    {
        quickPulseProcessor = new QuickPulseTelemetryProcessor(next);
        return quickPulseProcessor;
    })
    .Build();

var quickPulseModule = new QuickPulseTelemetryModule();

// Secure the control channel.
// This is optional, but recommended.
quickPulseModule.AuthenticationApiKey = "YOUR-API-KEY-HERE";
quickPulseModule.Initialize(config);
quickPulseModule.RegisterTelemetryProcessor(quickPulseProcessor);

// Create a TelemetryClient instance. It is important
// to use the same TelemetryConfiguration here as the one
// used to set up Live Metrics.
TelemetryClient client = new TelemetryClient(config);

// This sample runs indefinitely. Replace with actual application logic.
while (true)
{
    // Send dependency and request telemetry.
    // These will be shown in Live Metrics.
    // CPU/Memory Performance counter is also shown
    // automatically without any additional steps.
    client.TrackDependency("My dependency", "target", "http://sample",
        DateTimeOffset.Now, TimeSpan.FromMilliseconds(300), true);
    client.TrackRequest("My Request", DateTimeOffset.Now,
        TimeSpan.FromMilliseconds(230), "200", true);
    Task.Delay(1000).Wait();
}

Föregående exempel är för en konsolapp, men samma kod kan användas i alla .NET-program. Om andra telemetrimoduler är aktiverade för automatisk insamling av telemetri är det viktigt att se till att samma konfiguration som används för att initiera modulerna används för modulen Live Metrics.

Hur skiljer sig Live Metrics från Metrics Explorer och Log Analytics?

Funktioner Direktsänd ström Metrics Explorer och Log Analytics
Svarstid Data som visas inom en sekund. Aggregerad över minuter.
Ingen kvarhållning Data sparas medan de finns i diagrammet och tas sedan bort. Data som sparats i 90 dagar.
På begäran Data strömmas bara när fönstret Live Metrics är öppet. Data skickas när SDK:et har installerats och aktiverats.
Kostnadsfritt Det kostar ingenting för Live Stream-data. Beroende på prissättning.
Sampling Alla valda mått och räknare överförs. Fel och stackspårningar samplas. Händelser kan samplas.
Kontrollkanal Filterkontrollsignaler skickas till SDK:et. Vi rekommenderar att du skyddar den här kanalen. Kommunikation är ett sätt, till portalen.

Välj och filtrera dina mått

De här funktionerna är tillgängliga med ASP.NET, ASP.NET Core och Azure Functions (v2).

Du kan övervaka anpassad KPI live genom att använda godtyckliga filter på valfri Application Insights-telemetri från portalen. Välj den filterkontroll som visas när du muspekaren över något av diagrammen. I följande diagram ritas ett anpassat KPI för antal förfrågningar med filter för URL- och varaktighetsattribut . Verifiera dina filter med avsnittet stream preview som visar en live-feed med telemetri som matchar de kriterier som du har angett när som helst.

Screenshot that shows the Filter request rate.

Du kan övervaka ett annat värde än Antal. Alternativen beror på vilken typ av ström som kan vara valfri Application Insights-telemetri som begäranden, beroenden, undantag, spårningar, händelser eller mått. Det kan också vara din egen anpassade mätning.

Screenshot that shows the Query Builder on Request Rate with a custom metric.

Tillsammans med Application Insights-telemetri kan du även övervaka alla Windows-prestandaräknare. Välj det från strömalternativen och ange namnet på prestandaräknaren.

Livemått aggregeras vid två punkter: lokalt på varje server och sedan över alla servrar. Du kan ändra standardvärdet på någon av dem genom att välja andra alternativ i respektive listruta.

Exempeltelemetri: Anpassade livediagnostikhändelser

Som standard visar live-flödet av händelser exempel på misslyckade begäranden och beroendeanrop, undantag, händelser och spårningar. Välj filterikonen för att se de tillämpade kriterierna när som helst.

Screenshot that shows the Filter button.

Precis som med mått kan du ange godtyckliga kriterier för någon av Application Insights-telemetrityperna. I det här exemplet väljer vi specifika begärandefel och händelser.

Screenshot that shows the Query Builder.

Kommentar

För närvarande använder du det yttersta undantagsmeddelandet för undantagsmeddelandet. I föregående exempel, för att filtrera bort det godartade undantaget med ett inre undantagsmeddelande (följer "<--"-avgränsaren) "Klienten frånkopplad", använder du ett meddelande som inte innehåller villkoret "Fel vid läsning av begärandeinnehåll".

Om du vill se information om ett objekt i livefeeden väljer du det. Du kan pausa feeden antingen genom att välja Pausa eller genom att rulla nedåt och välja ett objekt. Livefeed återupptas när du har rullat tillbaka till toppen eller när du väljer räknaren för objekt som samlats in när den pausades.

Screenshot that shows the Sample telemetry window with an exception selected and the exception details displayed at the bottom of the window.

Filtrera efter serverinstans

Om du vill övervaka en viss serverrollinstans kan du filtrera efter server. Om du vill filtrera väljer du servernamnet under Servrar.

Screenshot that shows the Sampled live failures.

Skydda kontrollkanalen

Med anpassade filter för livemått kan du styra vilket av programmets telemetri som strömmas till livestatistikvyn i Azure-portalen. Filtervillkoren skickas till de appar som instrumenteras med Application Insights SDK. Filtervärdet kan potentiellt innehålla känslig information, till exempel kund-ID. För att skydda det här värdet och förhindra potentiellt avslöjande av obehöriga program har du två alternativ:

  • Rekommenderas: Skydda Live Metrics-kanalen med hjälp av Microsoft Entra-autentisering.
  • Äldre (rekommenderas inte längre): Konfigurera en autentiserad kanal genom att konfigurera en hemlig API-nyckel enligt beskrivningen i avsnittet "Äldre alternativ".

Kommentar

Den 30 september 2025 dras API-nycklar som används för att strömma telemetri för livemått till Application Insights tillbaka. Efter det datumet kommer program som använder API-nycklar inte att kunna skicka Live Metrics-data till din Application Insights-resurs. Autentiserad telemetriinmatning för direktuppspelning till Application Insights måste göras med Microsoft Entra-autentisering för Application Insights.

Du kan prova anpassade filter utan att behöva konfigurera en autentiserad kanal. Välj någon av filterikonerna och auktorisera de anslutna servrarna. Om du väljer det här alternativet måste du auktorisera de anslutna servrarna en gång varje ny session eller när en ny server är online.

Varning

Vi avråder starkt från att använda oskyddade kanaler och inaktiverar det här alternativet sex månader efter att du börjar använda det. Dialogrutan Auktorisera anslutna servrar visar det datum då det här alternativet inaktiveras.

Screenshot that shows the Authorize connected servers dialog.

Äldre alternativ: Skapa en API-nyckel

  1. Välj fliken API-åtkomst och välj sedan Skapa API-nyckel.

    Screenshot that shows selecting the API Access tab and the Create API key button.

  2. Markera kryssrutan Autentisera SDK-kontrollkanal och välj sedan Generera nyckel.

    Screenshot that shows the Create API key pane. Select Authenticate SDK control channel checkbox and then select Generate key.

Lägga till en API-nyckel i konfigurationen

Du kan lägga till en API-nyckel i konfigurationen för appar för ASP.NET, ASP.NET Core, WorkerService och Azure Functions.

Lägg till följande namnområde i filen Program.cs :

using Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse;

Lägg sedan till följande tjänstregistrering:

// Existing code which includes services.AddApplicationInsightsTelemetry() to enable Application Insights.
builder.Services.ConfigureTelemetryModule<QuickPulseTelemetryModule> ((module, o) => module.AuthenticationApiKey = "YOUR-API-KEY-HERE");

Mer information om hur du konfigurerar ASP.NET Core-program finns i Konfigurera telemetrimoduler i ASP.NET Core.

WorkerService

Följ de här anvisningarna för WorkerService-program .

Lägg till följande namnområde:

using Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.QuickPulse;

Lägg sedan till följande rad före anropet services.AddApplicationInsightsTelemetryWorkerService:

    services.ConfigureTelemetryModule<QuickPulseTelemetryModule> ((module, o) => module.AuthenticationApiKey = "YOUR-API-KEY-HERE");

Mer information om hur du konfigurerar WorkerService-program finns i Konfigurera telemetrimoduler i WorkerServices.

Azure Functions-appar

För Azure Functions-appar (v2) kan du skydda kanalen med en API-nyckel med hjälp av en miljövariabel.

Skapa en API-nyckel inifrån application insights-resursen och gå till Inställningar> Konfiguration för din Azure Functions-app. Välj Ny programinställning, ange ett namn på APPINSIGHTS_QUICKPULSEAUTHAPIKEYoch ange ett värde som motsvarar din API-nyckel.

Tabell över funktioner som stöds

Språk Grundläggande mått Prestandamått Anpassad filtrering Exempeltelemetri Processordelning efter process
.NET Framework Stöds (LTS) Stöds (LTS) Stöds (LTS) Stöds (LTS) Stöds (LTS)
.NET Core (target=.NET Framework) Stöds (LTS) Stöds (LTS) Stöds (LTS) Stöds (LTS) Stöds (LTS)
.NET Core (target=.NET Core) Stöds (LTS) Stöds* Stöds (LTS) Stöds (LTS) Stöds ej
Azure Functions v2 Stöds Stöds Stöds Stöds Stöds ej
Java Stöds (V2.0.0+) Stöds (V2.0.0+) Stöds ej Stöds (V3.2.0+) Stöds ej
Node.js Stöds (V1.3.0+) Stöds (V1.3.0+) Stöds ej Stöds (V1.3.0+) Stöds ej
Python Stöds ej Stöds ej Stöds ej Stöds ej Stöds ej

Grundläggande mått omfattar frekvens för begäran, beroende och undantag. Prestandamått (prestandaräknare) omfattar minne och CPU. Exempeltelemetri visar en ström med detaljerad information för misslyckade begäranden och beroenden, undantag, händelser och spårningar.

Stöd för PerfCounters varierar något mellan versioner av .NET Core som inte riktar sig mot .NET Framework:

  • Mått för PerfCounters stöds när de körs i Azure App Service för Windows (ASP.NET Core SDK version 2.4.1 eller senare).
  • PerfCounters stöds när appen körs på en Windows-dator för appar som riktar sig till .NET Core LTS eller senare.
  • PerfCounters stöds när appen körs var som helst (till exempel Linux, Windows, App Service för Linux eller containrar) i de senaste versionerna, men bara för appar som riktar sig till .NET Core LTS eller senare.

Felsökning

Live-mått använder andra IP-adresser än andra Application Insights-telemetri. Kontrollera att ip-adresserna är öppna i brandväggen. Kontrollera också att utgående portar för Live Metrics är öppna i brandväggen för dina servrar.

Enligt beskrivningen i migreringsmeddelandet för Azure TLS 1.2 stöder livemått nu endast TLS 1.2. Om du använder en äldre version av TLS visar inte Live Metrics några data. För program baserade på .NET Framework 4.5.1, se Aktivera TLS (Transport Layer Security) 1.2 på klienter – Configuration Manager för att stödja den nyare TLS-versionen.

Konfiguration saknas för .NET

  1. Kontrollera att du använder den senaste versionen av NuGet-paketet Microsoft.ApplicationInsights.PerfCounterCollector.

  2. ApplicationInsights.config Redigera filen:

    • Kontrollera att anslutningssträng pekar på den Application Insights-resurs som du använder.
    • Leta upp konfigurationsalternativet QuickPulseTelemetryModule . Om den inte finns där lägger du till den.
    • Leta upp konfigurationsalternativet QuickPulseTelemetryProcessor . Om den inte finns där lägger du till den.
    <TelemetryModules>
    <Add Type="Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.
    QuickPulse.QuickPulseTelemetryModule, Microsoft.AI.PerfCounterCollector"/>
    </TelemetryModules>
    
    <TelemetryProcessors>
    <Add Type="Microsoft.ApplicationInsights.Extensibility.PerfCounterCollector.
    QuickPulse.QuickPulseTelemetryProcessor, Microsoft.AI.PerfCounterCollector"/>
    </TelemetryProcessors>
    
  3. Starta om programmet.

Statusmeddelandet "Data är tillfälligt otillgängliga"

När du navigerar till Live Metrics kan du se en banderoll med statusmeddelandet: "Data är tillfälligt otillgängliga. Uppdateringarna om vår status publiceras här https://aka.ms/aistatus "

Följ länken till Azure-statussidan och kontrollera om det finns ett aktivt avbrott som påverkar Application Insights. Kontrollera att brandväggar och webbläsartillägg inte blockerar åtkomsten till livemått om ett avbrott inte inträffar. Vissa populära tillägg för ad-blocker blockerar till exempel anslutningar till *.monitor.azure.com. För att kunna använda de fullständiga funktionerna i Live Metrics inaktiverar du antingen tillägget ad-blocker eller lägger till en undantagsregel för domänen *.livediagnostics.monitor.azure.com till din annonsblockerare, brandvägg osv.

Oväntat stort antal begäranden till livediagnostics.monitor.azure.com

Application Insights SDK:er använder ett REST-API för att kommunicera med QuickPulse-slutpunkter, som tillhandahåller livemått för ditt webbprogram. Som standard avsöker SDK:erna slutpunkterna var femte sekund för att kontrollera om du visar fönstret Live Metrics i Azure-portalen.

Om du öppnar fönstret Live Metrics växlar SDK:erna till ett läge med högre frekvens och skickar nya mått till QuickPulse varje sekund. På så sätt kan du övervaka och diagnostisera ditt liveprogram med en sekunds svarstid, men även generera mer nätverkstrafik. Om du vill återställa det normala trafikflödet navigerar du bort från fönstret Live Metrics.

Kommentar

REST API-anropen från SDK:erna till QuickPulse-slutpunkter spåras inte av Application Insights och påverkar inte dina beroendeanrop eller andra mått. Du kan dock se dem i andra verktyg för nätverksövervakning.

Nästa steg