Application Insights-Übersicht

Application Insights ist ein Feature von Azure Monitor, das eine erweiterbare Verwaltung der Anwendungsleistung (Application Performance Management, APM) und Überwachung für Live-Web-Apps ermöglicht. Fachkräfte in der Entwicklung und DevOps-Expert*innen können Application Insights für Folgendes nutzen:

  • Automatisches Erkennen von Leistungsanomalien
  • Unterstützung bei der Diagnose von Problemen mithilfe leistungsstarker Analysetools
  • Ermitteln, wie Benutzer Apps tatsächlich verwenden
  • Unterstützung bei der kontinuierlichen Verbesserung der Leistung und Benutzerfreundlichkeit von Apps

Application Insights:

  • Unterstützt eine Vielzahl von Plattformen wie .NET, Node.js, Java und Python.
  • Funktioniert für Apps, die lokal, hybrid oder in einer öffentlichen Cloud gehostet werden.
  • Lässt sich in DevOps-Prozesse integrieren.
  • Verfügt über Verbindungspunkte zu vielen Entwicklungstools.
  • Kann Telemetriedaten von mobilen Apps durch die Integration in Visual Studio App Center überwachen und analysieren.

Funktionsweise von Application Insights

Wenn Sie Application Insights verwenden möchten, installieren Sie in Ihrer App ein kleines Instrumentierungspaket (SDK) oder aktivieren Application Insights mithilfe des Application Insights-Agents. Informationen zu Sprachen und Plattformen, die den Application Insights-Agent unterstützen, finden Sie unter Unterstützte Sprachen.

Sie können die Web-App, alle Hintergrundkomponenten und den JavaScript-Code auf den Webseiten selbst instrumentieren. Die App und ihre Komponenten müssen nicht in Azure gehostet werden.

Die Instrumentierung überwacht Ihre App und leitet die Telemetriedaten an eine Application Insights-Ressource weiter. Dabei wird ein eindeutiger Instrumentierungsschlüssel verwendet. Die Auswirkungen auf die Leistung Ihrer App sind gering. Aufrufe zur Nachverfolgung sind nicht blockierend und werden zusammengefasst und in einem separaten Thread gesendet.

Sie können Telemetriedaten wie Leistungsindikatoren, Azure-Diagnosen oder Docker-Protokolle aus Hostumgebungen pullen. Sie können auch Webtests einrichten, die in regelmäßigen Abständen synthetische Anforderungen an den Webdienst senden. Alle diese Telemetriedatenströme sind in Azure Monitor integriert. Im Azure-Portal können Sie auf die Rohdaten leistungsstarke Analysen und Suchtools anwenden.

In der folgenden Abbildung ist dargestellt, wie bei einer Application Insights-Instrumentierung in einer App Telemetriedaten an eine Application Insights-Ressource gesendet werden.

Diagram that shows Application Insights instrumentation in an app sending telemetry to an Application Insights resource.

Verwendung von Application Insights

Es gibt mehrere Möglichkeiten für die ersten Schritte mit Application Insights. Beginnen Sie zunächst mit den Schritten, die Sie am meisten ansprechen. Danach können Sie sich mit den anderen Schritten beschäftigen.

Voraussetzungen

  • Sie benötigen ein Azure-Konto. Application Insights wird in Azure gehostet und sendet Telemetriedaten zur Analyse und Präsentation an Azure. Falls Sie kein Azure-Abonnement haben, können Sie sich kostenlos registrieren. Falls Ihre Organisation bereits über ein Azure-Abonnement verfügt, kann Ihr Administrator Sie hinzufügen.

  • Der Application Insights-Tarif Basic ist erst dann kostenpflichtig, wenn Ihre App stark genutzt wird.

Erste Schritte

Wenn Sie Application Insights zur Laufzeit verwenden möchten, können Sie Ihre Web-App auf dem Server instrumentieren. Dieser Ansatz ist ideal für Apps, die bereits bereitgestellt wurden, da der App-Code dabei nicht aktualisiert wird.

Ausführliche Informationen und Anweisungen finden Sie in den folgenden Artikeln:

Sie können Application Insights Ihrem App-Code auch zur Entwicklungszeit hinzufügen. Mit diesem Ansatz können Sie die Erfassung von Telemetriedaten anpassen und erweitern.

Ausführliche Informationen und Anweisungen finden Sie in den folgenden Artikeln:

Informationen zu allen unterstützten Sprachen, Plattformen und Frameworks finden Sie unter Unterstützte Sprachen.

