Livemetriken: Überwachen und Diagnostizieren mit einer Wartezeit von einer Sekunde
Überwachen Sie Ihre Livewebanwendung in der Produktion mithilfe von Livemetriken (QuickPulse) über Application Insights. Sie können Metriken und Leistungsindikatoren auswählen und danach filtern, um Erkenntnisse in Echtzeit zu erhalten, ohne dass Ihr Dienst dadurch beeinträchtigt wird. Sie können sich auch Überwachungsdaten von Beispielanforderungen, die fehlgeschlagen sind, sowie Ausnahmen ansehen. In Kombination mit Profiler und dem Momentaufnahmedebugger bieten Livemetriken ein leistungsfähiges und nicht invasives Diagnosetool für Ihre Livewebsite.
Hinweis
Livemetriken unterstützen nur TLS 1.2. Weitere Informationen finden Sie unter Problembehandlung.
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.
Livemetriken werden derzeit für ASP.NET-, ASP.NET Core-, Azure Functions-, Java- und Node.js-Apps unterstützt.
Hinweis
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, die über einen bestimmten Zeitraum hinweg keine Anforderungen erhalten, entladen, 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.
Erste Schritte
Wichtig
Um Application Insights zu aktivieren, stellen Sie sicher, dass es im Azure-Portal aktiviert ist und dass Ihre App eine aktuelle Version der Azure Monitor OpenTelemetry-Distribution oder das klassische NuGet-Paket für Application Insights verwendet. Ohne das NuGet-Paket werden zwar einige Telemetriedaten an Application Insights gesendet, aber diese Telemetriedaten werden nicht im Bereich mit den Livemetriken angezeigt.
- Befolgen Sie die sprachspezifischen Richtlinien zum Aktivieren von Livemetriken:
- 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.
Sichern Sie den Steuerkanal, wenn Sie möglicherweise vertrauliche Daten wie Kundennamen in Ihren Filtern 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 KPIs 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
Mit benutzerdefinierten Filtern für Livemetriken können Sie steuern, welche Telemetriedaten Ihrer Anwendung an den Bereich „Livemetriken“ im Azure-Portal gestreamt werden. Die Filterkriterien werden an die Apps gesendet, die mit dem Application Insights SDK instrumentiert sind. Der Filterwert kann ggf. potenziell vertrauliche Informationen wie etwa die Kunden-ID enthalten. Um diesen Wert zu schützen und die potenzielle Offenlegung für nicht autorisierte Anwendungen zu verhindern, sichern Sie den Kanal für Livemetriken mithilfe der Microsoft Entra-Authentifizierung.
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.
Es ist möglich, benutzerdefinierte Filter zu testen, ohne einen authentifizierten Kanal einzurichten. Wählen Sie eins der Filtersymbole aus, und autorisieren Sie die verbundenen Server. Bei Auswahl dieser Option müssen Sie die verbundenen Server jedes Mal autorisieren, wenn eine neue Sitzung gestartet wird oder wenn ein neuer Server online geschaltet wird.
Warnung
Wir raten dringend davon ab, ungesicherte Kanäle zu verwenden, und werden diese Option sechs Monate, nachdem Sie mit deren Verwendung begonnen haben, deaktivieren. Im Dialogfeld Verbundene Server autorisieren wird das Datum angezeigt, nach dem diese Option deaktiviert wird.
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
Von Livemetriken werden andere IP-Adressen verwendet als bei anderen Application Insights-Telemetriedaten. 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.
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.