Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Verwenden Sie dieses Handbuch, um die Telemetrieaufnahme zu überprüfen und Probleme mit Agent-Telemetrie zu diagnostizieren, die direkt über OTLP an Agent 365 gesendet werden. Sie bezieht sich auf den direkten OTel-Pfad – wenn Sie das Agent 365 SDK oder die Microsoft OpenTelemetry Distro verwenden, lesen Sie stattdessen die entsprechenden Anleitungen. Informationen zu Grenzwerten auf Übertragungsebene, Fehlercodes und Bedingungen für stillschweigendes Verwerfen finden Sie unter Grenzen und Bedingungen für das Verwerfen.
Überprüfen der Erfassung
Ein 200 OK ist kein Beweis für die Erfassung. Einige Bedingungen zum Verwerfen geben 200 mit partialSuccess: null zurück, und Ihre Daten erscheinen einfach nicht (siehe Grenzwerte und Bedingungen zum Verwerfen). Überprüfen Sie immer ihre ersten Ausführungen:
- Http-Status überprüfen. 200 → fortfahren. 4xx → siehe häufige Fallstricke.
- Analysieren Sie
partialSuccess.nullbedeutet, dass die API alles akzeptiert hat. Alles andere bedeutet, dass mindestens einige Spans beim Filter pro Span verworfen wurden. - Warten Sie etwa 5 Minuten und führen Sie dann die unten stehende Defender-Abfrage für die erweiterte Suche aus.
- Keine Zeile? Verwenden Sie den Entscheidungsbaum unter Keine Daten in Defender.
Erweiterte Hunting-Abfrage von Defender
Die kanonische Suche (Verknüpfung über die von Ihnen gesendete Agent-Identität):
let agentIdToFind = "YOUR-AGENT-APP-ID-HERE";
CloudAppEvents
| where Timestamp > ago(1d)
| where ActionType in ("InvokeAgent", "InferenceCall", "ExecuteToolBySDK", "ExecuteToolByGateway", "ExecuteToolByMCPServer")
| extend resData = parse_json(tostring(RawEventData))
| extend AgentId = resData.AgentId
| extend TargetAgentId = resData.TargetAgentId
| extend AlternateId = resData.PlatformTargetAgentId
| where AgentId == agentIdToFind or TargetAgentId == agentIdToFind or AlternateId == agentIdToFind
| project Timestamp, ActionType, resData
| order by Timestamp desc
Eine vollständige Liste der Oberflächen (Defender Agentaktivitätsansichten, Microsoft 365 Admin Center, Microsoft Purview) und die anforderungen der einzelnen Oberflächen finden Sie unter Wo ihre Daten angezeigt werden.
Keine Daten in Defender
-
partialSuccess.rejectedSpans == totalSpans→ alle Ihre Spans wiesen einen fehlerhaftengen_ai.operation.nameauf. Fix: Verwenden Sie eines voninvoke_agent,execute_tool, ,chatoutput_messages(es istchat, nichtinference). - 200 mit
partialSuccess: null, aber keine Defender-Zeile nach 5 Min. → keinem Benutzer im Kundenmandanten ist eine Microsoft 365 E7- oder Microsoft Agent 365-Lizenz zugewiesen (Grenzen und Bedingungen für das Verwerfen, Verwerfungsbedingung 2). Lösung: Stellen Sie sicher, dass mindestens einem Benutzer im Mandanten die Lizenz zugewiesen ist (nicht nur im Mandanten verfügbar); andernfalls wenden Sie sich an das Agent 365-Onboarding-Team. - Spans werden angezeigt, aber der Ausführungsbaum ist beschädigt / einige untergeordnete Elemente sind verwaist →
parentSpanIdfehlt,traceIdweicht ab odergen_ai.conversation.idist nicht für jeden Span festgelegt. Problembehebung: Überprüfen Sie die Span-Hierarchie und Ausführungsgruppierung.
Häufige Fallstricke
| Symptom | Wahrscheinlichste Ursache | Beheben |
|---|---|---|
401 Unauthorized |
Ungültige aud beim Token. |
Verwenden 9b975845-388f-4429-889e-eab1ef63949c (oder api://9b975845-...). |
403 Forbidden, fehlende Rolle/Bereich |
Das Token enthält Agent365.Observability.OtelWrite nicht. |
Registrieren Sie Ihre Microsoft Entra-App gemäß Bereiche und Einwilligung für die Rolle (S2S) bzw. den Bereich (delegiert). Für S2S muss das Token mit <resource>/.default abgerufen werden. |
403 Forbidden, Nichtübereinstimmung der Agent-Identität |
{agentId} in der URL ≠ appid / azp des Tokens, oder ein Span hat eine gen_ai.agent.id, die nicht mit dem authentifizierten Agent übereinstimmt. |
Die Route agentId muss die App-ID der aufrufenden App sein. Bei von Blueprint abgeleiteten Identitäten ist dies die appId der Agent-Identität, nicht die appId des Blueprints. Stellen Sie sicher, dass das die gen_ai.agent.id jedes Span übereinstimmt. |
200 OK Aber partialSuccess.rejectedSpans == totalSpans |
Alle Spans wiesen einen fehlerhaften gen_ai.operation.name auf. |
Verwenden Sie eines von invoke_agent, execute_tool, chat, output_messages.
Es ist chat, nicht inference. |
200 OK mit partialSuccess: null, aber in Defender werden keine Daten angezeigt |
Keinem Benutzer im Kundenmandanten ist eine Microsoft 365 E7- oder Microsoft Agent 365-Lizenz zugewiesen (Grenzwerte und Abbruchbedingungen). | Vergewissern Sie sich, dass mindestens ein Benutzer im Mandanten über eine Microsoft 365 E7- oder Microsoft Agent 365-Lizenz verfügt (die derzeit vorhandene SKU ist nicht ausreichend). Überprüfen Sie dies mit KQL in Überprüfen der Erfassung; wenn nach 5 Minuten keine Daten eingehen, wenden Sie sich an das Agent 365-Team. |
Spans werden in CloudAppEvents angezeigt, aber die Ausführung fehlt in den Defender-Ansichten zur Agent-Aktivität und im Microsoft 365 Admin Center. |
Die Ausführung hat keinen invoke_agent-Span. Beide Oberflächen basieren auf invoke_agent. |
Geben Sie bei jeder Ausführung genau ein invoke_agent-Span im Stamm aus; machen Sie chat / execute_tool / output_messages über parentSpanId zu dessen untergeordneten Elementen. |
| Ausführungsbaumstruktur ist beschädigt / Tool-Spans erscheinen verwaist |
parentSpanId fehlt oder traceId weicht bei untergeordneten Spans ab. |
Siehe Span-Hierarchie und Run-Gruppierung. Jeder Span, der kein Stammelement ist, legt parentSpanId fest und teilt sich die traceId der Ausführung. |
Tool-Spannen zeigen leere ChannelName / ConversationId in Abfragen an |
Kanal/Unterhaltung war auf dem Tool-Span nicht festgelegt, und der übergeordnete invoke_agent befand sich nicht in derselben OTLP-Anforderung. |
Legen Sie microsoft.channel.name und gen_ai.conversation.id für jede Spanne fest. |
413 Payload Too Large |
Anfragetextkörper > 1 MB. | Teilen Sie die Spans auf mehrere Anforderungen auf. |
429 Too Many Requests |
Ratenlimit erreicht. | Beachten Sie Retry-After: 1, und warten Sie ab mit Jitter. |
| Agent wird in Dashboards nicht identifiziert |
gen_ai.agent.id ist leer oder ist keine GUID. |
Verwenden Sie die Entra-AppId des Agents. Wenn der Agent keine Entra-Registrierung hat, siehe Werte auswählen. |
Nächste Schritte
- Agent 365-Observability-Konzepte – Datenfluss, Identitätsmodelle, Authentifizierung, Bereiche und Grenzwerte.
- Integrationshandbuch – Voraussetzungen, Authentifizierungsrezepte, SDK-Setup und die Onboarding-Checkliste.
- Attributreferenz – Spezifikation je Attribut und Leitfaden zur Wertauswahl.