Livemetriken: Überwachen und Diagnostizieren mit einer Wartezeit von einer Sekunde
Verwenden Sie Livemetriken aus Application Insights, um Webanwendungen zu überwachen. Wählen Sie Metriken und Leistungsindikatoren aus, und filtern Sie sie, um Stapelüberwachungen aus fehlerhaften Beispielanforderungen und -ausnahmen in Echtzeit zu überwachen und zu überprüfen. Die Livemetriken-Erfahrung bildet in Kombination mit .NET Profiler und Momentaufnahmedebugger ein leistungsfähiges Diagnosetool.
Livemetriken bieten folgende Möglichkeiten:
- Sie können eine Korrektur während ihres Releases überprüfen, indem Sie die Leistung und die Anzahl der Fehler beobachten.
- Überwachen Sie die Auswirkungen von Testauslastungen, und diagnostizieren Sie Probleme im laufenden Betrieb.
- Konzentrieren Sie sich auf bestimmte Testsitzungen, oder filtern Sie bekannte Probleme heraus, indem Sie die zu überwachenden Metriken auswählen und filtern.
- Rufen Sie Ausnahmeablaufverfolgungen in Echtzeit ab.
- Experimentieren Sie mit Filtern, um die wichtigsten KPIs zu ermitteln.
- Überwachen Sie Windows-Leistungsindikatoren live.
- Identifizieren Sie mühelos einen Server mit Problemen, und filtern Sie nach allen KPIs/dem Livefeed nur für diesen Server.
Erste Schritte
- Aktivieren Sie Livemetriken anhand der folgenden sprachspezifischen Leitfäden:
- ASP.NET: Nicht unterstützt.
- ASP.NET Core: Standardmäßig aktiviert.
- Java: Standardmäßig aktiviert.
- Node.js: Standardmäßig aktiviert.
- Python: Übergeben Sie
enable_live_metrics=True
anconfigure_azure_monitor
. Weitere Informationen finden Sie in der Dokumentation zur Azure Monitor OpenTelemetry-Distribution.
Öffnen Sie im Azure-Portal die Application Insights-Ressource für Ihre Anwendung. Wählen Sie Livemetriken aus. Diese Option befindet sich im linken Menü unter Untersuchen.
Schützen Sie den Steuerkanal, indem Sie die Microsoft Entra-Authentifizierung aktivieren, wenn Sie benutzerdefinierte Filter verwenden.
Hinweis
Am 31. März 2025 wird der Support für die auf Instrumentierungsschlüsseln basierende Erfassung eingestellt. Die Erfassung von Instrumentierungsschlüsseln funktioniert zwar weiterhin, wir stellen jedoch keine Updates und keinen Support mehr für das Feature bereit. Wechseln Sie zu Verbindungszeichenfolgen, damit Sie neue Funktionen nutzen können.
Inwiefern unterscheiden sich Livemetriken von Metrik-Explorer und Log Analytics?
Capabilities | Live Stream | Metrik-Explorer und Log Analytics |
---|---|---|
Latency | Daten werden innerhalb einer Sekunde angezeigt. | Aggregation über mehrere Minuten. |
Keine Beibehaltung | Daten bleiben erhalten, solange sie im Diagramm angezeigt werden, und werden dann verworfen. | Daten werden 90 Tage lang aufbewahrt. |
On-Demand-Streaming | Daten werden nur gestreamt, während der Bereich „Livemetriken“ geöffnet ist. | Daten werden gesendet, sobald das SDK installiert und aktiviert wird. |
Kostenlos | Für Live Stream-Daten fallen keine Gebühren an. | Gebührenpflichtig. |
Stichproben | Alle ausgewählten Metriken und Indikatoren werden übertragen. Für Fehler und Stapelüberwachungen werden Stichproben erstellt. | Von Ereignissen können Stichproben genommen werden. |
Steuerkanal | Filtersteuersignale werden an das SDK gesendet. Es empfiehlt sich, diesen Kanal zu sichern. | Unidirektionale Kommunikation mit dem Portal. |
Auswählen und Filtern der Metriken
Diese Funktionen sind mit ASP.NET, ASP.NET Core und Azure Functions (v2) verfügbar.
Sie können benutzerdefinierte Leistungsindikatoren live überwachen, indem Sie im Portal beliebige Filter auf Application Insights-Telemetrie anwenden. Wählen Sie das Filtersteuerelement aus, das angezeigt wird, wenn Sie den Mauszeiger über eines der Diagramme bewegen. Im folgenden Diagramm wird ein benutzerdefinierter KPI für die Anforderungsanzahl mit Filtern für die Attribute URL und Dauer gezeigt. Überprüfen Sie Ihre Filter in der Streamvorschau, die zu jedem Zeitpunkt einen Livefeed von Telemetriedaten anzeigt, die den von Ihnen angegeben Kriterien entsprechen.
Sie können einen von der Anzahl (Count) abweichenden Wert überwachen. Die Optionen hängen vom Typ des Streams ab. Bei diesem kann es sich um eine beliebige Application Insights-Telemetrie handeln: Anforderungen, Abhängigkeiten, Ausnahmen, Ablaufverfolgungen, Ereignisse oder Metriken. Sie können außerdem eine eigene benutzerdefinierte Messung verwenden.
Zusammen mit Application Insights-Telemetriedaten können Sie auch alle Windows-Leistungsindikatoren überwachen. Wählen Sie dies aus den Streamoptionen aus, und geben Sie den Namen des Leistungsindikators an.
Livemetriken werden an zwei Punkten aggregiert: lokal auf jedem Server und übergreifend auf allen Servern. Sie können die Standardeinstellung an beiden Stellen durch Auswahl anderer Optionen in der jeweils entsprechenden Dropdownliste ändern.
Telemetriebeispiel: Benutzerdefinierte Livediagnoseereignisse
Der Livefeed von Ereignissen zeigt standardmäßig Beispiele für fehlgeschlagene Anforderungen und Abhängigkeitsaufrufe, Ausnahmen, Ereignisse und Ablaufverfolgungen an. Wählen Sie jederzeit auf Filtersymbol aus, um die angewendeten Kriterien anzuzeigen.
Wie bei Metriken können Sie beliebige Kriterien für alle Application Insights-Telemetrietypen angeben. In diesem Beispiel wählen wir bestimmte Anforderungsfehler und Ereignisse aus.
Hinweis
Aktuell muss für auf Ausnahmemeldungen basierende Kriterien die Meldung der äußersten Ausnahme verwendet werden. Verwenden Sie im vorangehenden Beispiel zum Herausfiltern der unbedenklichen Ausnahme mit der Meldung der inneren Ausnahme (folgt auf das Trennzeichen „<--“) „Der Client wurde getrennt.“ ein Kriterium „Meldung enthält nicht ‚Fehler beim Lesen des Anforderungsinhalts‘“.
Um die Details eines Elements im Livefeed anzuzeigen, wählen Sie es aus. Sie können den Feed anhalten, indem Sie Anhalten auswählen, oder indem Sie nach unten scrollen und ein Element auswählen. Der Livefeed wird fortgesetzt, nachdem Sie wieder ganz nach oben gescrollt haben, oder wenn Sie den Zähler der Elemente auswählen, die während des Anhaltens erfasst wurden.
Filtern nach Serverinstanz
Wenn Sie eine bestimmte Serverrolleninstanz überwachen möchten, können Sie nach Server filtern. Wählen Sie zum Filtern unter Server den gewünschten Servernamen aus.
Sichern des Steuerkanals
Schützen Sie den Steuerungskanal für Livemetriken, indem Sie die Microsoft Entra-Authentifizierung aktivieren, um die unbefugte Offenlegung potenziell vertraulicher Informationen zu verhindern, die in benutzerdefinierte Filter eingegeben werden.
Hinweis
Am 30. September 2025 werden API-Schlüssel eingestellt, die zum Streamen von Telemetriedaten von Livemetriken in Application Insights verwendet werden. Nach diesem Datum können Anwendungen, die API-Schlüssel verwenden, keine Livemetrikdaten mehr an Ihre Application Insights-Ressource senden. Die authentifizierte Telemetrieerfassung für das Streamen von Livemetriken an Application Insights muss mit der Microsoft Entra-Authentifizierung für Application Insights erfolgen.
Tabelle unterstützter Features
Sprache | Grundlegende Metriken | Leistungsmetriken | Benutzerdefinierte Filterung | Beispieltelemetrie | CPU-Aufteilung nach Prozessen |
---|---|---|---|---|---|
.NET Framework | Unterstützt (LTS) | Unterstützt (LTS) | Unterstützt (LTS) | Unterstützt (LTS) | Unterstützt (LTS) |
.NET Core (target=.NET Framework) | Unterstützt (LTS) | Unterstützt (LTS) | Unterstützt (LTS) | Unterstützt (LTS) | Unterstützt (LTS) |
.NET Core (target=.NET Core) | Unterstützt (LTS) | Unterstützt* | Unterstützt (LTS) | Unterstützt (LTS) | Nicht unterstützt |
Azure Functions v2 | Unterstützt | Unterstützt | Unterstützt | Unterstützt | Nicht unterstützt |
Java | Unterstützt (V2.0.0+) | Unterstützt (V2.0.0+) | Nicht unterstützt | Unterstützt (V3.2.0 und höher) | Nicht unterstützt |
Node.js | Unterstützt (V1.3.0+) | Unterstützt (V1.3.0+) | Nicht unterstützt | Unterstützt (V1.3.0+) | Nicht unterstützt |
Python | Unterstützt (Distributionsversion 1.6.0 oder höher) | Nicht unterstützt | Nicht unterstützt | Nicht unterstützt | Nicht unterstützt |
Grundlegende Metriken umfassen Anforderung, Abhängigkeit und Ausnahmerate. Leistungsmetriken (Leistungsindikatoren) umfassen Arbeitsspeicher und CPU. Beispieltelemetriedaten zeigen einen Datenstrom ausführlicher Informationen zu nicht erfolgreichen Anforderungen und Abhängigkeiten, Ausnahmen, Ereignissen und Ablaufverfolgungen.
PerfCounters-Unterstützung (Leistungsindikatoren) unterscheidet sich geringfügig zwischen .NET Core-Versionen, die nicht auf das .NET Framework abzielen:
- PerfCounters-Metriken werden unterstützt, wenn sie in Azure App Service für Windows (ASP.NET Core SDK Version 2.4.1 oder höher) ausgeführt werden.
- Bei Apps für .NET Core LTS oder höher werden Leistungsindikatoren unterstützt, wenn die App auf einem beliebigen Windows-Computer ausgeführt wird.
- PerfCounters werden unterstützt, wenn die App auf einem beliebigen Computer (z. B. Linux, Windows, App Service für Linux oder Container) in der aktuellen Version ausgeführt wird, aber nur für Apps, die auf .NET Core LTS oder abzielen.
Problembehandlung
Im folgenden Abschnitt werden allgemeine Problembehandlungsszenarien für die Livemetriken behandelt.
Fehlende Livemetrikdaten
Die Livemetrikerfahrung verwendet andere IP-Adressen als andere Application Insights-Telemetrie. Stellen Sie sicher, dass diese IP-Adressen in Ihrer Firewall geöffnet sind. Vergewissern Sie sich außerdem, dass die ausgehenden Ports für Livemetriken in der Firewall Ihrer Server geöffnet sind.
Wie in der Ankündigung zur Azure TLS 1.2-Migration beschrieben, unterstützen Livemetriken jetzt nur TLS 1.2. Wenn Sie eine ältere Version von TLS verwenden, werden im Bereich „Livemetriken“ keine Daten angezeigt. Informationen zur Unterstützung der neueren TLS-Version durch Anwendungen, die auf .NET Framework 4.5.1 basieren, finden Sie unter Aktivieren von TLS 1.2 (Transport Layer Security) auf Clients: Configuration Manager.
Die Überprüfung von Application Insights ist aktiviert, und Ihre App verwendet eine aktuelle Version der Azure Monitor-OpenTelemetry-Distribution. Wenn Sie die klassische .NET-API verwenden, installieren Sie das NuGet-Paket für Application Insights.
Autorisierte verbundene Server: Diese Option ist nicht verfügbar.
Es wird dringend davon abgeraten, ungeschützte Kanäle zu verwenden.
Wenn Sie benutzerdefinierte Filter ausprobieren möchten, ohne einen authentifizierten Kanal einzurichten, müssen Sie in jeder neuen Sitzung verbundene Server oder neu online geschaltete Server autorisieren. Darüber hinaus werden ungeschützte Kanäle nach sechs Monaten automatisch deaktiviert.
In einem Dialogfeld wird eine Warnung angezeigt: „Mit benutzerdefinierten Filtern können Sie Metriken und Ereignisse streamen, die an Ihre App zurückgesendet werden. Vermeiden Sie die Eingabe potenziell sensibler Informationen (z. B. der Kunden-ID), bis Sie einen authentifizierten Kanal eingerichtet haben. Wenn Sie allerdings alle unten aufgeführten Server kennen und als vertrauenswürdig einstufen, können Sie die benutzerdefinierten Filter ohne Authentifizierung ausprobieren. Diese Option ist nach ##/##/### nicht mehr verfügbar. Ohne Authentifizierung verbundene Server:“
Weitere Informationen zum Beheben dieser Warnung finden Sie unter Schützen des Steuerungskanals.
Geringe Anzahl überwachter Serverinstanzen
Die Anzahl überwachter Serverinstanzen, die von Livemetriken angezeigt werden, kann niedriger sein als die tatsächliche Anzahl von Instanzen, die für die Anwendung zugewiesen wurden. Diese Diskrepanz liegt daran, dass viele moderne Webserver Anwendungen entladen, die über einen bestimmten Zeitraum hinweg keine Anforderungen erhalten, um Ressourcen zu sparen. Da von Livemetriken nur Server gezählt werden, auf denen die Anwendung derzeit ausgeführt wird, werden Server, die den Prozess bereits entladen haben, nicht in die Gesamtanzahl einbezogen.
Fehlende Konfiguration für .NET
Überprüfen Sie, ob Sie die neueste Version des NuGet-Pakets Microsoft.ApplicationInsights.PerfCounterCollector verwenden.
Bearbeiten Sie die Datei
ApplicationInsights.config
:- Überprüfen Sie, ob die Verbindungszeichenfolge auf die von Ihnen verwendete Application Insights-Ressource verweist.
- Suchen Sie die Konfigurationsoption
QuickPulseTelemetryModule
. Ist diese nicht vorhanden, fügen Sie sie hinzu. - Suchen Sie die Konfigurationsoption
QuickPulseTelemetryProcessor
. Ist diese nicht vorhanden, fügen Sie sie hinzu.
<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>
Starten Sie die Anwendung neu.
Statusmeldung „Der Zugriff auf die Daten ist vorübergehend nicht möglich“
Wenn Sie zu Livemetriken navigieren, wird möglicherweise ein Banner mit folgender Statusmeldung angezeigt: „Der Datenzugriff ist vorübergehend nicht möglich. Die Updates zu unserem Status werden hier https://aka.ms/aistatus veröffentlicht.
Folgen Sie dem Link zur Seite Azure Status und überprüfen Sie, ob ein aktiver Ausfall vorliegt, der Application Insights betrifft. Wenn kein Ausfall vorliegt, stellen Sie sicher, dass der Zugriff auf Livemetriken nicht durch Firewalls und Browsererweiterungen blockiert wird. Beispielsweise blockieren einige beliebte Ad-Blocker-Erweiterungen Verbindungen mit *.monitor.azure.com
. Um den vollen Funktionsumfang von Livemetriken nutzen zu können, deaktivieren Sie entweder die Erweiterung für den Anzeigenblocker, oder fügen Sie eine Ausschlussregel für die Domäne *.livediagnostics.monitor.azure.com
zu Ihrem Anzeigenblocker, Ihrer Firewall usw. hinzu.
Unerwartet hohe Anzahl von Anforderungen an livediagnostics.monitor.azure.com
Application Insights-SDKs verwenden eine REST-API, um mit QuickPulse-Endpunkten zu kommunizieren, die Livemetriken für Ihre Webanwendung bereitstellen. Standardmäßig rufen die SDKs alle fünf Sekunden die Endpunkte ab, um zu überprüfen, ob Sie den Bereich „Livemetriken“ im Azure-Portal anzeigen.
Wenn Sie die Livemetriken öffnen, wechseln die SDKs in einen Modus mit höherer Häufigkeit und senden jede Sekunde neue Metriken an QuickPulse. Dadurch können Sie Ihre Liveanwendung mit einer Latenz von 1 Sekunde überwachen und diagnostizieren, aber auch mehr Netzwerkdatenverkehr generieren. Um den normalen Datenverkehr wiederherzustellen, verlassen Sie den Bereich „Livemetriken“.
Hinweis
Die REST-API-Aufrufe, die von den SDKs an QuickPulse-Endpunkte ausgeführt werden, werden von Application Insights nicht nachverfolgt und wirken sich nicht auf Ihre Abhängigkeitsaufrufe oder andere Metriken aus. Möglicherweise werden sie jedoch in anderen Netzwerküberwachungstools angezeigt.