---
title: OpenTelemetry für die Claude API
url: https://platform.claude.com/docs/de/manage-claude/opentelemetry
description: Verfolge deine Messages-API-Anfragen, Tool-Nutzungen und Managed-Agents-Sessions mit OpenTelemetry-Spans aus dem Claude SDK und der Claude API.
featureMetadata:
  topic:
    title: OpenTelemetry
    url: https://platform.claude.com/docs/en/manage-claude/opentelemetry
  status: beta
---

<Note>
  Der OpenTelemetry-Export befindet sich in der Beta. Er wird im Rahmen deiner Vereinbarung mit Anthropic bereitgestellt, einschließlich des Abschnitts „Beta Services" der [Service Specific Terms](https://www.anthropic.com/legal/service-specific-terms).
</Note>

Die Claude API und das SDK können deine Messages-API-Anfragen, Tool-Nutzungen und Managed-Agents-Sessions mit [OpenTelemetry](https://opentelemetry.io/) tracen. Du kannst diese Traces in der Observability-Plattform ansehen, die du bereits hast. Nutze sie, um fehlgeschlagene oder langsame Anfragen zu debuggen, Token-Ausgaben und Latenz zu verfolgen und Evals aus echtem Traffic zu erstellen. Du kannst außerdem jede Anfrage in den eigenen Traces deiner Anwendung sehen, verknüpft mit dem Benutzer oder der Funktion, die sie gesendet hat.

OpenTelemetry ist ein herstellerneutraler Standard, den die meisten Observability-Plattformen unterstützen. Ein *trace* (Trace) ist die vollständige Aufzeichnung einer Anfrage durch dein System. Ein *span* (Span) ist ein Schritt in einem Trace, etwa eine Modellanfrage oder eine Tool-Nutzung. Die API und das SDK verwenden Attribute aus den [GenAI semantic conventions](https://github.com/open-telemetry/semantic-conventions-genai), sodass Plattformen, die diese Konventionen unterstützen, die Spans ohne zusätzliche Einrichtung erkennen können.

## Erste Schritte

Du kannst SDK-Tracing, API-Tracing oder beides einrichten. Richte beide ein, um die SDK- und API-Spans einer Anfrage in einem Trace zu sehen, wie in den [Beispiel-Traces](https://platform.claude.com/docs/de/manage-claude/opentelemetry#example-traces-and-how-to-read-them). Bei Anfragen an Claude Platform on AWS befinden sich die API-Spans stattdessen in eigenen Traces.

<CardGroup cols={3}>
  <Card title="SDK-Tracing einrichten" icon="code-brackets" href="https://platform.claude.com/docs/de/manage-claude/opentelemetry/sdk" layout="horizontal">
    Installiere das SDK und registriere einen Tracer Provider.
  </Card>

  <Card title="API-Tracing einrichten" icon="cloud" href="https://platform.claude.com/docs/de/manage-claude/opentelemetry/api" layout="horizontal">
    Füge in der Claude Console ein Ziel hinzu.
  </Card>

  <Card title="Span-Referenz" icon="book" href="https://platform.claude.com/docs/de/api/opentelemetry/spans" layout="horizontal">
    Schlage Spans und ihre Attribute nach.
  </Card>
</CardGroup>

| Was du bekommst                                                                                                                             | SDK-Tracing                                                                 | API-Tracing                                                                                | Beide zusammen                                                                             |
| ------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------ |
| [Messages API](https://platform.claude.com/docs/de/api/messages/create)-Anfragen                                                            | ✅                                                                           | ✅                                                                                          | ✅                                                                                          |
| [Sessions API](https://platform.claude.com/docs/de/managed-agents/sessions)-Anfragen                                                        | ✅                                                                           | ✅                                                                                          | ✅                                                                                          |
| [Token-Nutzung](https://platform.claude.com/docs/de/manage-claude/opentelemetry#count-tokens)                                               | ✅                                                                           | ✅                                                                                          | ✅                                                                                          |
| Jeder Modelldurchlauf innerhalb einer Anfrage                                                                                               | —                                                                           | ✅                                                                                          | ✅                                                                                          |
| Turns von [Managed Agents](https://platform.claude.com/docs/de/managed-agents/overview)                                                     | —                                                                           | ✅                                                                                          | ✅                                                                                          |
| [Server-Tools](https://platform.claude.com/docs/de/agents-and-tools/tool-use/server-tools), von der API ausgeführt                          | —                                                                           | ✅                                                                                          | ✅                                                                                          |
| Client-Tools, vom [Tool Runner](https://platform.claude.com/docs/de/agents-and-tools/tool-use/tool-runner) ausgeführt                       | ✅                                                                           | —                                                                                          | ✅                                                                                          |
| Tools in einer [selbst gehosteten Sandbox](https://platform.claude.com/docs/de/manage-claude/opentelemetry/sdk#trace-a-self-hosted-sandbox) | ✅                                                                           | —                                                                                          | ✅                                                                                          |
| Andere API-Anfragen, etwa das Hochladen von Dateien                                                                                         | ✅                                                                           | —                                                                                          | ✅                                                                                          |
| Einrichtung                                                                                                                                 | [Code](https://platform.claude.com/docs/de/manage-claude/opentelemetry/sdk) | [Console](https://platform.claude.com/docs/de/manage-claude/opentelemetry/api)             | Beide                                                                                      |
| Erforderliche Berechtigung                                                                                                                  | Keine                                                                       | [Admin](https://platform.claude.com/docs/de/manage-claude/opentelemetry/api#what-you-need) | [Admin](https://platform.claude.com/docs/de/manage-claude/opentelemetry/api#what-you-need) |
| Abdeckung                                                                                                                                   | Clients, die das SDK nutzen                                                 | Jeder Client                                                                               | Jeder Client                                                                               |
| Unterstützung von Cloud-Plattformen                                                                                                         | Alle                                                                        | Claude Platform<br />Claude Platform on AWS                                                | Claude Platform<br />Claude Platform on AWS                                                |

Für Claude Code, das Agent SDK oder Cowork siehe [Claude Code-Monitoring](https://code.claude.com/docs/en/monitoring-usage), [Agent SDK-Observability](https://code.claude.com/docs/en/agent-sdk/observability) oder [Cowork-Aktivitätsüberwachung](https://support.claude.com/en/articles/14477985-monitor-claude-cowork-activity-with-opentelemetry).

## Traces an eine Partnerplattform senden

Sende Traces an jede Observability-Plattform, die OTLP akzeptiert, einschließlich dieser Partner:

<CardGroup cols={3}>
  <Card title="Arize AI" image="https://platform.claude.com/docs/images/partner-logos/arize.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/arize-dark.svg" imageOffsetLeft={2} href="https://arize.com/docs/ax/integrations/platforms/claude-managed-agents/claude-managed-agents-tracing">
    Einheitliche Observability- und Evaluierungsplattform für KI.
  </Card>

  <Card title="Braintrust" image="https://platform.claude.com/docs/images/partner-logos/braintrust.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/braintrust-dark.svg" imageHeight={25} imageOffsetLeft={1} href="https://www.braintrust.dev/docs/integrations/ai-providers/anthropic#export-opentelemetry-traces-from-the-claude-api">
    Aktive Observability-Plattform für Agenten.
  </Card>

  <Card title="Databricks" image="https://platform.claude.com/docs/images/partner-logos/databricks.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/databricks-dark.svg" imageHeight={26} imageOffsetLeft={1} href="https://docs.databricks.com/aws/en/ai-gateway/unified-trace-table">
    Einheitliche KI-Control-Plane für Observability und Evaluierung.
  </Card>

  <Card title="Datadog" image="https://platform.claude.com/docs/images/partner-logos/datadog.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/datadog-dark.svg" imageHeight={28} imageOffsetLeft={2} href="https://docs.datadoghq.com/llm_observability/instrument/otel_instrumentation/?tab=python#using-claude-managed-agents">
    KI-gestützte Observability und Sicherheit.
  </Card>

  <Card title="Grafana Cloud" image="https://platform.claude.com/docs/images/partner-logos/grafana.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/grafana-dark.svg" imageHeight={34} imageOffsetLeft={2} href="https://grafana.com/docs/grafana-cloud/observe-and-act/agent-observability/guides/send-claude-platform-traces/">
    Vollständig verwaltete offene Observability-Plattform.
  </Card>

  <Card title="Honeycomb" image="https://platform.claude.com/docs/images/partner-logos/honeycomb.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/honeycomb-dark.svg" imageHeight={36} imageOffsetLeft={4} href="https://docs.honeycomb.io/send-data/use-cases/claude-platform">
    Observability-Plattform für die neue Gestalt von Software.
  </Card>

  <Card title="Langfuse" image="https://platform.claude.com/docs/images/partner-logos/langfuse.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/langfuse-dark.svg" imageHeight={26} imageOffsetLeft={1} href="https://langfuse.com/integrations/model-providers/claude-platform">
    Open-Source-Plattform für Agent-Observability und -Evaluierung.
  </Card>

  <Card title="LangSmith" image="https://platform.claude.com/docs/images/partner-logos/langchain.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/langchain-dark.svg" imageHeight={29} href="https://docs.langchain.com/langsmith/trace-anthropic">
    LangSmith-Plattform für Agent-Engineering.
  </Card>

  <Card title="New Relic" image="https://platform.claude.com/docs/images/partner-logos/new-relic.svg" imageHeight={27} imageOffsetLeft={1} href="https://docs.newrelic.com/docs/ai-monitoring/opentelemetry-ai-monitoring/#anthropic">
    Intelligente Observability-Plattform.
  </Card>

  <Card title="PostHog" image="https://platform.claude.com/docs/images/partner-logos/posthog.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/posthog-dark.svg" imageHeight={29} href="https://posthog.com/docs/ai-observability/installation/anthropic?tab=Claude+Platform&utm_source=anthropic&utm_campaign=anthropic-otel">
    All-in-one-Plattform für die Entwicklung erfolgreicher Produkte.
  </Card>

  <Card title="Sentry" image="https://platform.claude.com/docs/images/partner-logos/sentry.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/sentry-dark.svg" imageHeight={25} href="https://sentry.io/cookbook/trace-claude-platform-with-opentelemetry/">
    Debugge deinen fehlerhaften Code und deine Agenten, die aus dem Ruder laufen.
  </Card>

  <Card title="Splunk" image="https://platform.claude.com/docs/images/partner-logos/splunk.svg" imageDark="https://platform.claude.com/docs/images/partner-logos/splunk-dark.svg" imageHeight={27} imageOffsetLeft={1} href="https://agent-observability-docs.splunk.com/sdk-api/third-party-integrations/claude">
    Beobachte, bewerte und sichere deine Agenten ab.
  </Card>
</CardGroup>

## Content-Modi

Jedes Ziel und jeder SDK-Client hat einen Content-Modus, der festlegt, ob Spans Modell-Prompts und -Antworten enthalten. Lege ihn fest, wenn du [ein Ziel hinzufügst](https://platform.claude.com/docs/de/manage-claude/opentelemetry/api#add-a-destination) oder [das SDK konfigurierst](https://platform.claude.com/docs/de/manage-claude/opentelemetry/sdk#configure-the-sdk).

* **Metadata only** (`metadata_only` im SDK): Der Standard. Spans enthalten Bezeichner, Zeitangaben, Status, Token-Anzahlen und Text, den du festlegst, etwa die Namen und Beschreibungen deiner Agenten und Tools sowie die Namen deiner MCP-Server.
* **Full content** (`content` im SDK): Die größte Sichtbarkeit. Spans enthalten Modell-Prompts und -Antworten sowie alles aus Metadata only.

Mit Full content kannst du außerdem sehen, warum ein Lauf fehlgeschlagen oder langsam war, vollständige Konversationen lesen und Evals aus echten Traces erstellen. In der [OpenTelemetry-Span-Referenz](https://platform.claude.com/docs/de/api/opentelemetry/spans) sind Attribute, die Prompts und Antworten enthalten, mit <Badge>Content</Badge> gekennzeichnet.

<Info>
  Deine Observability-Plattform speichert diese Inhalte gemäß ihren eigenen Zugriffs- und Aufbewahrungseinstellungen. Prüfe daher, ob sie die Anforderungen deiner Organisation erfüllen.
</Info>

Wenn deine Organisation mit Anthropic eine HIPAA-, FERPA- oder K-12-Einschränkung für den Datenumgang hat, exportieren Ziele unabhängig von ihrem Content-Modus nur Metadaten. SDK-Spans sind davon nicht betroffen.

Mit [Zero Data Retention](https://platform.claude.com/docs/de/manage-claude/api-and-data-retention) kannst du weiterhin Full content verwenden. Bei Messages-API-Anfragen hält die API die exportierten Inhalte nur im Arbeitsspeicher, bis sie sie an das Ziel übermittelt. [Claude Managed Agents](https://platform.claude.com/docs/de/managed-agents/overview) kommt für Zero Data Retention nicht infrage, und seine Datenaufbewahrung bleibt unverändert, wenn du OpenTelemetry verwendest.

### Inhaltsgrenzen

Mit Full content enthält jeder Span standardmäßig bis zu 0,75 MB Inhalt. Das reicht für ein Kontextfenster von 200k Token mit englischem Text und bleibt unter dem Anfragelimit von 1 MB vieler Observability-Plattformen und Proxys. Wenn du eine Partnerplattform als **Provider** wählst, legt die Console ein Limit fest, das die Plattform akzeptiert.

Wenn der Inhalt das Limit überschreitet, kürzt ihn das SDK oder die API und setzt `anthropic.content.truncated` auf `true`. Bei Anfrage-Spans werden zuerst der System-Prompt und die ältesten Nachrichten entfernt, bei Tool-Spans werden Blöcke vom Ende des Ergebnisses her entfernt. Bilder und Dokumente erscheinen nur mit ihrem Typ.

Ändere das Limit in diesen Fällen:

* **Deine Observability-Plattform akzeptiert größere Payloads:** Erhöhe oder entferne das Limit, damit lange Prompts und Antworten vollständig bleiben. Ein volles 1M-Token-Kontextfenster benötigt etwa 4 MB.
* **Deine Observability-Plattform oder ein vorgeschalteter Proxy lehnt große Anfragen ab:** Senke das Limit.

Lege im SDK `traces.max_content_bytes` (typescript, java, php: `traces.maxContentBytes`; csharp: `Traces.MaxContentBytes`; go: `option.WithOpenTelemetryTracesMaxContentBytes()`) fest. Setze in der Console **Content mode** auf **Full content**, wenn du [ein Ziel hinzufügst](https://platform.claude.com/docs/de/manage-claude/opentelemetry/api#add-a-destination), und lege dann unter **Advanced settings** **Maximum content size in MB** fest.

## Beispiel-Traces und wie du sie liest

### Eine Messages-API-Anfrage

Unter dem API-Span einer Anfrage, die [eine Nachricht erstellt](https://platform.claude.com/docs/de/api/messages/create), fügt die API einen Span für jede Modellanfrage und einen Tool-Span für jede Nutzung eines Server-Tools oder eines MCP-Connector-Tools hinzu, das die API ausführt.

In diesem Beispiel ruft deine Anwendung den [Tool Runner](https://platform.claude.com/docs/de/agents-and-tools/tool-use/tool-runner) auf, den SDK-Helfer, der deine Tools ausführt und ihre Ergebnisse an Claude zurücksendet. Jede Anfrage, die der Tool Runner sendet, hat einen Client-Span vom SDK und einen Server-Span von der API. Die Spans erscheinen in der folgenden Reihenfolge:

1. Deine Anwendung startet den `answer_question`-Span und ruft darin den Messages Tool Runner auf (dargestellt als [`anthropic.messages.tool_runner`](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-messages-tool-runner)-Span).
2. Der Tool Runner sendet die erste Anfrage (dargestellt als erster [`anthropic.messages.create`](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-messages-create)-Client-Span und die Spans darunter). In dieser Anfrage führt die API das Websuche-Tool zwischen zwei Modellanfragen aus.
3. In der zweiten Modellanfrage fordert das Modell die Nutzung des benutzerdefinierten Tools `get_weather` an, daher endet die erste Anfrage.
4. Der Tool Runner führt `get_weather` aus (dargestellt als `anthropic.custom_tool_use get_weather`-Span).
5. Der Tool Runner sendet die zweite Anfrage mit dem Tool-Ergebnis (dargestellt als zweiter `anthropic.messages.create`-Client-Span und die Spans darunter).
6. In der zweiten Anfrage gibt das Modell die endgültige Antwort.

![Beispiel-Trace des Messages-Tool-Runners: zwei Anfragen mit Client- und Server-Spans, Modellanfragen, web\_search und get\_weather](https://platform.claude.com/docs/images/opentelemetry-sdk-trace-shape.svg)

Das SDK in deiner Anwendung erzeugt den [`anthropic.messages.tool_runner`](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-messages-tool-runner)-Span, den [`anthropic.custom_tool_use`](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use)-Span und den Client-Span jeder Anfrage. Um diese Spans zu erhalten, [richte SDK-Tracing ein](https://platform.claude.com/docs/de/manage-claude/opentelemetry/sdk).

Jede Anfrage hat ihre Token-Nutzung auf mehreren ihrer Spans. Um jedes Token nur einmal zu zählen, siehe [Zählen von Token](https://platform.claude.com/docs/de/manage-claude/opentelemetry#count-tokens).

Mit [Full content](https://platform.claude.com/docs/de/manage-claude/opentelemetry#choose-a-content-mode) enthält der `anthropic.messages.create`-Server-Span den Prompt und die Antwort. Der System-Prompt steht in `gen_ai.system_instructions`, die Nachrichten der Anfrage in `gen_ai.input.messages` und die Antwort in `gen_ai.output.messages`.

Für jeden Span und seine Attribute siehe die [OpenTelemetry-Span-Referenz](https://platform.claude.com/docs/de/api/opentelemetry/spans).

### Eine Managed Agents-Session

Eine Session hat einen Span für jede Anfrage an die Sessions API und einen Turn-Span für jeden Agent-Turn. Ein Turn, den eine Anfrage startet, ist ein Kind des Spans dieser Anfrage. Ein Turn enthält einen Span für jede Modellanfrage und jedes Tool, das die API ausführt, außer in den [Fällen, die in der Tool-Span-Referenz aufgeführt sind](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use). Er enthält außerdem einen Span für jede Outcome-Evaluierung.

Dieses Beispiel verfolgt eine Chat-Anfrage, in der deine Anwendung eine Nachricht an eine Session sendet und ein benutzerdefiniertes Tool ausführt. Der Trace enthält Spans sowohl von deiner Anwendung als auch von der API, in der folgenden Reihenfolge:

1. Deine Anwendung empfängt eine `POST /chat`-Anfrage von einem Benutzer.
2. Deine Anwendung startet den Session-Tool-Runner des SDK, der die Events der Session auflistet und streamt (dargestellt als die Spans `anthropic.sessions.events.stream` und `anthropic.sessions.events.list`).
3. Deine Anwendung sendet die Nachricht des Benutzers an die Session, indem sie `sessions.events.send` aufruft.
4. Ein Turn beginnt und umfasst Modellanfragen, eine `bash`-Tool-Nutzung und einen Turn in einem anderen Thread (dargestellt als der erste `anthropic.session.turn`-Span und die Spans darunter).
5. Das Modell fordert die Nutzung des [benutzerdefinierten Tools](https://platform.claude.com/docs/de/managed-agents/tools) `list_issues` an, daher endet der Turn mit dem Stop-Grund `requires_action`.
6. Der Session-Tool-Runner führt `list_issues` aus (dargestellt als der Span `anthropic.custom_tool_use list_issues`) und sendet dessen Ergebnis, indem er `sessions.events.send` aufruft.
7. Ein zweiter Turn beginnt mit dem Tool-Ergebnis (dargestellt als der letzte `anthropic.session.turn`-Span).

![Beispiel-Trace einer Managed-Agents-Session: dein POST /chat-Span, die Event-Stream- und Event-List-Anfragen des Session-Tool-Runners, die Client- und Server-Spans für die Anfrage, die die Benutzernachricht sendet, ein Turn mit Modellanfragen, einer bash-Tool-Nutzung und einem Turn in einem anderen Thread, der Runner, der list\_issues ausführt, die Client- und Server-Spans für die Anfrage, die das Tool-Ergebnis sendet, und ein zweiter Turn.](https://platform.claude.com/docs/images/opentelemetry-trace-shape.svg)

Das SDK in deiner Anwendung erzeugt den [`anthropic.custom_tool_use`](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use)-Span und den Client-Span jeder Anfrage. Um diese Spans zu erhalten, [richte SDK-Tracing ein](https://platform.claude.com/docs/de/manage-claude/opentelemetry/sdk).

Die Spans einer Session können sich in mehreren Traces befinden, zum Beispiel wenn du eine spätere Anfrage aus einem neuen Root-Trace sendest. Mit aktiviertem [Multiagent](https://platform.claude.com/docs/de/managed-agents/multiagent-orchestration) kann eine Session außerdem mehrere Threads haben. Um die benötigten Spans zu finden, gruppiere sie nach einer ID.

* **Ein Thread:** Gruppiere Spans nach `gen_ai.conversation.id`, das die Session-Thread-ID enthält. Sortiere sie nach Startzeit, um den Thread als Transkript zu lesen.
* **Eine ganze Session mit all ihren Threads:** Gruppiere Spans nach `anthropic.session.id`, über Traces hinweg.

Mit [Full content](https://platform.claude.com/docs/de/manage-claude/opentelemetry#choose-a-content-mode) kannst du den Inhalt einer Session aus ihren Spans lesen.

* Um den Inhalt eines Turns zu lesen, verwende seinen [Turn-Span](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-session-turn). Der System-Prompt befindet sich in `gen_ai.system_instructions` auf dem ersten Turn-Span eines Threads, die Eingabe in `gen_ai.input.messages` (deine Nachrichten und Tool-Ergebnisse, `system.message`-Events und Nachrichten aus anderen Threads) und die Ausgabe in `gen_ai.output.messages` (die Nachrichten, Tool-Nutzungen und Tool-Ergebnisse des Agenten).
* Um die Argumente und das Ergebnis einer Tool-Nutzung zu sehen, lies ihren [Tool-Span](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use). Die Argumente befinden sich in `gen_ai.tool.call.arguments` und das Ergebnis in `anthropic.tool_result.content`.

Zu jedem Span und seinen Attributen siehe die [OpenTelemetry-Span-Referenz](https://platform.claude.com/docs/de/api/opentelemetry/spans).

## Zählen von Token

Um jedes Token nur einmal zu zählen, summiere für jede Anfrage nur die Spans einer einzigen Quelle. Wenn eine Messages API-Anfrage sowohl einen SDK-Span als auch einen API-Span hat, summiere ihre API-Spans. Beide heißen `anthropic.messages.create`, unterscheide sie daher anhand ihrer Art: Der SDK-Span ist `CLIENT` und sein Kind, der API-Span, ist `SERVER`.

Summiere für jede Quelle nur die folgenden Spans, da sich einige Nutzungsattribute auf mehr als einer Ebene der API-Spans wiederholen:

* **SDK-Spans:** Summiere die [`anthropic.messages.create`](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-messages-create)-Spans. Wenn eine Anfrage [Compactions](https://platform.claude.com/docs/de/build-with-claude/compaction) hat, addiere außerdem `anthropic.usage.compaction.input_tokens` und `anthropic.usage.compaction.output_tokens` des Spans, da die `gen_ai.usage.*`-Attribute keine Compaction-Token enthalten. Wenn ein [Fallback-Modell](https://platform.claude.com/docs/de/build-with-claude/refusals-and-fallback) eine Anfrage bedient hat, enthält ihr Span nur die Nutzung des Modells, das die Antwort geliefert hat.
* **API-Spans für eine Messages API-Anfrage:** Summiere entweder die [`anthropic.messages.create`](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-messages-create)-Spans oder ihre [`anthropic.model_request`](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-model-request)-Spans, nicht beide. Wenn eine Anfrage Compactions hat, addiere außerdem ihre [`anthropic.compaction`](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-compaction)-Spans. Addiere nicht zusätzlich die `anthropic.usage.compaction.*`-Attribute des `anthropic.messages.create`-Spans, da sie dieselben Token enthalten.
* **API-Spans für eine Managed Agents-Session:** Summiere die Spans `anthropic.model_request` und [`anthropic.session.outcome_evaluation`](https://platform.claude.com/docs/de/api/opentelemetry/spans#anthropic-session-outcome-evaluation).

Spans können mehr als einmal ankommen, zum Beispiel wenn eine Zustellung wiederholt wird. Wenn deine Observability-Plattform keine Duplikate entfernt, zähle jeden Span anhand seiner Trace-ID und Span-ID nur einmal.

`gen_ai.usage.input_tokens` enthält bereits die aus dem Prompt-Cache gelesenen und in ihn geschriebenen Token, addiere die Cache-Attribute also nicht dazu. Alle Nutzungsattribute findest du unter [Token-Nutzung](https://platform.claude.com/docs/de/api/opentelemetry/spans#token-usage).

<Note>
  Es ist nicht garantiert, dass exportierte Spans eine vollständige Aufzeichnung deiner API-Nutzung sind. Ihre Zustellung ist [Best Effort](https://platform.claude.com/docs/de/manage-claude/opentelemetry/api#delivery-and-health), daher kann ein Span verloren gehen. Ein Aufrufer kann die Spans einer Anfrage außerdem auslassen, indem er das Sampled-Flag im [`traceparent`-Header](https://platform.claude.com/docs/de/manage-claude/opentelemetry/api#connect-api-spans-to-your-own-traces) der Anfrage deaktiviert. Um die Nutzung jedes API-Keys zu verfolgen, zum Beispiel um einen geleakten Key zu erkennen, verwende die [Usage API](https://platform.claude.com/docs/de/manage-claude/usage-cost-api#usage-api), die auch die Nutzung von Anfragen ohne Spans erfasst.
</Note>
