Modellgesteuerte Apps und Microsoft Dataverse-Telemetrie mit Application Insights analysieren

Sie können eine Application Insights-Umgebung zum Empfangen von Telemetriedaten zu Diagnose und Leistung einrichten, die von der Dataverse-Plattform erfasst werden.

Sie können abonnieren, um Telemetriedaten zu Vorgängen zu erhalten, die Anwendungen in Ihrer Dataverse-Datenbank und in Modellgesteuerten Apps ausführen. Diese Telemetrie stellt Informationen bereit, mit denen Sie Probleme im Zusammenhang mit Fehlern und Leistung diagnostizieren und beheben können.

Sie müssen keinen Code schreiben, um diese Telemetrie zu aktivieren. Sie können den Telemetrie-Feed jederzeit aktivieren oder deaktivieren.

Application Insights ist Teil des Azure Monitor-Ökosystems. Es wird häufig von Unternehmen zur Überwachung und Diagnose verwendet. Viele Kunden haben ihren Erweiterungen Code hinzugefügt, um diese Daten in ihren Application Insights-Umgebungen zu erfassen. Dieser zusätzliche Code ist aber kostenpflichtiges und es fallen nicht nur Schreib- und Wartungskosten, sondern auch Leistungskosten zur Laufzeit an. Diese Kosten können durch die Verwendung der integrierten Application Insights-Integration vermieden werden.

Notiz

Die Aktivierung von Application Insights ist auf Kunden mit bezahlten/Dataverse-Premium-Lizenzen für den Mandanten beschränkt.

Warum brauche ich Telemetrie?

Telemetrie stellt Daten zu den Vorgängen in einer Modellgesteuerten App oder auf dem Server bereit. Ohne diese Daten ist die App oder der Dienst eine „Black Box“. Die einzige Möglichkeit, einen Einblick zu erhalten, wenn Sie ein Problem haben, besteht darin, sich an den technischen Support zu wenden. Telemetrie ermöglicht es Ihnen, bestimmte Vorgänge zu erkennen und zu messen, um besser zu verstehen, ob die Dinge normal funktionieren oder etwas das System negativ beeinflusst.

Wenn Sie Modellgesteuerte Apps mithilfe von clientseitigem JavaScript erweitert oder serverseitige Logik mithilfe von Plug-Ins hinzugefügt haben, können Sie die Auswirkungen dieser Erweiterungen auf die Leistung sehen und Möglichkeiten zur Optimierung finden, einschließlich der Änderung des Designs, wenn dies erforderlich ist.

Sie können die Telemetrie auch verwenden, um allgemeine Leistungstrends zu beobachten, sodass Sie diese proaktiv verwalten können, anstatt auf Benutzervorfälle zu reagieren. Mit Application Insights, können Sie Bedingungen definieren, unter denen Sie benachrichtigt werden, wenn eine Metrik einen bestimmten Schwellenwert überschreitet.

Wie funktioniert es?

Microsoft sammelt bereits umfangreiche Telemetrie in Dataverse und Modellgesteuerten Apps. Mit der Application Insights-Integration bietet ein Umgebungs- oder Mandantenadministrator den Application Insights-Instrumentierungsschlüssel beim Einrichten des Datenexportprozesses im Power Platform Admin Center. Sobald die Einrichtung abgeschlossen ist, sammelt Microsoft Telemetrie über Ihre Umgebung und alle Modellgesteuerten Apps, die Application Insights verwenden, werden an Ihre Application Insights-Umgebung gesendet. Weitere Informationen: Eine Application Insights-Ressource erstellen

Wenn Sie sich entscheiden, sich abzumelden, können Sie zum Power Platform Admin Center navigieren und die Datenexportverbindung löschen. Dadurch wird der Datenexportvorgang gestoppt. Sie können den Prozess jederzeit neu starten.

Vorteile dieses Integrationsansatzes

Wenn Sie die Application Insights-Integration verwenden, erhalten Sie einen standardisierten Telemetriesatz, der der Application Insights TelemetriedatenModell folgt.

Die Telemetrie ist korreliert, sodass Sie Vorgänge, die mit einem Mausklick in einer Modellgesteuerten App beginnen, bis zum Server und zurück verfolgen können. Auf diesem Weg können Sie sehen, welche Teile der Anwendung verwendet werden und wie viel Zeit jeder Schritt benötigt.

Wenn Sie sich an den technischen Support wenden müssen, können Sie die ID-Werte für die Vorgänge verwenden (das Feld „operation_id“). Dies sind die gleichen Werte, die Microsoft-Techniker verwenden, wenn sie Telemetriedaten abfragen.

Wenn Sie mit einem Partner zusammenarbeiten oder ein Systemintegrator sind, bedeutet die standardisierte Telemetrie, dass Sie sich nicht mit den verschiedenen Designentscheidungen vertraut machen müssen, die für benutzerdefinierte Telemetrie in verschiedenen Umgebungen getroffen wurden.

Beachten Sie, dass Monitor für das Live-Debugging für Canvas-Apps und Modellgesteuerte Apps verwendet werden kann.

Benutzerdefinierte Telemetrie

Wenn die Standardtelemetrie eine bestimmte Metrik nicht bereitstellt, die Sie benötigen, können Sie Code schreiben, um die bereits erfassten Daten zu ergänzen.

Wenn Sie diese Application Insights-Funktion aktiviert haben, können Sie die Microsoft.Xrm.Sdk.PluginTelemetry.ILogger-Schnittstelle in Ihrem Plug-In-Code verwenden, um Telemetriedaten direkt in Ihre Application Insights-Ressource zu schreiben. Diese Telemetrie wird niemals an Microsoft gesendet. Weitere Informationen: Telemetrie in Ihre Application Insights-Ressource mit ILogger schreiben

Für clientseitiges JavaScript in Modellgesteuerten Apps können Sie dieselben Muster verwenden, die Sie heute zum Schreiben in Ihre Application Insights-Ressource verwenden.

Was ist enthalten und was nicht?

Mehrere Telemetrietypen sind in Ihrer Application Insights-Umgebung verfügbar. Es ist wichtig, zu beachten, dass Application Insights ein definiertes Schema besitzt. Die Tabellen in Application Insights werden beim Datenexport gemäß diesem Schema aufgefüllt.

Bei Modellgesteuerten Apps deckt die Telemetrie allgemeine Anwendungsfeatures ab, z. B. Formular-, Raster- und Dashboard-Ladeereignisse. Dies sind Ereignisse, bei denen die Leistung normalerweise ein Problem ist. Momentan sind Speicherereignisse und Menübandbefehle nicht enthalten. Diese Funktion ist derzeit nur für Modellgesteuerte Apps verfügbar. Siehe Telemetrieereignisse für Modellgesteuerte Apps.

Bei Canvas-Apps ermöglicht eine vorhandene Funktion dem App-Hersteller die benutzerdefinierte Telemetrie mit Application Insights beim Entwickeln der App zu protokollieren.

Dataverse enthält alle Anfragen, die auf dem Server gestellt werden. Sie können sehen, wie die Anfragen innerhalb des Webservers verarbeitet werden. Aus der Datenbank selbst erhalten Sie keine detaillierten Informationen, mit Ausnahme der Zeit, die für die Verarbeitung des Vorgangs aufgewendet wurde. Sie erhalten auch keine Telemetrie in Bezug auf die physischen Ressourcen des Servers, z. B. den Speicherverbrauch. Weitere Informationen: Telemetrieereignisse für Dataverse