Application Insights
Instrumentieren Sie eine Webanwendung mit dem Application Insights SDK, erkunden Sie die Anwendungsübersicht und verwenden Sie Live Metrics Stream zur Echtzeitdiagnose von Problemen.
Application Insights ist eine kostenlose Cloud & IT Cert Prep-Lektion auf CoddyKit. Dies ist Lektion 3 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Cloud & IT Cert Prep-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Cloud & IT Cert Prep-Kurs umfasst insgesamt 4 Lektionen.
Was ist Application Insights?
Application Insights ist eine Funktion von Azure Monitor, die Application Performance Monitoring (APM) für laufende Webanwendungen bereitstellt. Sie erfasst Telemetriedaten zu Anforderungen, Abhängigkeiten, Ausnahmen, Seitenaufrufen und benutzerdefinierten Ereignissen. Im Gegensatz zu Plattformmetriken, die den Zustand der Infrastruktur beschreiben, zeigt Application Insights, was Ihr Anwendungscode tut und wie Endbenutzer die Anwendung erleben. Unterstützt werden .NET, Node.js, Java, Python und JavaScript im Browser.
Ihre Anwendung instrumentieren
Sie fügen einer Anwendung Application Insights hinzu, indem Sie das SDK installieren oder Auto-Instrumentierung (auch codeless attach genannt) verwenden. Für App Service wird durch die Aktivierung von Application Insights im Portal der Agent automatisch und ohne Codeänderungen installiert. Bei selbst verwalteten Anwendungen fügen Sie das SDK-Paket hinzu und geben die Verbindungszeichenfolge aus Ihrer Application Insights-Ressource an, die gegenüber dem älteren Instrumentierungsschlüssel bevorzugt wird.
# Enable Application Insights on an App Service app
az webapp config appsettings set \
--name myApp \
--resource-group myRG \
--settings APPLICATIONINSIGHTS_CONNECTION_STRING='InstrumentationKey=...' \
ApplicationInsightsAgent_EXTENSION_VERSION='~3'Die Application Map
Die Application Map ist eine visuelle Topologie der Komponenten Ihrer Anwendung und ihrer Abhängigkeiten. Jeder Knoten stellt eine Komponente dar (Ihre App, eine nachgelagerte API, eine Datenbank oder einen Azure-Dienst), und die Kanten zeigen mit durchschnittlicher Antwortzeit, Anforderungsrate und Fehlerrate versehene Aufrufbeziehungen. Sie können auf einen beliebigen Knoten oder eine beliebige Kante klicken, um einzelne Anforderungsabläufe genauer zu untersuchen und festzustellen, wo Latenzen oder Fehler entstehen.
Live Metrics Stream
Live Metrics Stream bietet eine Echtzeitansicht der Leistung Ihrer Anwendung im Subsekundenbereich ohne Verzögerung. Sie können eingehende Anforderungsraten, Antwortzeiten, Fehlerraten und die CPU-Auslastung in Echtzeit beobachten – besonders wichtig während einer laufenden Bereitstellung oder der Untersuchung eines Vorfalls. Live Metrics verwendet eine sichere ausgehende Verbindung von Ihrer App zu Application Insights, sodass keine Änderungen an eingehenden Firewallregeln erforderlich sind.
Verteiltes Tracing und End-to-End-Transaktionen
Verteiltes Tracing korreliert Telemetriedaten über mehrere Dienste hinweg mithilfe einer gemeinsamen operation_Id. Wenn eine Benutzeranforderung in Ihre Front-End-App gelangt, überträgt Application Insights Trace-Kontextheader an nachgelagerte Dienste. Die Ansicht End-to-End Transaction Details fügt alle Spans aller beteiligten Dienste zu einer einzigen Gantt-Diagramm-Zeitachse zusammen und zeigt genau, wo in Ihrer Microservices-Architektur Zeit aufgewendet wird.
Benutzerdefinierte Ereignisse und Metriken
Zusätzlich zur automatischen Telemetrie können Sie mithilfe des SDK benutzerdefinierte Ereignisse und benutzerdefinierte Metriken erfassen. Rufen Sie trackEvent() auf, um Ereignisse auf Geschäftsebene wie 'CheckoutCompleted' oder 'FeatureFlagEnabled' aufzuzeichnen. Rufen Sie trackMetric() auf, um anwendungsspezifische Messwerte wie Warteschlangentiefe oder Cache-Trefferrate aufzuzeichnen. Benutzerdefinierte Telemetriedaten erscheinen in denselben Log Analytics-Tabellen und können zusammen mit Plattformdaten per KQL abgefragt werden.
// Node.js SDK example — tracking a custom event
const appInsights = require('applicationinsights');
appInsights.defaultClient.trackEvent({
name: 'CheckoutCompleted',
properties: { userId: '42', plan: 'premium' },
measurements: { orderValue: 99.99 }
});Smart Detection und Fehleranomalien
Smart Detection analysiert Ihre Telemetriedaten automatisch mithilfe von maschinellem Lernen und warnt Sie vor ungewöhnlichen Mustern – beispielsweise einem plötzlichen Anstieg der Fehlerrate, einer Verschlechterung der Serverantwortzeit oder einem ungewöhnlichen Anstieg der Anzahl von Ausnahmen. Im Gegensatz zu manuell konfigurierten Schwellenwertwarnungen passen sich Smart Detection-Regeln an das normale Verhalten Ihrer Anwendung an. Warnungen werden an die Abonnementbesitzer gesendet und im Bereich Smart Detection angezeigt.
Verfügbarkeitstests
Verfügbarkeitstests (auch Webtests genannt) senden nach einem Zeitplan synthetische HTTP-Anforderungen aus mehreren Azure-Regionen weltweit an Ihre Anwendung (bis zu einmal pro Minute). Sie prüfen, ob Ihre öffentlichen Endpunkte innerhalb eines Zeitlimits mit dem erwarteten HTTP-Statuscode antworten. Wenn ein Test gleichzeitig von mehreren Standorten fehlschlägt, wird eine Warnung ausgelöst. Dadurch erhalten Sie eine unabhängige Überwachung von außen nach innen, die nicht von Ihrer internen Infrastruktur abhängt.
# Create a URL ping availability test via CLI
az monitor app-insights web-test create \
--name 'HomepagePing' \
--resource-group myRG \
--app-component myAppInsightsResource \
--defined-web-test-kind ping \
--request-url 'https://myapp.azurewebsites.net/' \
--locations '[{"Id":"us-ca-sjc-azr"},{"Id":"emea-gb-db3-azr"}]' \
--frequency 300 \
--timeout 30Sampling zur Steuerung des Datenvolumens
Sampling reduziert das Volumen der an Application Insights gesendeten Telemetriedaten, indem nur ein Teil der Anforderungen erfasst wird, wobei die statistische Genauigkeit erhalten bleibt. Adaptives Sampling passt die Sampling-Rate automatisch an, um eine angestrebte Erfassungsrate einzuhalten. Sampling mit fester Rate wendet einen festen Prozentsatz an. Gesampelte Telemetriedaten werden gekennzeichnet, sodass Metrikansichten den Sampling-Faktor bei der Anzeige von Anzahlen und Raten automatisch korrigieren.
Benutzer- und Sitzungsanalyse
Application Insights umfasst integrierte Nutzungsanalysen für browserinstrumentierte Anwendungen. Die Ansicht Users zeigt die Anzahl eindeutiger Benutzer, Sessions erfasst die Benutzerabläufe, Funnels visualisieren Abbrüche in mehrstufigen Abläufen, und Retention-Diagramme zeigen, wie viele Benutzer im Laufe der Zeit zurückkehren. Diese Tools sind besonders für Produktteams nützlich, die neben der Betriebsüberwachung Konversionsraten und Benutzerinteraktionen optimieren.
Application Insights und Log-Analytics-Tabellen
Application-Insights-Daten werden in einem Log-Analytics-Arbeitsbereich in dedizierten Tabellen gespeichert: requests, exceptions, dependencies, traces, pageViews, customEvents und customMetrics. Wenn Application Insights im arbeitsbereichsbasierten Modus konfiguriert ist (die Standardeinstellung für neue Ressourcen), können Sie diese Tabellen mit anderen Arbeitsbereichsdaten verknüpfen — beispielsweise eine Anwendungsausnahme mit einer in AzureActivity protokollierten Zugriffsverweigerung auf Key Vault korrelieren.
// KQL — find the top 10 slowest dependencies in the last hour
dependencies
| where timestamp > ago(1h)
| where success == false or duration > 2000
| summarize AvgDuration = avg(duration), FailCount = countif(success==false)
by name, type
| top 10 by AvgDuration descKurze Überprüfung
Testen Sie Ihr Verständnis der Konzepte von Microsoft Azure Fundamentals (AZ-900) aus dieser Lektion.
Zusammenfassung der Lektion
In dieser Lektion haben Sie Folgendes gelernt: Application Insights stellt Telemetriedaten auf APM-Niveau zu Anforderungsraten, Fehlern und Abhängigkeiten bereit, die Application Map und verteilte Ablaufverfolgung visualisieren die Topologie Ihrer Microservices durchgängig, und Verfügbarkeitstests überprüfen Ihre öffentlichen Endpunkte von mehreren globalen Standorten aus. Als Nächstes beschäftigen wir uns mit Azure Dashboards und Workbooks, um betriebliche Einblicke mit Ihrem Team zu teilen.
Häufig gestellte Fragen
Ist die Lektion „Application Insights“ kostenlos?
Ja — der vollständige Text von „Application Insights“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Cloud & IT Cert Prep-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Cloud & IT Cert Prep-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Application Insights“?
Instrumentieren Sie eine Webanwendung mit dem Application Insights SDK, erkunden Sie die Anwendungsübersicht und verwenden Sie Live Metrics Stream zur Echtzeitdiagnose von Problemen. Du übst Cloud & IT Cert Prep mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Cloud & IT Cert Prep zu starten?
Keine Vorkenntnisse erforderlich. Cloud & IT Cert Prep auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 3 von 4.
Wie lange dauert die Lektion „Application Insights“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Cloud & IT Cert Prep-Lektion Code schreiben und ausführen?
Ja. Jede Cloud & IT Cert Prep-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Azure Monitor: Metriken und Warnungen
- Grundlagen von Log Analytics und KQL
- Application Insights
- Azure-Dashboards und Workbooks