---
title: OpenTelemetry para a Claude API
url: https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry
description: Rastreie suas requisições à Messages API, usos de ferramentas e sessões do Managed Agents com spans do OpenTelemetry do Claude SDK e da Claude API.
featureMetadata:
  topic:
    title: OpenTelemetry
    url: https://platform.claude.com/docs/en/manage-claude/opentelemetry
  status: beta
---

<Note>
  A exportação do OpenTelemetry está em beta. Ela é fornecida nos termos do seu contrato com a Anthropic, incluindo a seção Beta Services dos [Termos Específicos de Serviço](https://www.anthropic.com/legal/service-specific-terms).
</Note>

A Claude API e o SDK podem rastrear suas requisições à Messages API, usos de ferramentas e sessões do Managed Agents com o [OpenTelemetry](https://opentelemetry.io/). Você pode visualizar esses traces na plataforma de observabilidade que já possui. Use-os para depurar requisições com falha ou lentas, acompanhar o gasto de tokens e a "latency" (latência) e criar evals a partir de tráfego real. Você também pode ver cada requisição dentro dos próprios traces da sua aplicação, vinculada ao usuário ou à funcionalidade que a enviou.

O OpenTelemetry é um padrão neutro em relação a fornecedores, compatível com a maioria das plataformas de observabilidade. Um *trace* (rastreamento) é o registro completo de uma requisição ao longo do seu sistema. Um *span* (intervalo) é uma etapa em um trace, como uma requisição ao modelo ou um uso de ferramenta. A API e o SDK usam atributos das [convenções semânticas de GenAI](https://github.com/open-telemetry/semantic-conventions-genai), de modo que plataformas compatíveis com essas convenções conseguem reconhecer os spans sem configuração adicional.

## Primeiros passos

Você pode configurar o tracing do SDK, o tracing da API ou ambos. Configure ambos para ver os spans do SDK e da API de uma requisição em um único trace, como nos [traces de exemplo](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry#example-traces-and-how-to-read-them). Para requisições ao Claude Platform on AWS, os spans da API ficam em traces próprios.

<CardGroup cols={3}>
  <Card title="Configurar o tracing do SDK" icon="code-brackets" href="https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/sdk" layout="horizontal">
    Instale o SDK e registre um tracer provider.
  </Card>

  <Card title="Configurar o tracing da API" icon="cloud" href="https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/api" layout="horizontal">
    Adicione um destino no Claude Console.
  </Card>

  <Card title="Referência de spans" icon="book" href="https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans" layout="horizontal">
    Consulte os spans e seus atributos.
  </Card>
</CardGroup>

| O que você obtém                                                                                                                               | Tracing do SDK                                                                   | Tracing da API                                                                                        | Ambos juntos                                                                                          |
| ---------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- |
| Requisições da [Messages API](https://platform.claude.com/docs/pt-BR/api/messages/create)                                                      | ✅                                                                                | ✅                                                                                                     | ✅                                                                                                     |
| Requisições da [Sessions API](https://platform.claude.com/docs/pt-BR/managed-agents/sessions)                                                  | ✅                                                                                | ✅                                                                                                     | ✅                                                                                                     |
| [Uso de tokens](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry#count-tokens)                                               | ✅                                                                                | ✅                                                                                                     | ✅                                                                                                     |
| Cada execução do modelo dentro de uma requisição                                                                                               | —                                                                                | ✅                                                                                                     | ✅                                                                                                     |
| Turnos do [Managed Agents](https://platform.claude.com/docs/pt-BR/managed-agents/overview)                                                     | —                                                                                | ✅                                                                                                     | ✅                                                                                                     |
| [Ferramentas de servidor](https://platform.claude.com/docs/pt-BR/agents-and-tools/tool-use/server-tools), executadas pela API                  | —                                                                                | ✅                                                                                                     | ✅                                                                                                     |
| Ferramentas de cliente, executadas pelo [tool runner](https://platform.claude.com/docs/pt-BR/agents-and-tools/tool-use/tool-runner)            | ✅                                                                                | —                                                                                                     | ✅                                                                                                     |
| Ferramentas em um [sandbox auto-hospedado](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/sdk#trace-a-self-hosted-sandbox) | ✅                                                                                | —                                                                                                     | ✅                                                                                                     |
| Outras requisições da API, como o upload de arquivos                                                                                           | ✅                                                                                | —                                                                                                     | ✅                                                                                                     |
| Configuração                                                                                                                                   | [Código](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/sdk) | [Console](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/api)                     | Ambos                                                                                                 |
| Permissão necessária                                                                                                                           | Nenhuma                                                                          | [Administrador](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/api#what-you-need) | [Administrador](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/api#what-you-need) |
| Cobertura                                                                                                                                      | Clientes que usam o SDK                                                          | Qualquer cliente                                                                                      | Qualquer cliente                                                                                      |
| Suporte a plataformas de nuvem                                                                                                                 | Qualquer uma                                                                     | Claude Platform<br />Claude Platform on AWS                                                           | Claude Platform<br />Claude Platform on AWS                                                           |

Para o Claude Code, o Agent SDK ou o Cowork, consulte [Monitoramento do Claude Code](https://code.claude.com/docs/en/monitoring-usage), [Observabilidade do Agent SDK](https://code.claude.com/docs/en/agent-sdk/observability) ou [Monitoramento de atividade do Cowork](https://support.claude.com/en/articles/14477985-monitor-claude-cowork-activity-with-opentelemetry).

## Enviar traces para uma plataforma parceira

Envie traces para qualquer plataforma de observabilidade que aceite OTLP, incluindo estes parceiros:

<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">
    Plataforma unificada de observabilidade e avaliação para IA.
  </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">
    Plataforma de observabilidade ativa para agentes.
  </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">
    Plano de controle de IA unificado para observabilidade e avaliação.
  </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">
    Observabilidade e segurança com tecnologia de IA.
  </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/">
    Plataforma de observabilidade aberta totalmente gerenciada.
  </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">
    Plataforma de observabilidade para o novo formato do 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">
    Plataforma de código aberto de observabilidade e avaliação de agentes.
  </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">
    Plataforma de engenharia de agentes LangSmith.
  </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">
    Plataforma de observabilidade inteligente.
  </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">
    Plataforma completa para criar produtos de sucesso.
  </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/">
    Depure seu código quebrado e seus agentes que se comportam mal.
  </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">
    Observe, avalie e proteja seus agentes.
  </Card>
</CardGroup>

## Modos de conteúdo

Cada destino e cada cliente do SDK tem um modo de conteúdo, que define se os spans incluem os prompts e as respostas do modelo. Defina-o ao [adicionar um destino](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/api#add-a-destination) ou ao [configurar o SDK](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/sdk#configure-the-sdk).

* **Metadata only** (`metadata_only` no SDK): O padrão. Os spans incluem identificadores, tempos, status, contagens de tokens e textos que você escolhe, como os nomes e as descrições dos seus agentes e ferramentas e os nomes dos seus servidores MCP.
* **Full content** (`content` no SDK): Maior visibilidade. Os spans incluem os prompts e as respostas do modelo, além de tudo o que está em Metadata only.

Com Full content, você também pode ver por que uma execução falhou ou foi lenta, ler conversas completas e criar evals a partir de traces reais. Na [referência de spans do OpenTelemetry](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans), os atributos que contêm prompts e respostas são marcados com <Badge>Conteúdo</Badge>.

<Info>
  A sua plataforma de observabilidade armazena esse conteúdo de acordo com as próprias configurações de acesso e retenção, então verifique se elas atendem aos requisitos da sua organização.
</Info>

Se a sua organização tem uma restrição de tratamento de dados HIPAA, FERPA ou K-12 com a Anthropic, os destinos exportam apenas metadados, qualquer que seja o modo de conteúdo deles. Os spans do SDK não são afetados.

Com a [retenção zero de dados](https://platform.claude.com/docs/pt-BR/manage-claude/api-and-data-retention), você ainda pode usar Full content. Para requisições da Messages API, a API mantém o conteúdo exportado apenas na memória até entregá-lo ao destino. O [Claude Managed Agents](https://platform.claude.com/docs/pt-BR/managed-agents/overview) não é elegível para retenção zero de dados, e sua retenção de dados permanece a mesma quando você usa OpenTelemetry.

### Limites de conteúdo

Com Full content, cada span contém até 0,75 MB de conteúdo por padrão. Isso comporta uma janela de contexto de 200k tokens com texto em inglês e fica abaixo do limite de requisição de 1 MB de muitas plataformas de observabilidade e proxies. Se você escolher uma plataforma parceira como **Provider**, o Console define um limite que a plataforma aceita.

Quando o conteúdo ultrapassa o limite, o SDK ou a API o encurta e define `anthropic.content.truncated` como `true`. Spans de requisição removem primeiro o prompt do sistema e as mensagens mais antigas, e spans de ferramenta removem blocos a partir do fim do resultado. Imagens e documentos aparecem apenas como o tipo deles.

Altere o limite nestes casos:

* **Sua plataforma de observabilidade aceita payloads maiores:** Aumente ou remova o limite para manter inteiros os prompts e as respostas longos. Uma janela de contexto completa de 1M tokens precisa de cerca de 4 MB.
* **Sua plataforma de observabilidade ou um proxy na frente dela rejeita requisições grandes:** Diminua o limite.

No SDK, defina `traces.max_content_bytes` (typescript, java, php: `traces.maxContentBytes`; csharp: `Traces.MaxContentBytes`; go: `option.WithOpenTelemetryTracesMaxContentBytes()`). No Console, defina **Content mode** como **Full content** ao [adicionar um destino](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/api#add-a-destination) e, em seguida, defina **Maximum content size in MB** em **Advanced settings**.

## Traces de exemplo e como lê-los

### Uma requisição à Messages API

Sob o span da API de uma requisição que [cria uma mensagem](https://platform.claude.com/docs/pt-BR/api/messages/create), a API adiciona um span para cada requisição ao modelo e um span de ferramenta para cada uso de uma ferramenta de servidor ou de uma ferramenta de conector MCP que a API executa.

Neste exemplo, a sua aplicação chama o [tool runner](https://platform.claude.com/docs/pt-BR/agents-and-tools/tool-use/tool-runner), o helper do SDK que executa as suas ferramentas e envia os resultados delas de volta ao Claude. Cada requisição que o tool runner envia tem um span de cliente do SDK e um span de servidor da API. Os spans aparecem na seguinte ordem:

1. A sua aplicação inicia o span `answer_question` e chama o tool runner da Messages dentro dele (mostrado como o span [`anthropic.messages.tool_runner`](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-messages-tool-runner)).
2. O tool runner envia a primeira requisição (mostrada como o primeiro span de cliente [`anthropic.messages.create`](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-messages-create) e os spans abaixo dele). Nessa requisição, a API executa a ferramenta de busca na web entre duas requisições ao modelo.
3. Na segunda requisição ao modelo, o modelo pede para usar a ferramenta personalizada `get_weather`, então a primeira requisição termina.
4. O tool runner executa `get_weather` (mostrado como o span `anthropic.custom_tool_use get_weather`).
5. O tool runner envia a segunda requisição com o resultado da ferramenta (mostrada como o segundo span de cliente `anthropic.messages.create` e os spans abaixo dele).
6. Na segunda requisição, o modelo dá a resposta final.

![Exemplo de trace do tool runner da Messages: duas requisições com spans de cliente e de servidor, requisições ao modelo, web\_search e get\_weather](https://platform.claude.com/docs/images/opentelemetry-sdk-trace-shape.svg)

O SDK na sua aplicação emite o span [`anthropic.messages.tool_runner`](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-messages-tool-runner), o span [`anthropic.custom_tool_use`](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use) e o span de cliente de cada requisição. Para obter esses spans, [configure o tracing do SDK](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/sdk).

Cada requisição tem o seu uso de tokens registrado em vários dos seus spans. Para contar cada token uma única vez, consulte [Contagem de tokens](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry#count-tokens).

Com [Full content](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry#choose-a-content-mode), o span de servidor `anthropic.messages.create` contém o prompt e a resposta. O prompt do sistema fica em `gen_ai.system_instructions`, as mensagens da requisição em `gen_ai.input.messages` e a resposta em `gen_ai.output.messages`.

Para cada span e seus atributos, consulte a [referência de spans do OpenTelemetry](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans).

### Uma sessão do Managed Agents

Uma sessão tem um span para cada requisição da Sessions API e um span de turno para cada turno do agente. Um turno iniciado por uma requisição é filho do span dessa requisição. Um turno contém um span para cada requisição ao modelo e para cada ferramenta que a API executa, exceto nos [casos listados na referência de spans de ferramentas](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use). Ele também contém um span para cada avaliação de resultado.

Este exemplo acompanha uma requisição de chat, na qual sua aplicação envia uma mensagem para uma sessão e executa uma ferramenta personalizada. O trace tem spans tanto da sua aplicação quanto da API, na seguinte ordem:

1. Sua aplicação recebe uma requisição `POST /chat` de um usuário.
2. Sua aplicação inicia o executor de ferramentas de sessão do SDK, que lista e faz streaming dos eventos da sessão (mostrados como os spans `anthropic.sessions.events.stream` e `anthropic.sessions.events.list`).
3. Sua aplicação envia a mensagem do usuário para a sessão chamando `sessions.events.send`.
4. Um turno começa e inclui requisições ao modelo, um uso da ferramenta `bash` e um turno em outra thread (mostrados como o primeiro span `anthropic.session.turn` e os spans abaixo dele).
5. O modelo pede para usar a [ferramenta personalizada](https://platform.claude.com/docs/pt-BR/managed-agents/tools) `list_issues`, então o turno termina com o motivo de parada `requires_action`.
6. O executor de ferramentas de sessão executa `list_issues` (mostrado como o span `anthropic.custom_tool_use list_issues`) e envia seu resultado chamando `sessions.events.send`.
7. Um segundo turno começa com o resultado da ferramenta (mostrado como o último span `anthropic.session.turn`).

![Exemplo de trace de uma sessão do Managed Agents: seu span POST /chat, as requisições de stream de eventos e de lista de eventos do tool runner de sessão, os spans de cliente e de servidor da requisição que envia a mensagem do usuário, um turno com requisições ao modelo, um uso da ferramenta bash e um turno em outra thread, o runner executando list\_issues, os spans de cliente e de servidor da requisição que envia o resultado da ferramenta e um segundo turno.](https://platform.claude.com/docs/images/opentelemetry-trace-shape.svg)

O SDK na sua aplicação emite o span [`anthropic.custom_tool_use`](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use) e o span de cliente de cada requisição. Para obter esses spans, [configure o tracing do SDK](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/sdk).

Os spans de uma sessão podem estar em vários traces, por exemplo, quando você envia uma requisição posterior a partir de um novo trace raiz. Com [multiagente](https://platform.claude.com/docs/pt-BR/managed-agents/multiagent-orchestration) ativado, uma sessão também pode ter várias threads. Para encontrar os spans de que você precisa, agrupe-os por um ID.

* **Uma thread:** Agrupe os spans por `gen_ai.conversation.id`, que contém o ID da thread da sessão. Ordene-os pelo horário de início para ler a thread como uma transcrição.
* **Uma sessão inteira, com todas as suas threads:** Agrupe os spans por `anthropic.session.id`, entre traces.

Com [Conteúdo completo](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry#choose-a-content-mode), você pode ler o conteúdo de uma sessão a partir de seus spans.

* Para ler o conteúdo de um turno, use seu [span de turno](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-session-turn). O prompt do sistema está em `gen_ai.system_instructions` no primeiro span de turno de uma thread, a entrada em `gen_ai.input.messages` (suas mensagens e resultados de ferramentas, eventos `system.message` e mensagens de outras threads), e a saída em `gen_ai.output.messages` (as mensagens do agente, usos de ferramentas e resultados de ferramentas).
* Para ver os argumentos e o resultado de um uso de ferramenta, leia seu [span de ferramenta](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use). Os argumentos estão em `gen_ai.tool.call.arguments`, e o resultado está em `anthropic.tool_result.content`.

Para cada span e seus atributos, consulte a [referência de spans do OpenTelemetry](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans).

## Contagem de tokens

Para contar cada token uma única vez, some os spans de apenas uma origem para cada requisição. Quando uma requisição da Messages API tem tanto um span do SDK quanto um span da API, some seus spans da API. Ambos se chamam `anthropic.messages.create`, então diferencie-os pelo tipo: o span do SDK é `CLIENT` e seu filho, o span da API, é `SERVER`.

Para cada origem, some apenas os seguintes spans, porque alguns atributos de uso se repetem em mais de um nível dos spans da API:

* **Spans do SDK:** Some os spans [`anthropic.messages.create`](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-messages-create). Se uma requisição tiver [compactações](https://platform.claude.com/docs/pt-BR/build-with-claude/compaction), adicione também `anthropic.usage.compaction.input_tokens` e `anthropic.usage.compaction.output_tokens` do span, porque os atributos `gen_ai.usage.*` não incluem tokens de compactação. Se um [modelo de fallback](https://platform.claude.com/docs/pt-BR/build-with-claude/refusals-and-fallback) atendeu uma requisição, seu span tem o uso apenas do modelo que atendeu a resposta.
* **Spans da API de uma requisição da Messages API:** Some os spans [`anthropic.messages.create`](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-messages-create) ou seus spans [`anthropic.model_request`](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-model-request), não ambos. Se uma requisição tiver compactações, adicione também seus spans [`anthropic.compaction`](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-compaction). Não adicione também os atributos `anthropic.usage.compaction.*` do span `anthropic.messages.create`, porque eles contêm os mesmos tokens.
* **Spans da API de uma sessão do Managed Agents:** Some os spans `anthropic.model_request` e [`anthropic.session.outcome_evaluation`](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#anthropic-session-outcome-evaluation).

Os spans podem chegar mais de uma vez, por exemplo, quando uma entrega é repetida. Se a sua plataforma de observabilidade não remover duplicatas, conte cada span uma única vez pelo seu ID de trace e ID de span.

`gen_ai.usage.input_tokens` já inclui os tokens lidos e gravados no cache de prompt, então não adicione os atributos de cache a ele. Para todos os atributos de uso, consulte [Uso de tokens](https://platform.claude.com/docs/pt-BR/api/opentelemetry/spans#token-usage).

<Note>
  Não há garantia de que os spans exportados sejam um registro completo do seu uso da API. A entrega deles é feita com [melhor esforço](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/api#delivery-and-health), então um span pode ser perdido. Um chamador também pode omitir os spans de uma requisição desativando a flag de amostragem no [cabeçalho `traceparent`](https://platform.claude.com/docs/pt-BR/manage-claude/opentelemetry/api#connect-api-spans-to-your-own-traces) da requisição. Para acompanhar o uso de cada chave de API, por exemplo para identificar uma chave vazada, use a [Usage API](https://platform.claude.com/docs/pt-BR/manage-claude/usage-cost-api#usage-api), que também contabiliza o uso de requisições sem spans.
</Note>
