Integracja obserwowalności Copilot Studio

Agenci Microsoft Copilot Studio automatycznie emitują telemetrię do zaplecza obserwacji Microsoft Agent 365 — nie wymaga ręcznej instrumentacji SDK. Dzięki automatycznej obserwowalności uzyskujesz wgląd w aktywność agentów, wydajność oraz błędy w Centrum administracyjnym Microsoft 365, Microsoft Defender i Microsoft Purview.

Ten artykuł wyjaśnia, jak Copilot Studio automatycznie obsługuje obserwowalność oraz gdzie przeglądać dane telemetryczne.

Notatka

Więcej informacji o ogólnych koncepcjach obserwowalności Agent 365 oraz ręcznej instrumentacji dla agentów pro-kodu znajdziesz w sekcji Obserwowalność agentów. Artykuł koncentruje się na automatycznej obserwowalności agentów Copilot Studio.

Automatyczna obserwowalność

Agenci Copilot Studio automatycznie biorą udział w strukturze obserwowalności Agent 365:

  • Nie wymaga instalacji SDK: W przeciwieństwie do agentów pro-code, którzy wymagają instalacji i konfiguracji OpenTelemetry SDK, Copilot Studio samodzielnie emituje całą telemetrię podczas działania platformy.
  • Zgodność z OpenTelemetry: Telemetria zgodna jest z konwencjami semantycznymi OpenTelemetry, zapewniając spójność z agentami pro-code i innymi platformami.
  • Automatyczne pobieranie: Telemetria trafia do backendu obserwacji Agent 365 bez dodatkowej konfiguracji.
  • Natychmiastowa dostępność: Dane obserwacyjne pojawiają się w centrum administracyjnym Microsoft 365 w ciągu kilku minut od aktywności agenta.

Ta automatyzacja umożliwia scentralizowany monitoring, analizę bezpieczeństwa i raportowanie zgodności bez konieczności zaangażowania deweloperów.

Jakie dane telemetrii są rejestrowane

Copilot Studio automatycznie emituje dwie konwencje semantyczne OpenTelemetry dla spanów generatywnej AI:

Notatka

  • Telemetria jest zbierana tylko dla sesji uwierzytelnionych
  • Agenci wielodzierżawni nie są objęci telemetrią
  • Agenci o nazwach dłuższych niż 42 znaki nie są rejestrowani
  • Duże dane wejściowe i wyjściowe są automatycznie trunkowane w następujących polach:
    • Komunikaty wyjściowe
    • Argumenty narzędzia
    • Odpowiedź narzędzia (gen_ai.event.content)
    • Opis agenta

Wywołaj agenta

Rejestruje aktywność wywołania agenta:

  • Identyfikacja agenta: ID, nazwa, Entra ID i typ wywołanego agenta
  • Identyfikacja użytkownika: Kto komunikował się z agentem (gdy używany był mechanizm on-behalf-of flow)
  • Wiadomość wejściowa: wiadomość użytkownika wysłana do agenta (dane poufne ukryte)
  • Inne identyfikatory: identyfikatory dzierżawcy i środowiska
  • Znaczniki czasu rozpoczęcia i zakończenia: Kiedy wywołanie się rozpoczęło i zakończyło

Przykładowe zdarzenie

{
  "Name": "InvokeAgent",
  "Attributes": {
    "gen_ai.operation.name": "invoke_agent",
    "gen_ai.agent.id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "gen_ai.agent.name": "customer-support-agent",
    "gen_ai.agent.applicationid": "12345678-90ab-cdef-1234-567890abcdef",
    "gen_ai.agent.platformid": "Default-11111111-2222-3333-4444-555555555555_01234567-89ab-cdef-0123-456789abcdef",
    "gen_ai.agent.type": "CopilotStudio",
    "tenant.id": "11111111-2222-3333-4444-555555555555",
    "gen_ai.channel.name": "Copilot Studio Test Pane",
    "gen_ai.execution.type": "HumanToAgent",
    "gen_ai.conversation.id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
    "gen_ai.caller.id": "99999999-8888-7777-6666-555555555555",
    "gen_ai.caller.upn": "alex.smith@contoso.com",
    "gen_ai.caller.name": "Alex Smith",
    "gen_ai.caller.client.ip": "192.168.1.100",
    "gen_ai.caller.tenantid": "11111111-2222-3333-4444-555555555555",
    "gen_ai.input.messages": "What's the weather in Seattle?",
    "env.id": "Default-11111111-2222-3333-4444-555555555555"
  },
  "StartTimeUnixNano": 1700000000000000000,
  "EndTimeUnixNano": 0,
  "SpanId": "aaaa1111-bbbb-2222-cccc-333333333333"
}

Komunikat wyjściowy

Rejestruje wyjście agenta:

  • Komunikat wyjściowy: Odpowiedź agenta użytkownikowi (dane poufne usunięte)

