Przechwyć telemetrię z Application Insights

Ważne

Możliwości i funkcje Power Virtual Agents są teraz częścią Microsoft Copilot Studio w wyniku znacznych inwestycji w generatywną AI i poprawioną integracje z Microsoft Copilot.

Niektóre artykuły i zrzuty ekranów mogą odwoływać się do Power Virtual Agents podczas aktualizowania dokumentacji i zawartości szkoleniowej.

W tym artykule opisano, w jaki sposób można przechwytywać dane telemetryczne z bota Microsoft Copilot Studio, które mają być wykorzystywane na platformie Azure Application Insights.

Oprócz funkcji macierzystej analizy dostępnej w Microsoft Copilot Studio istnieje również możliwość wysyłania danych telemetrycznych do usługi Application Insights. Telemetria oferuje szczegółowe informacje dla bota, śledząc:

  • Zarejestrowane wiadomości i zdarzenia wysyłane do i z bota
  • Tematy, które mają być wyzwalane podczas konwersacji użytkownika
  • Niestandardowe zdarzenia telemetryczne, które mogą być wysyłane z tematów

Ważne

Application Insights to funkcja Azure Monitor, rozszerzania zarządzania wydajnością aplikacji Application Performance Management (APM), która umożliwia monitorowanie live aplikacji. Wymagana jest subskrypcja usługi Microsoft Azure.

Połącz swojego bota Microsoft Copilot Studio z Application Insights

Aby połączyć bota z usługą Application Insights, najpierw musisz dodać klucz Instrumentacji do projektu.

  1. Przejdź do strony Szczegóły bota w obszarze Ustawienia.

  2. Przejdź do karty Zaawansowane.

  3. W sekcji Application Insights wypełnij ustawienie Parametry połączenia. Zobacz dokumentację Azure Monitor, aby dowiedzieć się, jak znaleźć parametry połączenia.

  4. Opcjonalnie można włączyć jedno z poniższych ustawień.

  • Rejestrowanie działań — po włączeniu zostaną zarejestrowane szczegółowe informacje o przychodzących/wychodzących wiadomościach i zdarzeniach.

  • Rejestrowanie poufnych właściwości działań — po włączeniu tej opcji w dziennikach będą uwzględniane wartości pewnych właściwości, które mogą być uważane za poufne w przypadku przychodzących/wychodzących wiadomości i zdarzeń. Właściwości, które są potencjalnie poufne, to identyfikator użytkownika, nazwa, tekst i mowa (właściwości tekstu i mowy mają zastosowanie tylko do wiadomości).

Analizowanie telemetrii bota za pomocą usługi Application Insights

Po połączeniu bota z usługą Application Insights dane telemetryczne będą rejestrowane podczas interakcji użytkowników z tym botem, w tym podczas testowania w obrębie usługi Microsoft Copilot Studio. Aby wyświetlić zarejestrowane dane telemetryczne, przejdź do sekcji Dzienniki zasobu Application Insights na platformie Azure.

Na tej stronie można użyć zapytań Kusto do tworzenia zapytań i analizowania danych. Zobacz przykładowe zapytania.

Przykładowe zapytania

Zapytanie może być bardzo proste, na przykład może wystarczyć podanie jednej tabeli, takiej jak customEvents, która pokazuje wszystkie niestandardowe zdarzenia telemetryczne zarejestrowane z poziomu Microsoft Copilot Studio. Możesz jednak używać zapytań Kusto, aby jeszcze bardziej zawęzić zakres wyników, w tym;

  • Dodawanie interwału czasu
  • Rozszerzanie wyników za pomocą wymmiarów niestandardowych. Wymiary niestandardowe to rejestrowane właściwości niestandardowe oraz wstępnie zbudowane pola, takie jak sygnatura czasowa lub nazwa zdarzenia
  • Klauzula where ograniczająca zwrócone dane na podstawie warunku
  • Korzystanie z bardziej wbudowanych funkcji Kusto w celu określenia, jakie informacje są wyświetlane i w jaki sposób

Przykładowe zapytanie poniżej powoduje powstanie wykresu liniowego, który pokazuje, ilu różnych użytkowników komunikowało się z botem przez ostatnie 14 dni.

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

Ważne

Dane w niektórych polach różnią się i mają więcej lub mniej zastosowań w zależności od używanego kanału. Na przykład w zapytaniu zostanie poprawna liczba unikatowych użytkowników tylko wtedy, gdy są uwierzytelniani użytkownicy, a ich identyfikatory użytkowników są spójne w konwersacjach. W scenariuszach anonimowych, w których jest generowany losowy identyfikator użytkownika na konwersację, pole identyfikatora użytkownika jest mniej użyteczne.

Wykluczanie telemetrii z testowych konwersacji z zapytań

Bot zapisuje telemetrię dzienników dla wszystkich konwersacji, w tym tych, które mają miejsce w kanwie testowej Microsoft Copilot Studio. Aby wykluczyć dane telemetryczne zebrane podczas testowania, możesz rozszerzyć zapytanie przy użyciu wymiarów niestandardowych designMode przechwytywanych we wszystkich zdarzeniach i użyć klauzuli where w zapytaniu.

W przykładzie poniżej przedstawiono wszystkie zdarzenia niestandardowe z wykluczeniem zdarzeń przechwytywanych za pomocą kanwy testowej.

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

Wymiary niestandardowe

Wiele danych określonych działań otrzymanych z Microsoft Copilot Studio jest przechowywanych w polu customDimensions. Możesz zobaczyć pole wymiarów niestandardowych używane w zapytaniu w celu wykluczenia telemetrii z testowych konwersacji.

Pole opis Przykładowe wartości
type Typ działania message, conversationUpdate, event, invoke
channelId Identyfikator kanału emulator, directline, msteams, webchat
fromId Identyfikator początkowy <id>
fromName Nazwa użytkownika z klienta John Bonham, Keith Moon, Steve Smith, Steve Gadd
locale Ustawienia regionalne pochodzenia klienta en-us, zh-cn, en-GB, de-de, zh-CN
recipientId Identyfikator adresata <id>
recipientName Imię i nazwisko adresata John Bonham, Keith Moon, Steve Smith, Steve Gadd
text Tekst w komunikacie find a coffee shop
designMode Konwersacja miała miejsce na kanwie testowej True / False