Monitor

Nachdem Sie Application Insights eingerichtet haben, können Sie Ihre App überwachen.

  • Richten Sie Verfügbarkeitswebtests ein.
  • Verwenden Sie das Standardanwendungsdashboard für Ihren Teamraum, um Auslastung, Reaktionsfähigkeit und Leistung nachzuverfolgen. Überwachen Sie Ihre Abhängigkeiten, Seitenladevorgänge und AJAX-Aufrufe.
  • Ermitteln Sie, welche Anforderungen besonders langsam sind und bei welchen am häufigsten Fehler auftreten.
  • Verfolgen Sie den Livestream, wenn Sie eine neue Version bereitstellen, damit Sie über Leistungsabfälle sofort informiert sind.

Erkennen und Diagnostizieren von Problemen

Gehen Sie wie folgt vor, wenn Sie eine Warnung erhalten oder ein Problem auftritt:

  • Bewerten Sie, wie viele Benutzer betroffen sind.
  • Korrelieren Sie Ausfälle mit Ausnahmen, Abhängigkeitsaufrufen und Nachverfolgungen.
  • Untersuchen Sie Profile, Momentaufnahmen, Stapelabbilder und Ablaufverfolgungsprotokolle.

Messen, Lernen und Erstellen

  • Planen Sie eine Messung, um zu ermitteln, wie Kunden neue Funktionen der Benutzeroberfläche bzw. des Geschäftsablaufs verwenden.
  • Schreiben Sie benutzerdefinierte Telemetriedaten in Ihren Code.
  • Messen Sie die Effektivität jeder neuen Funktion, die Sie bereitstellen.
  • Sorgen Sie dafür, dass der nächste Entwicklungszyklus auf Informationen aus Ihren Telemetriedaten basiert.

Von Application Insights überwachte Elemente

Application Insights liefert Entwicklungsteams Informationen über die Leistung und Nutzung von Apps. Application Insights überwacht Folgendes:

  • Anforderungsraten, Antwortzeiten und Fehlerraten

    Finden Sie heraus, welche Seiten zu welchen Tageszeiten am häufigsten verwendet werden und wo sich Benutzer befinden. Stellen Sie fest, welche Seiten die beste Leistung aufweisen. Wenn die Antwortzeiten und Fehlerraten bei mehr Anforderungen ansteigen, liegt möglicherweise ein Ressourcenproblem vor.

  • Abhängigkeitsraten, Antwortzeiten und Fehlerraten zum Ermitteln, ob die Leistung durch externe Dienste beeinträchtigt wird.

  • Ausnahmen

    Analysieren Sie die aggregierten Statistiken, oder wählen Sie bestimmte Instanzen aus, und untersuchen Sie die Stapelüberwachung und die zugehörigen Anforderungen. Application Insights meldet sowohl Server- als auch Browserausnahmen.

  • Informationen zu Seitenansichten und Ladeleistung, die von den Browsern der Benutzer gemeldet werden

  • AJAX-Aufrufe von Webseiten mit Informationen zu Raten, Antwortzeiten und Fehlerraten

  • Anzahl von Benutzern und Sitzungen

  • Leistungsindikatoren von Windows- oder Linux-Servercomputern, z. B. zu CPU, Arbeitsspeicher und Netzwerkauslastung

  • Hostdiagnose von Docker oder Azure

  • Diagnose-Ablaufverfolgungsprotokolle von Apps, sodass Sie Ablaufverfolgungsereignisse mit Anforderungen korrelieren können

  • Benutzerdefinierte Ereignisse und Metriken im Client- oder Servercode, die Geschäftsereignisse wie verkaufte Artikel nachverfolgen

Anzeigeort von Application Insights-Daten

Es gibt viele Möglichkeiten, Application Insights-Telemetriedaten zu untersuchen. Weitere Informationen finden Sie in den folgenden Artikeln:

Nächste Schritte

Problembehandlung

Häufig gestellte Fragen

Sehen Sie sich die häufig gestellten Fragen an.

Microsoft Q&A-Forum mit Fragen und Antworten

Stellen Sie Fragen im Microsoft Q&A-Forum für Fragen und Antworten.

Stack Overflow

Stellen Sie Fragen zum Programmieren in Stack Overflow unter Verwendung eines Application Insights-Tags.

Benutzerfeedback

Hinterlassen Sie Produktfeedback für das Entwicklungsteam auf UserVoice.