Notatka

Komunikaty o błędach z wywołań agentów lub uruchomień narzędzi są rejestrowane jako komunikaty wyjściowe.

Oto kolejne przykładowe zdarzenie.

{
  "Name": "OutputMessages",
  "Attributes": {
    "gen_ai.operation.name": "output_messages",
    "gen_ai.agent.id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "gen_ai.agent.name": "customer-support-agent",
    "gen_ai.agent.applicationid": "12345678-90ab-cdef-1234-567890abcdef",
    "gen_ai.agent.platformid": "Default-11111111-2222-3333-4444-555555555555_01234567-89ab-cdef-0123-456789abcdef",
    "gen_ai.agent.type": "CopilotStudio",
    "tenant.id": "11111111-2222-3333-4444-555555555555",
    "gen_ai.output.messages": "The current weather in **Seattle, WA** is:\n\n- **Temperature:** 18°C (feels like 17°C)...",
    "gen_ai.conversation.id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
    "gen_ai.channel.name": "Copilot Studio Test Pane",
    "gen_ai.caller.id": "99999999-8888-7777-6666-555555555555",
    "gen_ai.caller.upn": "alex.smith@contoso.com",
    "gen_ai.caller.name": "Alex Smith",
    "gen_ai.caller.client.ip": "192.168.1.100",
    "gen_ai.caller.tenantid": "11111111-2222-3333-4444-555555555555",
    "env.id": "Default-11111111-2222-3333-4444-555555555555"
  },
  "StartTimeUnixNano": 0,
  "EndTimeUnixNano": 1700000005000000000,
  "SpanId": "bbbb2222-cccc-3333-dddd-444444444444",
  "ParentSpanId": "aaaa1111-bbbb-2222-cccc-333333333333"
}

Wykonanie narzędzia

Rejestruje wykonanie narzędzia, gdy agent używa łączników lub akcji:

  • Identyfikacja agenta: ID, nazwa, Entra ID i typ wywołanego agenta
  • Identyfikacja narzędzia: ID i nazwa wykonanego narzędzia
  • Argumenty narzędzia: Jakie dane zostały przesłane (dane poufne zanonimizowane)
  • Identyfikacja użytkownika: Kto interagował z agentem (przy użyciu przepływu On-Behalf-Of)
  • Inne identyfikatory: identyfikatory dzierżawcy i środowiska
  • Znaczniki czasu rozpoczęcia i zakończenia wykonania: Kiedy rozpoczęto i zakończono wykonanie

Oto kolejne przykładowe zdarzenie.

{
  "Name": "ExecuteTool",
  "Attributes": {
    "gen_ai.operation.name": "execute_tool",
    "gen_ai.agent.id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
    "gen_ai.agent.name": "customer-support-agent",
    "gen_ai.agent.applicationid": "12345678-90ab-cdef-1234-567890abcdef",
    "gen_ai.agent.platformid": "Default-11111111-2222-3333-4444-555555555555_01234567-89ab-cdef-0123-456789abcdef",
    "gen_ai.agent.type": "CopilotStudio",
    "tenant.id": "11111111-2222-3333-4444-555555555555",
    "gen_ai.tool.name": "msnweather:CurrentWeather",
    "gen_ai.tool.arguments": "{\"Location\":\"Seattle, WA\",\"units\":\"C\"}",
    "gen_ai.tool.call.id": "/providers/Microsoft.PowerApps/apis/shared_msnweather:CurrentWeather:abcdef12-3456-7890-abcd-ef1234567890",
    "gen_ai.tool.type": "Power Platform Connector",
    "gen_ai.conversation.id": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
    "gen_ai.event.content": "{ /* tool execution results */ }",
    "gen_ai.channel.name": "Copilot Studio Test Pane",
    "gen_ai.caller.id": "99999999-8888-7777-6666-555555555555",
    "gen_ai.caller.upn": "alex.smith@contoso.com",
    "gen_ai.caller.name": "Alex Smith",
    "gen_ai.caller.client.ip": "192.168.1.100",
    "gen_ai.caller.tenantid": "11111111-2222-3333-4444-555555555555",
    "env.id": "Default-11111111-2222-3333-4444-555555555555"
  },
  "StartTimeUnixNano": 1700000002000000000,
  "EndTimeUnixNano": 0,
  "SpanId": "cccc3333-dddd-4444-eeee-555555555555",
  "ParentSpanId": "aaaa1111-bbbb-2222-cccc-333333333333"
}

Wszystkie dane telemetryczne respektują granice prywatności. Wrażliwe dane użytkownika w wiadomościach oraz wejściach i wyjściach narzędzi są zaciemniane i nie są widoczne dla administratorów. Telemetria jest wykorzystywana do monitorowania bezpieczeństwa wewnętrznego i zgodności.

Następne kroki