Teilen über


Erfassen von Telemetrie mit Application Insights

In diesem Artikel wird erläutert, wie Sie Telemetriedaten von Ihrem Microsoft Copilot Studio Copiloten erfassen und in Azure Application Insights verwenden können.

Zusätzlich zu den nativen Analyse Funktionen in Microsoft Copilot Studio können Sie Telemetriedaten an Application Insights senden. Die Telemetrie bietet Einblicke in Ihren Copiloten durch die Verfolgung von:

  • Protokollierte Nachrichten und Ereignisse, die an Ihren Copiloten gesendet und von ihm empfangen werden
  • Themen, die während Benutzergesprächen ausgelöst werden sollen
  • Benutzerdefinierte Telemetrieereignisse, die von Ihren Themen gesendet werden können

Wichtig

Application Insights ist eine Funktion von Azure Monitor, einem erweiterbaren Application Performance Management (APM) Tool, das Ihnen die Überwachung Ihrer Live-Anwendungen erlaubt. Es erfordert ein Abonnement für Microsoft Azure.

Verbinden von Copilot Studio Copilot mit Application Insights

Um eine Verbindung Ihres Copiloten mit Application Insights heruzustellen, müssen Sie Ihren Instrumentierungsschlüssel zum Projekt hinzufügen.

  1. Navigieren Sie unter Einstellungen zur Seite Copilot-Details.

  2. Wechseln Sie zur Registerkarte Erweitert.

  3. Innerhalb des Application Insights-Abschnitts füllen Sie die Verbindungszeichenfolge-Einstellung aus. Informationen finden Sie in der Azure Monitor-Dokumentation. Dort finden Sie heraus, wie Sie Ihre Verbindungszeichenfolge finden.

  4. Optional können Sie eine der folgenden Einstellungen aktivieren.

    • Aktivitäten protokollieren: Wenn aktiviert, werden Details zu eingehenden/ausgehenden Nachrichten und Ereignissen protokolliert.

    • Sensible Aktivitätseigenschaften protokollieren: Wenn diese Option aktiviert ist, werden die Werte bestimmter Eigenschaften, die bei eingehenden/ausgehenden Nachrichten und Ereignissen als sensibel betrachtet werden könnten, in die Protokolle aufgenommen. Die Eigenschaften, die als potenziell sensibel angesehen werden, sind userid, name, text und speak (text- und speak-Eigenschaften gelten nur für Nachrichten).

Bot-Telemetrie mit Application Insights analysieren

Nachdem Sie Ihren Bot mit Application Insights verbunden haben, werden Telemetriedaten aufgezeichnet, wenn Benutzer mit dem Bot interagieren, einschließlich Tests innerhalb von Microsoft Copilot Studio. Um die protokollierten Telemetriedaten anzuzeigen, navigieren Sie zum Protokolle-Abschnitt Ihrer Application Insights-Ressource in Azure.

Von hier aus können Sie Kusto-Abfragen verwenden, um Ihre Daten abzufragen und zu analysieren. Siehe Beispielabfragen.

Beispielabfragen

Eine Abfrage kann so einfach sein wie die Angabe einer einzelnen Tabelle, z.B. customEvents, die alle angepassten Telemetrieereignisse anzeigt, die von Microsoft Copilot Studio protokolliert wurden. Sie können aber auch Kusto-Abfragen verwenden, um Ihre Ergebnisse weiter einzugrenzen, einschließlich;

  • Hinzufügen eines Zeitintervalls
  • Erweitern Ihrer Ergebnisse mit benutzerdefinierten Abmessungen. Angepasste Dimensionen sind angepasste Eigenschaften, die zusammen mit den vorgefertigten Feldern protokolliert werden, wie z.B. der Zeitstempel oder der Name des Ereignisses
  • Eine where-Klausel, um die zurückgegebenen Daten basierend auf einer Bedingung einzuschränken
  • Verwendung weiterer integrierter Kusto-Funktionen, um zu bestimmen, welche und wie Informationen angezeigt werden

Die folgende Beispielabfrage führt zu einem Liniendiagramm, das zeigt, wie viele verschiedene Benutzer in den letzten 14 Tagen pro Tag mit Ihrem Bot kommuniziert haben.

let queryStartDate = ago(14d);
let queryEndDate = now();
let groupByInterval = 1d;
customEvents
| where timestamp > queryStartDate
| where timestamp < queryEndDate
| summarize uc=dcount(user_Id) by bin(timestamp, groupByInterval)
| render timechart

Wichtig

Die Daten in einigen Feldern variieren und sind je nach verwendetem Kanal mehr oder weniger anwendbar. Sie erhalten zum Beispiel nur dann eine korrekte Anzahl eindeutiger Benutzer in der Abfrage, wenn es sich um authentifizierte Benutzer handelt und ihre Benutzerkennungen über alle Unterhaltungen hinweg konsistent sind. In anonymen Szenarien, in denen pro Konversation eine zufällige Benutzer-ID generiert wird, ist das Benutzer-ID-Feld weniger nützlich.

Telemetrie von Testkonversationen aus Ihren Abfragen ausschließen

Ihr Bot protokolliert Telemetriedaten für alle Unterhaltungen, einschließlich derjenigen, die innerhalb des Microsoft Copilot Studio Test Canvas stattfinden. Wenn Sie Telemetrie, die während des Tests erfasst wurde, ausschließen möchten, können Sie Ihre Abfrage mit der benutzerdefnierten designMode-Dimension erweitern, die bei allen Ereignissen erfasst wird, und eine where-Klausel in Ihrer Abfrage verwenden.

Das folgende Beispiel zeigt alle angepassten Ereignisse, mit Ausnahme derer, die über den Test Canvas erfasst werden.

customEvents
| extend isDesignMode = customDimensions['designMode']
| where isDesignMode == "False"

Benutzerdefinierte Dimensionen

Ein Großteil der spezifischen Aktivitätsdaten, die Sie von Microsoft Copilot Studio erhalten haben, wird im Feld customDimensions gespeichert. Sie können sehen, dass ein benutzerdefiniertes Dimensionsfeld in einer Abfrage verwendet wird, um Telemetrie aus Testkonversationen auszuschließen.

Feld Beschreibung Beispielwerte
Type Typ der Aktivität message, conversationUpdate, event, invoke
channelId Kanalbezeichner emulator, directline, msteams, webchat
fromId Ab-Bezeichner <id>
fromName Benutzername vom Kunden John Bonham, Keith Moon, Steve Smith, Steve Gadd
locale Gebietsschema des Client-Ursprungs en-us, zh-cn, en-GB, de-de, zh-CN
recipientId Empfängerbezeichner <id>
recipientName Empfängername John Bonham, Keith Moon, Steve Smith, Steve Gadd
text Text in Nachricht find a coffee shop
designMode Die Konversation fand innerhalb des Testbereichs statt True / False