Kommentar
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Använd den här guiden för att kontrollera insamling av telemetri och felsöka problem med agenttelemetri som skickas direkt till Agent 365 via OTLP. Den här guiden gäller den direkta OTel-vägen – om du använder Agent 365 SDK eller Microsoft OpenTelemetry Distro, se respektive guide istället. För gränser på protokollnivå, felkoder och tysta bortfall, se Gränser och bortfallsvillkor.
Verifiering av datainmatning
Ett godkännande på 200 är inte ett bevis på intag. Vissa bortfallsvillkor returnerar 200 med partialSuccess: null och din data visas helt enkelt inte (se Gränser och bortfallsvillkor). Verifiera alltid dina första körningar:
- Kontrollera HTTP-status. 200 → fortsätt. 4xx → se Vanliga fallgropar.
- Parsa
partialSuccess.nullbetyder att API:et accepterade allt. Allt annat innebär att åtminstone några spann har filtrerats bort vid per-span-filtret. - Vänta ~5 minuter, kör sedan Defender advanced-hunting-frågan nedan.
- Ingen rad? Använd beslutsträdet under Ingen data i Defender.
Defender avancerad sökfråga
Den kanoniska sökningen (genom att matcha agentidentiteten du skickade):
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
För en fullständig lista över vyer (Defender agent-aktivitetsvyer, Administrationscenter för Microsoft 365, Microsoft Purview) och vad varje vy kräver, se Var dina data visas.
Inga data i Defender
-
partialSuccess.rejectedSpans == totalSpans→ alla dina spann hade en dåliggen_ai.operation.name. Lösning: använd en avinvoke_agent,execute_tool,chat,output_messages(Det ärchat, inteinference). - 200 med
partialSuccess: nullmen ingen rad i Defender efter 5 minuter → ingen användare i kundtenant har en Microsoft 365 E7- eller Microsoft Agent 365-licens tilldelad (Gränser och borttagningsvillkor, borttagningsvillkor 2). Lösning: bekräfta att minst en användare i hyresgästen har licensen tilldelad (inte bara närvarande i hyresgästen); annars kontakta Agent 365:s onboardingteam. - Span visas men run-trädet är trasigt / vissa underordnade element är föräldralösa →
parentSpanIdsaknas,traceIdär olika, ellergen_ai.conversation.idär inte inställd på varje span. Lösning: granska Span-hierarkin och kör gruppering.
Vanliga fallgropar
| Symptom | Trolig orsak | Åtgärda |
|---|---|---|
401 Unauthorized |
Fel aud på token. |
Använda 9b975845-388f-4429-889e-eab1ef63949c (eller api://9b975845-...). |
403 Forbidden, roll eller scope saknas |
Token bär inte Agent365.Observability.OtelWrite. |
Registrera din Microsoft Entra-app till rollen (S2S) eller omfång (delegerad) enligt Omfång och medgivande. För S2S måste tokenen erhållas med <resource>/.default. |
403 Forbidden, agentidentitetskonflikt |
{agentId} i URL ≠ appid / azp av token, eller en span bär en gen_ai.agent.id som inte matchar den autentiserade agenten. |
Rutten agentId måste vara appId på den anropande appen. För blueprint-baserade identiteter är det agentens appId, inte blueprint-appId. Se till att varje spann gen_ai.agent.id matchar. |
200 OK men partialSuccess.rejectedSpans == totalSpans |
Alla spann hade en dålig gen_ai.operation.name. |
Använd en av invoke_agent, execute_tool, chat, output_messages.
Det är chat, inte inference. |
200 OK med partialSuccess: null men ingen data finns i Defender |
Ingen användare i kundens klientorganisation har en Microsoft 365 E7- eller Microsoft Agent 365-licens tilldelad (Gränser och droppvillkor). | Bekräfta att minst en användare i hyresgästen har en Microsoft 365 E7- eller Microsoft Agent 365-licens tilldelad (att SKU finns är inte tillräckligt). Verifiera med KQL i verifiering av intag; om inget landar efter 5 minuter, kontakta Agent 365-teamet. |
Spans finns i CloudAppEvents men körningen saknas i Defender-agentaktivitetsvyer och i Administrationscenter för Microsoft 365 |
Körningen har ingen invoke_agent span. Båda vyerna baseras på invoke_agent. |
Emittera exakt en invoke_agent span vid roten av varje körning; gör chat / execute_tool / output_messages till underordnade element av den via parentSpanId. |
| Körningsträdet är trasigt / verktygsspans verkar föräldralösa | Saknas parentSpanId eller är det annorlunda traceId på underordnade spann. |
Se spanhierarki och grupperade körningar. Varje icke-rootspan sätter parentSpanId och delar körningens traceId. |
Verktygsspann visar tomma ChannelName / ConversationId i sökfrågor |
Kanal/konversation saknas på verktygsspannet, och det överordnat element invoke_agent fanns inte i samma OTLP-förfrågan. |
Ange microsoft.channel.name och gen_ai.conversation.id på varje spann. |
413 Payload Too Large |
Begärandetext > 1 MB. | Dela upp span över flera förfrågningar. |
429 Too Many Requests |
Hastighetsgränsen är uppnådd. | Respektera Retry-After: 1 och backoffa med jitter. |
| Agenten syns oidentifierad i instrumentpanelerna |
gen_ai.agent.id är tomt eller inte en GUID. |
Använd agentens Entra appId. Om agenten saknar Entra-registrering, se Picking values. |
Nästa steg
- Agent 365-observabilitetskoncept – Dataflöde, identitetsmodeller, autentisering, omfattningar och gränser.
- Integrationsguide – Förkunskapskrav, autentiseringsrecept, SDK-installation och checklista för onboarding.
- Attributreferens – Specifikation, krav och vägledning för val av attributvärden per attribut.