---
title: Referencia de spans de OpenTelemetry
url: https://platform.claude.com/docs/es/api/opentelemetry/spans
description: Los spans y atributos de span de OpenTelemetry que emiten la Claude API y el Claude SDK.
featureMetadata:
  topic:
    title: OpenTelemetry
    url: https://platform.claude.com/docs/en/manage-claude/opentelemetry
  status: beta
---

<Note>
  La exportación de OpenTelemetry está en beta. Se proporciona en virtud de tu acuerdo con Anthropic, incluida la sección de Servicios Beta de los [Términos Específicos del Servicio](https://www.anthropic.com/legal/service-specific-terms). Los nombres y atributos de los spans pueden cambiar durante la beta.
</Note>

Para configurar la exportación, consulta [Usa OpenTelemetry con el Claude SDK](https://platform.claude.com/docs/es/manage-claude/opentelemetry/sdk) y [Usa OpenTelemetry con la Claude API](https://platform.claude.com/docs/es/manage-claude/opentelemetry/api).

## Nombres y tipos de spans

| Propiedad                 | Spans del SDK                                                                                                                                      | Spans de la API                                               |
| ------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------- |
| `service.name`            | El `service.name` de la aplicación                                                                                                                 | `claude-platform`                                             |
| Ámbito de instrumentación | `com.anthropic.sdk.<language>` o `com.anthropic.sdk.cli`, más `.<platform>` en el cliente de una plataforma en la nube, con la versión del paquete | `com.anthropic.claude-platform`                               |
| Tipo de span              | `CLIENT` en el span de una solicitud, `INTERNAL` en otro caso                                                                                      | `SERVER` en el span de una solicitud, `INTERNAL` en otro caso |

* **Los spans para solicitudes** tienen el nombre del método de la API de la solicitud: `anthropic.` seguido de la ruta del método en la referencia de la API, con puntos en lugar de barras y sin `beta`. Por ejemplo, `client.beta.sessions.events.send()` (csharp, go: `client.Beta.Sessions.Events.Send()`; java: `client.beta().sessions().events().send()`; php: `$client->beta->sessions->events->send()`; ruby: `client.beta.sessions.events.send_()`) envía una solicitud para [enviar eventos de sesión](https://platform.claude.com/docs/es/api/beta/sessions/events/send), y sus spans tienen el nombre [`anthropic.sessions.events.send`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-sessions-events-send).
* **Los spans de herramientas** tienen un nombre fijo, un espacio y el nombre de la herramienta, por ejemplo [`anthropic.tool_use bash`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use).

## Estado del span

* **`OK`:** El paso se completó.
* **`ERROR`:** El paso falló.
* **Sin establecer:** La aplicación canceló el paso, por ejemplo cuando envió un evento [`user.interrupt`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_user_interrupt_event).

El span de un stream termina cuando termina el stream. Si la aplicación cierra el stream antes de tiempo, el span del SDK tiene el estado sin establecer, por lo que el span del SDK de un stream que nunca se completa, como [`anthropic.sessions.events.stream`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-sessions-method), tiene el estado sin establecer o `ERROR`.

## Atributos

Los atributos usan las [convenciones semánticas de OpenTelemetry para IA generativa](https://github.com/open-telemetry/semantic-conventions-genai) (`gen_ai.*`) cuando existe una. Los atributos de Anthropic comienzan con `anthropic.`. Los spans siguen las convenciones en el commit [`e57c543b`](https://github.com/open-telemetry/semantic-conventions-genai/tree/e57c543b4889619eb2a05702471937db5119165d) del 24 de septiembre de 2026. Las convenciones todavía están en desarrollo.

### Atributos comunes

Cada span de una solicitud tiene los siguientes atributos, salvo donde una descripción indique lo contrario. Otros spans solo pueden tener los tres primeros:

| Atributo                    | Tipo     | Descripción                                                                                                                                                                    |
| --------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `gen_ai.provider.name`      | `string` | `anthropic`. En cada span.<br />**SDK:** `aws.bedrock` en los clientes de Amazon Bedrock (Mantle incluido) y `gcp.vertex_ai` en el cliente para Google Cloud's Agent Platform. |
| `anthropic.organization.id` | `string` | El ID de la organización.                                                                                                                                                      |
| `anthropic.workspace.id`    | `string` | El ID del espacio de trabajo en el que se ejecuta el trabajo.                                                                                                                  |
| `anthropic.request.id`      | `string` | El valor del encabezado de respuesta `request-id`.                                                                                                                             |
| `http.request.method`       | `string` | El método HTTP de la solicitud, por ejemplo `POST`.                                                                                                                            |
| `http.route`                | `string` | La ruta del endpoint, con marcadores de posición para sus parámetros de ruta, por ejemplo `/v1/sessions/{session_id}`.                                                         |
| `http.response.status_code` | `int`    | El código de estado HTTP de la respuesta final. Para un stream, el código de estado enviado con los encabezados. Ausente cuando no hubo respuesta.                             |
| `server.address`            | `string` | El host al que se envió la solicitud, por ejemplo `api.anthropic.com`.                                                                                                         |
| `server.port`               | `int`    | El puerto de la URL de la solicitud, o el puerto predeterminado de su esquema cuando la URL no tiene uno.                                                                      |
| `url.scheme`                | `string` | El esquema de la URL, por ejemplo `https`.                                                                                                                                     |
| `url.path`                  | `string` | La ruta de la URL, por ejemplo `/v1/messages`.                                                                                                                                 |
| `url.query`                 | `string` | La cadena de consulta de la URL, solo con los parámetros de consulta que define el endpoint. Ausente cuando no hay ninguno.                                                    |
| `url.full`                  | `string` | La URL de la solicitud.                                                                                                                                                        |

En Claude Platform on AWS, los spans de la API no tienen `server.address`, `server.port` ni `url.full`.

### Atributos de sesión

En una sesión de Managed Agents, los spans tienen los siguientes atributos. Los spans de una sesión pueden estar en más de una traza, así que para armar una vista de la sesión, como una transcripción, [agrupa sus spans por estos IDs](https://platform.claude.com/docs/es/manage-claude/opentelemetry#a-managed-agents-session).

| Atributo                 | Tipo     | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------------------ | -------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `anthropic.session.id`   | `string` | El ID de la sesión. Ausente en los spans de los métodos que no actúan sobre una sesión, como [`anthropic.sessions.list`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-sessions-method).                                                                                                                                                                                                                                                                                                                        |
| `gen_ai.conversation.id` | `string` | El ID del hilo de la sesión al que pertenece el span. La [opción `conversation_id` (typescript, java, php: `conversationId`; csharp: `ConversationId`; go: `option.WithOpenTelemetryConversationID()`)](https://platform.claude.com/docs/es/manage-claude/opentelemetry/sdk#configure-the-sdk) del SDK lo reemplaza con tu propio ID de conversación. Ausente en los spans del SDK sin hilo a menos que configures la opción, y en los spans de la API para solicitudes de la Sessions API distintas de las solicitudes a un solo hilo. |

### Atributos de contenido

Los atributos etiquetados con <Badge>Content</Badge> solo están en los spans en modo de contenido, tanto del SDK como de la API. Consulta [en qué se diferencian los modos de contenido en la guía](https://platform.claude.com/docs/es/manage-claude/opentelemetry#choose-a-content-mode). Cuando este contenido es demasiado grande, el SDK y la API [lo acortan](https://platform.claude.com/docs/es/manage-claude/opentelemetry#content-limits) y establecen `anthropic.content.truncated` en `true`. Si las salvaguardas de Anthropic excluyen contenido de una respuesta, los spans de la API tampoco lo incluyen.

Los atributos de mensaje son cadenas JSON en el formato de mensaje de las convenciones GenAI de OpenTelemetry. Cada bloque de contenido de Anthropic se convierte en una parte de mensaje de las convenciones GenAI, en la Messages API y en los eventos de mensaje de Managed Agents como `agent.message`:

| Bloque de contenido de Anthropic                                                                                      | Parte de mensaje de las convenciones GenAI                                                                                                                             |
| --------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `text`                                                                                                                | `text`                                                                                                                                                                 |
| `tool_use`, `server_tool_use`                                                                                         | `tool_call`, con `anthropic_toolset_name` para un bloque `tool_use` que tenga un `toolset_name`, como `computer`                                                       |
| `mcp_tool_use`                                                                                                        | `tool_call` con `anthropic_mcp_server_name`                                                                                                                            |
| `tool_result`, `mcp_tool_result`, el bloque de resultado de una herramienta de servidor como `web_search_tool_result` | `tool_call_response`                                                                                                                                                   |
| `thinking`                                                                                                            | `reasoning`, sin la firma del bloque `thinking`. No aparece en los spans de Managed Agents, porque el evento `agent.thinking` no incluye el contenido del pensamiento. |
| Cualquier otro bloque, como `image`                                                                                   | El `type` del bloque con el prefijo `anthropic_`, como `anthropic_image`. La parte no tiene otros campos.                                                              |

Cada evento de uso de herramienta o de resultado de herramienta de Managed Agents también se convierte en una parte de mensaje de las convenciones GenAI:

| Evento de Managed Agents                                                                    | Parte de mensaje de las convenciones GenAI  |
| ------------------------------------------------------------------------------------------- | ------------------------------------------- |
| `agent.tool_use`, `agent.custom_tool_use`                                                   | `tool_call`                                 |
| `agent.mcp_tool_use`                                                                        | `tool_call` con `anthropic_mcp_server_name` |
| `user.tool_result`, `user.custom_tool_result`, `agent.tool_result`, `agent.mcp_tool_result` | `tool_call_response`                        |

### Uso de tokens

Los siguientes spans tienen atributos de uso de tokens: [`anthropic.messages.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-create), [`anthropic.model_request`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-model-request), [`anthropic.compaction`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-compaction) y [`anthropic.session.outcome_evaluation`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-session-outcome-evaluation). Los valores corresponden al paso del span, por ejemplo la solicitud, la solicitud al modelo o la compactación. Para contar cada token una sola vez, consulta [cómo contar tokens en la guía](https://platform.claude.com/docs/es/manage-claude/opentelemetry#count-tokens).

| Atributo                                                   | Tipo  | Descripción                                                                                                                                                                                                     |
| ---------------------------------------------------------- | ----- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `gen_ai.usage.input_tokens`                                | `int` | Los tokens de entrada, incluidas las lecturas y escrituras de caché.                                                                                                                                            |
| `gen_ai.usage.output_tokens`                               | `int` | Los tokens de salida.                                                                                                                                                                                           |
| `gen_ai.usage.cache_write.input_tokens`                    | `int` | Los tokens escritos en la caché de prompts. Ausente en los spans [`anthropic.session.outcome_evaluation`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-session-outcome-evaluation).    |
| `anthropic.usage.cache_creation.ephemeral_5m_input_tokens` | `int` | Los tokens escritos en la caché de 5 minutos. Solo en los spans de solicitudes de la Messages API. En el span del SDK de una respuesta en streaming, solo los tokens escritos antes del primer token de salida. |
| `anthropic.usage.cache_creation.ephemeral_1h_input_tokens` | `int` | Los tokens escritos en la caché de 1 hora. Solo en los spans para solicitudes de la Messages API. En el span del SDK de una respuesta en streaming, solo los tokens escritos antes del primer token de salida.  |
| `gen_ai.usage.cache_read.input_tokens`                     | `int` | Los tokens leídos de la caché de prompts. Ausente en los spans [`anthropic.session.outcome_evaluation`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-session-outcome-evaluation).      |

## Spans

Un span puede provenir del SDK en la aplicación o de la API, por lo que cada span en esta referencia indica sus fuentes. Las descripciones que comienzan con **Messages API:** o **Managed Agents:** corresponden a los spans de ese producto. Las descripciones de atributos que comienzan con una fuente, como **SDK:** o **API:**, corresponden a los spans de esa fuente.

### `anthropic.messages.create`

* **Fuente:** El SDK y la API.
* **Tipo:** `CLIENT` desde el SDK, `SERVER` desde la API.
* **Padre del span del SDK:** El span que está activo en la aplicación cuando llama al método. Si no hay ningún span activo, no hay padre.
* **Padre del span de la API:** El span en el encabezado `traceparent` de la solicitud, que es el span del SDK cuando la solicitud proviene del SDK. Sin el encabezado, el span de la API no tiene padre. Consulta [cómo enviar el encabezado `traceparent`](https://platform.claude.com/docs/es/manage-claude/opentelemetry/api#connect-api-spans-to-your-own-traces).
* **Hijos del span del SDK:** El span de la API para esa solicitud.
* **Hijos del span de la API:** Un span [`anthropic.model_request`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-model-request) por cada solicitud al modelo, un [span de herramienta](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use) por cada uso de una herramienta de servidor o de una herramienta del conector MCP que la API ejecuta en la solicitud, y un span [`anthropic.compaction`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-compaction) por cada compactación.

El SDK emite este span por cada solicitud de Messages, con o sin streaming.

La API emite este span por cada solicitud [`POST /v1/messages`](https://platform.claude.com/docs/es/api/messages/create) que autentica. No emite el span para una solicitud al [endpoint compatible con OpenAI](https://platform.claude.com/docs/es/cli-sdks-libraries/libraries/openai-sdk), `POST /v1/chat/completions`.

La API emite un span por solicitud, incluso cuando la atiende un [modelo de respaldo](https://platform.claude.com/docs/es/build-with-claude/refusals-and-fallback).

El span tiene los [atributos de uso de tokens](https://platform.claude.com/docs/es/api/opentelemetry/spans#token-usage). El span del SDK también tiene los atributos de cada [span del SDK para una solicitud](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-resources-method).

| Atributo                                   | Tipo       | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| ------------------------------------------ | ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `gen_ai.operation.name`                    | `string`   | `chat`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `gen_ai.request.model`                     | `string`   | El [`model`](https://platform.claude.com/docs/es/api/messages/create#create.model) de la solicitud.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `gen_ai.response.id`                       | `string`   | El [`id`](https://platform.claude.com/docs/es/api/messages/create#message) de la respuesta.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `gen_ai.response.model`                    | `string`   | El modelo que atendió la solicitud. Difiere del modelo solicitado cuando la solicitud usa un alias de modelo, o cuando un [modelo de respaldo](https://platform.claude.com/docs/es/build-with-claude/refusals-and-fallback) atendió la solicitud.                                                                                                                                                                                                                                                                                                                                       |
| `anthropic.message.stop_reason`            | `string`   | El [`stop_reason`](https://platform.claude.com/docs/es/api/messages#stop_reason) de la respuesta, por ejemplo `end_turn`.                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `anthropic.response.service_tier`          | `string`   | El nivel de servicio que atendió la solicitud: el [`usage.service_tier`](https://platform.claude.com/docs/es/api/messages#usage) de la respuesta. Consulta [cómo se asignan niveles a las solicitudes](https://platform.claude.com/docs/es/api/service-tiers#how-requests-get-assigned-tiers).                                                                                                                                                                                                                                                                                          |
| `error.type`                               | `string`   | El [tipo de error](https://platform.claude.com/docs/es/api/errors#http-errors) de una solicitud fallida, por ejemplo `rate_limit_error`.<br />**SDK:** También los demás valores en [spans del SDK para solicitudes](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-resources-method).<br />**API:** `api_error` cuando la API termina la solicitud sin una respuesta de error.                                                                                                                                                                                  |
| `gen_ai.response.time_to_first_chunk`      | `double`   | Solo en el span del SDK de una respuesta en streaming. Los segundos desde que el SDK envió por primera vez la solicitud hasta el primer evento `content_block_delta` del stream, si tiene uno.                                                                                                                                                                                                                                                                                                                                                                                          |
| `gen_ai.usage.reasoning.output_tokens`     | `int`      | Los tokens de pensamiento de la respuesta. Forman parte de los tokens de salida. Ausente cuando el uso de la respuesta no tiene detalles de los tokens de salida.                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `anthropic.usage.compaction.input_tokens`  | `int`      | Tokens de entrada de las [compactaciones](https://platform.claude.com/docs/es/build-with-claude/compaction) de la solicitud, incluidas las lecturas y escrituras de caché. No forman parte de `gen_ai.usage.input_tokens`. Ausente cuando la respuesta no tiene compactación.                                                                                                                                                                                                                                                                                                           |
| `anthropic.usage.compaction.output_tokens` | `int`      | Tokens de salida de las compactaciones de la solicitud. No forman parte de `gen_ai.usage.output_tokens`. Ausente cuando la respuesta no tiene compactación.                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `gen_ai.request.max_tokens`                | `int`      | El [`max_tokens`](https://platform.claude.com/docs/es/api/messages/create#create.max_tokens) de la solicitud.                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `gen_ai.request.temperature`               | `double`   | La [`temperature`](https://platform.claude.com/docs/es/api/messages/create#create.temperature) de la solicitud. Ausente cuando la solicitud no la establece.                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `gen_ai.request.top_p`                     | `double`   | El [`top_p`](https://platform.claude.com/docs/es/api/messages/create#create.top_p) de la solicitud. Ausente cuando la solicitud no lo establece.                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `gen_ai.request.top_k`                     | `int`      | El [`top_k`](https://platform.claude.com/docs/es/api/messages/create#create.top_k) de la solicitud. Ausente cuando la solicitud no lo establece.                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `gen_ai.request.stream`                    | `boolean`  | `true` cuando la solicitud establece [`stream: true`](https://platform.claude.com/docs/es/api/messages/create#create.stream). Ausente en otro caso.                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| `gen_ai.request.reasoning.level`           | `string`   | El [`effort`](https://platform.claude.com/docs/es/api/messages/create#create.output_config.effort) en el [`output_config`](https://platform.claude.com/docs/es/api/messages/create#create.output_config) de la solicitud. Ausente cuando la solicitud no lo establece.                                                                                                                                                                                                                                                                                                                  |
| `gen_ai.output.type`                       | `string`   | `json` cuando la solicitud establece el formato de salida en JSON. Ausente en otro caso.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `anthropic.request.service_tier`           | `string`   | El [`service_tier`](https://platform.claude.com/docs/es/api/messages/create#create.service_tier) de la solicitud. Ausente cuando la solicitud no lo establece.                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `anthropic.thinking.type`                  | `string`   | El [`thinking.type`](https://platform.claude.com/docs/es/api/messages/create#create.thinking) de la solicitud. Ausente cuando la solicitud no lo establece.                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `anthropic.thinking.budget_tokens`         | `int`      | El [`budget_tokens`](https://platform.claude.com/docs/es/api/messages#thinking_config_enabled.budget_tokens) en el objeto [`thinking`](https://platform.claude.com/docs/es/api/messages/create#create.thinking) de la solicitud. Ausente cuando la solicitud no lo establece.                                                                                                                                                                                                                                                                                                           |
| `anthropic.beta`                           | `string[]` | Solo en el span del SDK. Los nombres de beta en el encabezado [`anthropic-beta`](https://platform.claude.com/docs/es/api/beta/messages/create#create.betas) de la solicitud.                                                                                                                                                                                                                                                                                                                                                                                                            |
| `gen_ai.system_instructions`               | `string`   | <Badge>Content</Badge> Una cadena JSON que sigue el esquema [`SystemInstructions`](https://github.com/open-telemetry/semantic-conventions-genai/blob/e57c543b4889619eb2a05702471937db5119165d/model/gen-ai/gen-ai-system-instructions.json) de OpenTelemetry. La indicación del sistema ([`system`](https://platform.claude.com/docs/es/api/messages/create#create.system)) de la solicitud.                                                                                                                                                                                            |
| `gen_ai.input.messages`                    | `string`   | <Badge>Content</Badge> Una cadena JSON que sigue el esquema [`InputMessages`](https://github.com/open-telemetry/semantic-conventions-genai/blob/e57c543b4889619eb2a05702471937db5119165d/model/gen-ai/gen-ai-input-messages.json) de OpenTelemetry. Los [`messages`](https://platform.claude.com/docs/es/api/messages/create#create.messages) de la solicitud.                                                                                                                                                                                                                          |
| `gen_ai.output.messages`                   | `string`   | <Badge>Content</Badge> Una cadena JSON que sigue el esquema [`OutputMessages`](https://github.com/open-telemetry/semantic-conventions-genai/blob/e57c543b4889619eb2a05702471937db5119165d/model/gen-ai/gen-ai-output-messages.json) de OpenTelemetry. El [`content`](https://platform.claude.com/docs/es/api/messages/create#message) de la respuesta, como un mensaje `assistant`.<br />**SDK:** En un stream, solo cuando la aplicación lee el stream como se describe en [Trazado de un stream](https://platform.claude.com/docs/es/manage-claude/opentelemetry/sdk#trace-a-stream). |
| `gen_ai.request.stop_sequences`            | `string[]` | <Badge>Content</Badge> Las [`stop_sequences`](https://platform.claude.com/docs/es/api/messages/create#create.stop_sequences) de la solicitud.                                                                                                                                                                                                                                                                                                                                                                                                                                           |

Los spans de una solicitud no tienen los recuentos de uso de herramientas de servidor de la respuesta, como `web_search_requests`. En su lugar, la API emite un [span de herramienta](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use) por cada uso de una herramienta de servidor.

### `anthropic.messages.count_tokens`

* **Fuente:** El SDK. La API no emite un span para [`POST /v1/messages/count_tokens`](https://platform.claude.com/docs/es/api/messages/count_tokens).
* **Tipo:** `CLIENT`.
* **Padre:** El span que está activo en la aplicación cuando llama al método, o ninguno si no hay ningún span activo.
* **Hijos:** Ninguno.

| Atributo                                      | Tipo     | Descripción                                                                                                   |
| --------------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------- |
| `gen_ai.request.model`                        | `string` | El modelo de la solicitud.                                                                                    |
| `anthropic.message.count_tokens.input_tokens` | `int`    | El recuento de tokens en la respuesta. Este recuento no es uso. No lo incluyas cuando sumes el uso de tokens. |

### `anthropic.sessions.create`

Igual que [`anthropic.sessions.<method>`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-sessions-method), excepto por los siguientes hijos y atributos:

* **Hijos del span del SDK:** El span de la API para esa solicitud.
* **Hijos del span de la API:** El span [`anthropic.session.turn`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-session-turn) del primer turno, cuando la solicitud tiene [`initial_events`](https://platform.claude.com/docs/es/api/beta/sessions/create#create.initial_events) no vacíos.

| Atributo                           | Tipo     | Descripción                                                                                              |
| ---------------------------------- | -------- | -------------------------------------------------------------------------------------------------------- |
| `gen_ai.agent.id`                  | `string` | El ID del agente a partir del cual se creó la sesión.                                                    |
| `gen_ai.agent.name`                | `string` | El nombre de ese agente.<br />**SDK:** Ausente cuando la solicitud falló.                                |
| `gen_ai.request.model`             | `string` | El modelo de ese agente, que ejecuta el hilo principal.<br />**SDK:** Ausente cuando la solicitud falló. |
| `anthropic.session.environment.id` | `string` | El ID del entorno de la sesión.                                                                          |

### `anthropic.sessions.events.send`

Igual que [`anthropic.sessions.<method>`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-sessions-method), excepto por los hijos del span de la API.

* **Hijos del span del SDK:** El span de la API para esa solicitud.
* **Hijos del span de la API:** El span [`anthropic.session.turn`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-session-turn) de cada turno que comienza debido a los eventos de la solicitud.

### `anthropic.sessions.update`

Igual que [`anthropic.sessions.<method>`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-sessions-method), excepto por los hijos del span de la API.

* **Hijos del span del SDK:** El span de la API para esa solicitud.
* **Hijos del span de la API:** El span [`anthropic.session.turn`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-session-turn) de cada turno que se reanuda porque la solicitud aumenta o elimina el [presupuesto de la sesión](https://platform.claude.com/docs/es/managed-agents/budgets#resume-a-session-at-its-budget).

### `anthropic.session.turn`

* **Fuente:** La API, para sesiones de Managed Agents.

* **Tipo:** `INTERNAL`.

* **Padre:** Depende de por qué comenzó el turno:

  * El span [`anthropic.sessions.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-sessions-create), para el primer turno de una sesión que se creó con [`initial_events`](https://platform.claude.com/docs/es/api/beta/sessions/create#create.initial_events) no vacíos.
  * El span [`anthropic.sessions.events.send`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-sessions-events-send) para la solicitud en la que se envió el evento, para un turno que comenzó debido a un evento, por ejemplo un evento [`user.message`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_user_message_event).
  * El span [`anthropic.sessions.update`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-sessions-update), para un turno que se reanuda porque el presupuesto de la sesión se aumentó o se eliminó mediante la solicitud.
  * El span `anthropic.session.turn` del turno del [agente que ejecuta la sesión](https://platform.claude.com/docs/es/managed-agents/multiagent-orchestration) durante el cual ese agente inició este turno, para un turno en otro hilo.
  * Ninguno, para un turno que comienza porque un agente en otro hilo respondió o terminó su turno, como un agente al que llamó el agente principal.

* **Hijos:**

  * Un span [`anthropic.model_request`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-model-request) por cada solicitud al modelo en el turno.
  * Un span de herramienta cada vez que la API ejecuta una herramienta en el turno, excepto en los [casos enumerados en la sección de spans de herramientas](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use).
  * Un span `anthropic.session.turn` por cada turno que el agente que ejecuta la sesión inició en otro hilo durante este turno.
  * Un span [`anthropic.session.outcome_evaluation`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-session-outcome-evaluation) por cada iteración de una evaluación de resultados que inicia este turno.

Un turno comienza cuando su hilo entra en el estado `running` y termina cuando el hilo sale de él.

| Atributo                             | Tipo     | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| ------------------------------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `gen_ai.operation.name`              | `string` | `invoke_agent`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| `gen_ai.agent.id`                    | `string` | El ID del agente que ejecuta el hilo del turno. Ausente en un hilo de [asesor](https://platform.claude.com/docs/es/managed-agents/multiagent-orchestration#advisor-threads).                                                                                                                                                                                                                                                                                                                                                               |
| `gen_ai.agent.name`                  | `string` | El nombre de ese agente. `anthropic.advisor` en un hilo de asesor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `gen_ai.request.model`               | `string` | El modelo de ese agente. En un hilo de asesor, el modelo del asesor.                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `anthropic.session.turn.stop_reason` | `string` | Por qué terminó el turno: el [`stop_reason.type`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_session_thread_status_idle_event) del evento [`session.thread_status_idle`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_session_thread_status_idle_event), por ejemplo `requires_action`. Ausente cuando el hilo no quedó inactivo.                                                                                                                                |
| `error.type`                         | `string` | El [`error.type`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_session_error_event) del evento [`session.error`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_session_error_event) que terminó el turno, si el turno falló.                                                                                                                                                                                                                                        |
| `gen_ai.agent.description`           | `string` | La descripción de ese agente. Ausente en un hilo de asesor o cuando el agente no tiene una.                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `gen_ai.system_instructions`         | `string` | <Badge>Content</Badge> Una cadena JSON que sigue el esquema [`SystemInstructions`](https://github.com/open-telemetry/semantic-conventions-genai/blob/e57c543b4889619eb2a05702471937db5119165d/model/gen-ai/gen-ai-system-instructions.json) de OpenTelemetry. La indicación del sistema vigente para el turno. Solo en el primer turno de un hilo. Ausente en un hilo de asesor.                                                                                                                                                           |
| `gen_ai.input.messages`              | `string` | <Badge>Content</Badge> Una cadena JSON que sigue el esquema [`InputMessages`](https://github.com/open-telemetry/semantic-conventions-genai/blob/e57c543b4889619eb2a05702471937db5119165d/model/gen-ai/gen-ai-input-messages.json) de OpenTelemetry. Los eventos de entrada del turno: mensajes del usuario y resultados de herramientas, eventos [`system.message`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_system_message_event_params) y mensajes de otros hilos. Ausente en un hilo de asesor. |
| `gen_ai.output.messages`             | `string` | <Badge>Content</Badge> Una cadena JSON que sigue el esquema [`OutputMessages`](https://github.com/open-telemetry/semantic-conventions-genai/blob/e57c543b4889619eb2a05702471937db5119165d/model/gen-ai/gen-ai-output-messages.json) de OpenTelemetry. Los eventos de salida del turno: los mensajes, usos de herramientas y resultados de herramientas del agente.                                                                                                                                                                         |

### `anthropic.model_request`

* **Fuente:** La API, para solicitudes de la Messages API y sesiones de Managed Agents.

* **Tipo:** `INTERNAL`.

* **Padre:**

  * **Messages API:** El span [`anthropic.messages.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-create) para la solicitud.
  * **Managed Agents:** El span [`anthropic.session.turn`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-session-turn) del turno que realiza la solicitud.

* **Hijos:** Ninguno.

En la Messages API, cada span es una solicitud al modelo dentro de la solicitud a la API.

El span tiene los [atributos de uso de tokens](https://platform.claude.com/docs/es/api/opentelemetry/spans#token-usage).

| Atributo                | Tipo     | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ----------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `gen_ai.operation.name` | `string` | Solo en los spans de sesiones de Managed Agents, donde es `chat`. En la Messages API, el span [`anthropic.messages.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-create) para la solicitud es la operación `chat`.                                                                                                                                                                                                      |
| `gen_ai.request.model`  | `string` | El modelo de la solicitud.                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| `gen_ai.response.model` | `string` | Solo en los spans para solicitudes de la Messages API. El modelo que ejecutó la solicitud al modelo.                                                                                                                                                                                                                                                                                                                                                              |
| `error.type`            | `string` | **Messages API:** El `error.type` del span [`anthropic.messages.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-create), si la solicitud falló durante esta solicitud al modelo.<br />**Managed Agents:** Si la solicitud al modelo falló, su [tipo de error](https://platform.claude.com/docs/es/api/errors#http-errors), por ejemplo `rate_limit_error`. `api_error` si la solicitud al modelo falló sin una respuesta. |

### `anthropic.tool_use`, `anthropic.mcp_tool_use` y `anthropic.custom_tool_use`

* **Fuente:** El SDK y la API.

* **Nombre:** `anthropic.tool_use <tool>`, `anthropic.mcp_tool_use <tool>` o `anthropic.custom_tool_use <tool>`, donde `<tool>` es el nombre de la herramienta.

* **Tipo:** `INTERNAL`.

* **Padre del span del SDK:** El span que está activo en la aplicación cuando se inicia la herramienta, que en el ejecutor de herramientas de Messages es el span [`anthropic.messages.tool_runner`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-tool-runner). Si no hay ningún span activo, no hay padre.

* **Padre del span de la API:**

  * **Messages API:** El span [`anthropic.messages.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-create) de la solicitud en la que la API ejecuta la herramienta.
  * **Managed Agents:** El span [`anthropic.session.turn`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-session-turn) del turno en el que se ejecuta la herramienta. Para un uso de herramienta que espera un evento [`user.tool_confirmation`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_user_tool_confirmation_event), ese es el turno que comienza debido a la confirmación.
  * Para un uso de herramienta desde código ejecutado por otra herramienta, el span de herramienta de esa herramienta. En la Messages API, esa herramienta es la [herramienta de ejecución de código](https://platform.claude.com/docs/es/agents-and-tools/tool-use/code-execution-tool).

* **Hijos del span del SDK:** Los spans que inicia el código de la herramienta.

* **Hijos del span de la API:** Un span de herramienta por cada uso de herramienta desde el código ejecutado por esta herramienta. Por ejemplo, el código ejecutado por la herramienta de ejecución de código podría usar `web_search`.

El prefijo del nombre del span depende del tipo de herramienta:

* `anthropic.tool_use <tool>` es el span de cada uso de una [herramienta de servidor](https://platform.claude.com/docs/es/agents-and-tools/tool-use/server-tools) en la Messages API o de una herramienta del conjunto de herramientas del agente de Managed Agents. La API ejecuta las herramientas del conjunto de herramientas del agente, excepto en un [sandbox autoalojado](https://platform.claude.com/docs/es/manage-claude/opentelemetry/sdk#trace-a-self-hosted-sandbox), donde las ejecuta el worker del entorno.
* `anthropic.mcp_tool_use <tool>` es el span de cada uso de una herramienta MCP, en el SDK, en la Messages API y en Managed Agents. En el SDK, es una herramienta de un helper de MCP que ejecuta el [ejecutor de herramientas de Messages](https://platform.claude.com/docs/es/agents-and-tools/tool-use/tool-runner) o el [ejecutor de herramientas de sesión](https://platform.claude.com/docs/es/managed-agents/self-hosted-sandboxes-reference#session-tool-runner). En la Messages API, la herramienta proviene del [conector MCP](https://platform.claude.com/docs/es/agents-and-tools/mcp-connector). En Managed Agents, si la [conexión al servidor MCP falla](https://platform.claude.com/docs/es/managed-agents/mcp-connector#handle-connection-and-authentication-failures), el nombre del span no incluye el nombre de la herramienta.
* `anthropic.custom_tool_use <tool>` es el span de cada uso de una herramienta que define la aplicación y que ejecuta un ejecutor de herramientas. Solo el SDK emite este span.

La API no emite un span de herramienta en los siguientes casos:

* El modelo pide usar una herramienta que ejecuta la aplicación, como una [herramienta personalizada](https://platform.claude.com/docs/es/managed-agents/tools). Si un ejecutor de herramientas del SDK ejecuta la herramienta, el ejecutor de herramientas emite su span.
* **Managed Agents:** El agente usa una herramienta que se ejecuta en un sandbox autoalojado. El worker en el SDK, que ejecuta la herramienta, emite su span. Consulta [cómo trazar un sandbox autoalojado](https://platform.claude.com/docs/es/manage-claude/opentelemetry/sdk#trace-a-self-hosted-sandbox).
* **Managed Agents:** El agente usa una herramienta [multiagente](https://platform.claude.com/docs/es/managed-agents/multiagent-orchestration) o la [herramienta de asesor](https://platform.claude.com/docs/es/managed-agents/multiagent-orchestration#give-the-session-an-advisor).
* **Managed Agents:** El agente pide usar una herramienta, pero el servidor deniega el uso según la [política de permisos `auto`](https://platform.claude.com/docs/es/managed-agents/permission-policies#let-the-server-evaluate-each-call-with-auto), o la aplicación lo deniega en un evento [`user.tool_confirmation`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_user_tool_confirmation_event).

| Atributo                              | Tipo     | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ------------------------------------- | -------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `gen_ai.operation.name`               | `string` | `execute_tool`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| `gen_ai.tool.name`                    | `string` | El nombre de la herramienta, por ejemplo `bash`. En los spans de la API, el nombre de una herramienta MCP no incluye el nombre del servidor. En Managed Agents, si la conexión al servidor MCP falló, es el nombre que generó el modelo y solo aparece en los spans en modo de contenido.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| `gen_ai.tool.call.id`                 | `string` | **Messages API:** El `id` del bloque en el que el modelo pidió usar la herramienta: un bloque [`tool_use`](https://platform.claude.com/docs/es/api/messages#tool_use_block), [`server_tool_use`](https://platform.claude.com/docs/es/api/messages#server_tool_use_block) o [`mcp_tool_use`](https://platform.claude.com/docs/es/api/beta/messages#beta_mcp_tool_use_block).<br />**Managed Agents:** El ID del evento en el que el agente pidió usar la herramienta: un evento [`agent.tool_use`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_agent_tool_use_event), [`agent.mcp_tool_use`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_agent_mcp_tool_use_event) o [`agent.custom_tool_use`](https://platform.claude.com/docs/es/api/beta/sessions/events#beta_managed_agents_agent_custom_tool_use_event). |
| `anthropic.mcp.server.name`           | `string` | Solo en los spans de la API de herramientas MCP. El nombre del servidor MCP de la herramienta. En la Messages API, el [`server_name`](https://platform.claude.com/docs/es/api/beta/messages#beta_mcp_tool_use_block.server_name) del bloque [`mcp_tool_use`](https://platform.claude.com/docs/es/api/beta/messages#beta_mcp_tool_use_block).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `gen_ai.conversation.id`              | `string` | El ID del hilo de la sesión, como se describe en [Atributos de sesión](https://platform.claude.com/docs/es/api/opentelemetry/spans#session-attributes). En el ejecutor de herramientas de Messages, el ID de conversación pasado con la [opción `conversation_id` (typescript, java, php: `conversationId`; csharp: `ConversationId`; go: `option.WithOpenTelemetryConversationID()`)](https://platform.claude.com/docs/es/manage-claude/opentelemetry/sdk#configure-the-sdk), y ausente sin uno. Ausente en los spans de la API para una solicitud de la Messages API.                                                                                                                                                                                                                                                                                                                |
| `anthropic.session.id`                | `string` | El ID de la sesión. Ausente para un uso de herramienta fuera de una sesión de Managed Agents, como en la Messages API o en el ejecutor de herramientas de Messages.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
| `anthropic.session.thread.id`         | `string` | Solo en los spans del SDK del ejecutor de herramientas de sesión. El ID del hilo de la sesión. Ausente para un uso de herramienta en el hilo principal.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `anthropic.tool.evaluated_permission` | `string` | Solo en los spans que emite la API en sesiones de Managed Agents. El resultado de evaluar la [política de permisos](https://platform.claude.com/docs/es/managed-agents/permission-policies) para el uso de la herramienta: `allow` o `ask`.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| `error.type`                          | `string` | El tipo de error, si el uso de la herramienta falló: `tool_error` cuando el código de la herramienta genera un error o cuando la herramienta devuelve un resultado de error.<br />**API:** En la Messages API, el resultado de error de una herramienta de servidor tiene en su lugar su [`error_code`](https://platform.claude.com/docs/es/api/messages#web_search_tool_result_error.error_code), por ejemplo `max_uses_exceeded`. En Managed Agents, si la conexión al servidor MCP falló, `mcp_authentication_failed_error` cuando falló la autenticación, y `mcp_connection_failed_error` en otro caso. Si la solicitud falló durante el uso de la herramienta, el [tipo de error](https://platform.claude.com/docs/es/api/errors#http-errors) de la solicitud.                                                                                                                    |
| `gen_ai.tool.description`             | `string` | Solo en los spans del SDK. La descripción en la definición de la herramienta. Ausente cuando la descripción está vacía.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| `gen_ai.tool.type`                    | `string` | Solo en los spans del SDK. `function`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `gen_ai.tool.call.arguments`          | `string` | <Badge>Content</Badge> Una cadena JSON que sigue el esquema [`ToolCallArguments`](https://github.com/open-telemetry/semantic-conventions-genai/blob/e57c543b4889619eb2a05702471937db5119165d/model/gen-ai/gen-ai-tool-call-arguments.json) de OpenTelemetry. El [`input`](https://platform.claude.com/docs/es/api/messages#tool_use_block) del uso de la herramienta.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| `anthropic.tool_result.content`       | `string` | <Badge>Content</Badge> Una cadena JSON con un array de bloques de contenido o con un objeto. El `content` del resultado de la herramienta que vuelve al modelo. También para un resultado de error, excepto en Managed Agents cuando la conexión al servidor MCP falló.<br />**API:** En la Messages API, un `content` de tipo cadena se convierte en un array con un bloque [`text`](https://platform.claude.com/docs/es/api/messages#text_block).                                                                                                                                                                                                                                                                                                                                                                                                                                    |

### `anthropic.compaction`

* **Origen:** La API, para solicitudes de la Messages API.
* **Tipo:** `INTERNAL`.
* **Padre:** El span [`anthropic.messages.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-create) de la solicitud.
* **Hijos:** Ninguno.

El span tiene los [atributos de uso de tokens](https://platform.claude.com/docs/es/api/opentelemetry/spans#token-usage) de la compactación. En [`anthropic.messages.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-create), el uso de una compactación está en los atributos `anthropic.usage.compaction.*` en lugar de en los totales `gen_ai.usage.*`.

| Atributo     | Tipo     | Descripción                                                                                                                                    |
| ------------ | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| `error.type` | `string` | El [tipo de error](https://platform.claude.com/docs/es/api/errors#http-errors) de la solicitud, si la solicitud falló durante la compactación. |

### `anthropic.session.outcome_evaluation`

* **Origen:** La API, para sesiones de Managed Agents.
* **Tipo:** `INTERNAL`.
* **Padre:** El span [`anthropic.session.turn`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-session-turn) del turno que inició la iteración, incluso si ese turno termina antes que la iteración.
* **Hijos:** Ninguno.

El estado no se establece cuando el resultado es `interrupted` y es `OK` para cualquier otro resultado.

El span tiene dos de los [atributos de uso de tokens](https://platform.claude.com/docs/es/api/opentelemetry/spans#token-usage): `gen_ai.usage.input_tokens` y `gen_ai.usage.output_tokens`.

| Atributo                                           | Tipo     | Descripción                                                                                                      |
| -------------------------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------- |
| `anthropic.session.outcome.id`                     | `string` | El ID del resultado que evalúa la iteración.                                                                     |
| `anthropic.session.outcome_evaluation.result`      | `string` | El resultado de la iteración: `satisfied`, `needs_revision`, `max_iterations_reached`, `failed` o `interrupted`. |
| `anthropic.session.outcome_evaluation.iteration`   | `int`    | El número de la iteración.                                                                                       |
| `anthropic.session.outcome_evaluation.explanation` | `string` | <Badge>Content</Badge> La explicación del resultado por parte del evaluador, como texto sin formato.             |

### `anthropic.messages.tool_runner`

* **Origen:** El SDK.
* **Tipo:** `INTERNAL`.
* **Padre:** El span que está activo en la aplicación cuando comienza el bucle, o ninguno si no hay ningún span activo.
* **Hijos:** El span [`anthropic.messages.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-create) para cada solicitud del bucle y el [span de herramienta](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use) de cada uso de herramienta que ejecuta el runner.

El span termina con el bucle. Si la aplicación detiene el runner, el estado no se establece. Si el código de una herramienta genera un error, su span de herramienta tiene el estado `ERROR` y el bucle continúa. El span no tiene atributos de uso, así que lee el uso de sus hijos [`anthropic.messages.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-create).

| Atributo                 | Tipo     | Descripción                                                                                                                                                                                                                                                                                       |
| ------------------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `gen_ai.operation.name`  | `string` | `invoke_agent`                                                                                                                                                                                                                                                                                    |
| `gen_ai.request.model`   | `string` | El modelo de la primera solicitud del bucle.                                                                                                                                                                                                                                                      |
| `gen_ai.conversation.id` | `string` | El ID de conversación pasado con la [opción `conversation_id` (typescript, java, php: `conversationId`; csharp: `ConversationId`; go: `option.WithOpenTelemetryConversationID()`)](https://platform.claude.com/docs/es/manage-claude/opentelemetry/sdk#configure-the-sdk). Ausente si no se pasa. |
| `error.type`             | `string` | El [tipo de error](https://platform.claude.com/docs/es/api/errors#http-errors) de la solicitud que terminó el bucle, si el bucle falló. `client_error` cuando el propio runner falló.                                                                                                             |
| `gen_ai.output.type`     | `string` | `json` cuando las solicitudes establecen el formato de salida en JSON. Ausente en caso contrario.                                                                                                                                                                                                 |

### `anthropic.messages.batches.<method>`

* **Origen:** El SDK, para cada método de Message Batches.
* **Tipo:** `CLIENT`.
* **Padre:** El span que está activo en la aplicación cuando llama al método, o ninguno si no hay ningún span activo.
* **Hijos:** Ninguno.

Los spans también tienen los atributos de cada [span del SDK para una solicitud](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-resources-method).

| Atributo                                | Tipo     | Descripción                                                                                                                                           |
| --------------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
| `anthropic.message.batch.id`            | `string` | El ID del lote sobre el que actúa el método o, para `create`, el ID del nuevo lote. Ausente en `list` y en un `create` fallido.                       |
| `anthropic.message.batch.request_count` | `int`    | Solo en `create`. El número de elementos en el arreglo [`requests`](https://platform.claude.com/docs/es/api/messages/batches/create#create.requests). |

### `anthropic.sessions.<method>`

* **Origen:** El SDK y la API.
* **Tipo:** `CLIENT` desde el SDK, `SERVER` desde la API.
* **Padre del span del SDK:** El span que está activo en la aplicación cuando llama al método, o ninguno si no hay ningún span activo.
* **Padre del span de la API:** El span en el [encabezado `traceparent`](https://platform.claude.com/docs/es/manage-claude/opentelemetry/api#connect-api-spans-to-your-own-traces) de la solicitud, que es el span del SDK cuando la solicitud proviene del SDK, o ninguno sin el encabezado.
* **Hijos del span del SDK:** El span de la API para esa solicitud.
* **Hijos del span de la API:** Ninguno.

La API emite un span `anthropic.sessions.<method>` por cada solicitud autenticada a un endpoint de la [Sessions API](https://platform.claude.com/docs/es/managed-agents/sessions). Las solicitudes que la plataforma envía en nombre de un usuario, como un mensaje enviado en la Claude Console o una sesión que inicia un [despliegue programado](https://platform.claude.com/docs/es/managed-agents/scheduled-deployments), también tienen uno, cada uno en una nueva traza.

<Accordion title="Nombres de spans y endpoints">
  | Span                                       | Endpoint                                                                                                                                  |
  | ------------------------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------- |
  | `anthropic.sessions.create`                | [`POST /v1/sessions`](https://platform.claude.com/docs/es/api/beta/sessions/create)                                                       |
  | `anthropic.sessions.list`                  | [`GET /v1/sessions`](https://platform.claude.com/docs/es/api/beta/sessions/list)                                                          |
  | `anthropic.sessions.retrieve`              | [`GET /v1/sessions/{session_id}`](https://platform.claude.com/docs/es/api/beta/sessions/retrieve)                                         |
  | `anthropic.sessions.update`                | [`POST /v1/sessions/{session_id}`](https://platform.claude.com/docs/es/api/beta/sessions/update)                                          |
  | `anthropic.sessions.delete`                | [`DELETE /v1/sessions/{session_id}`](https://platform.claude.com/docs/es/api/beta/sessions/delete)                                        |
  | `anthropic.sessions.archive`               | [`POST /v1/sessions/{session_id}/archive`](https://platform.claude.com/docs/es/api/beta/sessions/archive)                                 |
  | `anthropic.sessions.events.send`           | [`POST /v1/sessions/{session_id}/events`](https://platform.claude.com/docs/es/api/beta/sessions/events/send)                              |
  | `anthropic.sessions.events.list`           | [`GET /v1/sessions/{session_id}/events`](https://platform.claude.com/docs/es/api/beta/sessions/events/list)                               |
  | `anthropic.sessions.events.stream`         | [`GET /v1/sessions/{session_id}/events/stream`](https://platform.claude.com/docs/es/api/beta/sessions/events/stream)                      |
  | `anthropic.sessions.resources.add`         | [`POST /v1/sessions/{session_id}/resources`](https://platform.claude.com/docs/es/api/beta/sessions/resources/add)                         |
  | `anthropic.sessions.resources.list`        | [`GET /v1/sessions/{session_id}/resources`](https://platform.claude.com/docs/es/api/beta/sessions/resources/list)                         |
  | `anthropic.sessions.resources.retrieve`    | [`GET /v1/sessions/{session_id}/resources/{resource_id}`](https://platform.claude.com/docs/es/api/beta/sessions/resources/retrieve)       |
  | `anthropic.sessions.resources.update`      | [`POST /v1/sessions/{session_id}/resources/{resource_id}`](https://platform.claude.com/docs/es/api/beta/sessions/resources/update)        |
  | `anthropic.sessions.resources.delete`      | [`DELETE /v1/sessions/{session_id}/resources/{resource_id}`](https://platform.claude.com/docs/es/api/beta/sessions/resources/delete)      |
  | `anthropic.sessions.threads.list`          | [`GET /v1/sessions/{session_id}/threads`](https://platform.claude.com/docs/es/api/beta/sessions/threads/list)                             |
  | `anthropic.sessions.threads.retrieve`      | [`GET /v1/sessions/{session_id}/threads/{thread_id}`](https://platform.claude.com/docs/es/api/beta/sessions/threads/retrieve)             |
  | `anthropic.sessions.threads.archive`       | [`POST /v1/sessions/{session_id}/threads/{thread_id}/archive`](https://platform.claude.com/docs/es/api/beta/sessions/threads/archive)     |
  | `anthropic.sessions.threads.events.list`   | [`GET /v1/sessions/{session_id}/threads/{thread_id}/events`](https://platform.claude.com/docs/es/api/beta/sessions/threads/events/list)   |
  | `anthropic.sessions.threads.events.stream` | [`GET /v1/sessions/{session_id}/threads/{thread_id}/stream`](https://platform.claude.com/docs/es/api/beta/sessions/threads/events/stream) |
</Accordion>

El span tiene los [atributos de sesión](https://platform.claude.com/docs/es/api/opentelemetry/spans#session-attributes). El span del SDK también tiene los atributos de cada [span del SDK para una solicitud](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-resources-method).

| Atributo     | Tipo     | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| ------------ | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `error.type` | `string` | El [tipo de error](https://platform.claude.com/docs/es/api/errors#http-errors) de una solicitud fallida, por ejemplo `rate_limit_error`.<br />**SDK:** También los demás valores en [spans del SDK para solicitudes](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-resources-method).<br />**API:** `api_error` cuando la API cerró la conexión sin una respuesta de error, o cuando un stream terminó debido a una falla en la API. |

### `anthropic.environment.work`

* **Origen:** La CLI y el SDK en Python, TypeScript y Go.
* **Tipo:** `INTERNAL`.
* **Padre:** El span que está activo en la aplicación cuando el environment worker o el work poller obtiene el elemento de trabajo, o ninguno si no hay ningún span activo. En `ant beta:worker poll`, el span es un span raíz.
* **Hijos:** Los spans de las solicitudes que el environment worker envía mientras gestiona el elemento de trabajo y el [span de herramienta](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-tool-use-anthropic-mcp-tool-use-and-anthropic-custom-tool-use) de cada herramienta que ejecuta para el elemento de trabajo.

El environment worker y el work poller son los [helpers del SDK](https://platform.claude.com/docs/es/managed-agents/self-hosted-sandboxes#sdk-helpers) que reclaman elementos de trabajo en un sandbox autoalojado. Emiten un span `anthropic.environment.work` por cada elemento de trabajo, desde que un sondeo devuelve el elemento de trabajo hasta que termina su procesamiento.

| Atributo                        | Tipo     | Descripción                                                                                                                              |
| ------------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------- |
| `anthropic.environment.id`      | `string` | El ID del entorno.                                                                                                                       |
| `anthropic.environment.work.id` | `string` | El ID del elemento de trabajo.                                                                                                           |
| `anthropic.session.id`          | `string` | El ID de la sesión a la que pertenece el elemento de trabajo.                                                                            |
| `error.type`                    | `string` | El `error.type` del span para la solicitud fallida, si una solicitud terminó el procesamiento. `client_error` para cualquier otra falla. |

### `anthropic.<resources>.<method>`

* **Origen:** El SDK.
* **Tipo:** `CLIENT`.
* **Padre:** El span que está activo en la aplicación cuando llama al método, o ninguno si no hay ningún span activo.
* **Hijos:** Ninguno.

Cada método del SDK que envía una solicitud y no tiene una sección en esta página emite un span `anthropic.<resources>.<method>`, por ejemplo `anthropic.models.list` o `anthropic.files.upload`. La solicitud de cada página posterior de una lista tiene su propio span.

Un span cubre toda su solicitud, incluidos los reintentos, y tiene cada atributo del span de la API con el mismo nombre cuando el SDK tiene el valor. El SDK establece `http.request.method` y `http.route` cuando inicia el span, para que un sampler pueda usarlos.

Cada span del SDK para una solicitud, incluidos [`anthropic.messages.create`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-create), [`anthropic.messages.count_tokens`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-count-tokens) y [`anthropic.messages.batches.<method>`](https://platform.claude.com/docs/es/api/opentelemetry/spans#anthropic-messages-batches-method), tiene los siguientes atributos:

| Atributo                    | Tipo     | Descripción                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| --------------------------- | -------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `gen_ai.conversation.id`    | `string` | El ID de conversación pasado con la [opción `conversation_id` (typescript, java, php: `conversationId`; csharp: `ConversationId`; go: `option.WithOpenTelemetryConversationID()`)](https://platform.claude.com/docs/es/manage-claude/opentelemetry/sdk#configure-the-sdk). Si no se pasa, el ID del hilo de sesión en las solicitudes de Managed Agents que enumera [Atributos de sesión](https://platform.claude.com/docs/es/api/opentelemetry/spans#session-attributes), y ausente en otras solicitudes. |
| `anthropic.<resource>.id`   | `string` | Un atributo por cada ID en la ruta de la solicitud y uno para el ID de un objeto que crea el método. El nombre proviene de la ruta, en singular, por ejemplo `anthropic.session.id` o `anthropic.session.thread.id`.                                                                                                                                                                                                                                                                                       |
| `gen_ai.agent.id`           | `string` | El ID del agente, en los métodos de agentes.                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
| `gen_ai.memory.store.id`    | `string` | El ID del almacén de memoria, en los métodos de almacenes de memoria.                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| `gen_ai.memory.record.id`   | `string` | El ID de la memoria, en los métodos de memorias.                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| `http.request.resend_count` | `int`    | El número de veces que el SDK reenvió la solicitud, por cualquier motivo, como un reintento. Ausente cuando el SDK no la reenvió.                                                                                                                                                                                                                                                                                                                                                                          |
| `error.type`                | `string` | El [tipo de error](https://platform.claude.com/docs/es/api/errors#http-errors) de una llamada fallida, por ejemplo `rate_limit_error`. El código de estado HTTP, por ejemplo `502`, cuando la respuesta de error no tiene un tipo de error. `connection_error`, `client_timeout_error` o `client_error` cuando la llamada falló en el SDK. `api_error` cuando el servidor terminó un stream antes de tiempo.                                                                                               |
| `server.address`            | `string` | El host de la URL base del cliente, `api.anthropic.com` de forma predeterminada. En el cliente de una plataforma en la nube, el host de esa plataforma.                                                                                                                                                                                                                                                                                                                                                    |
| `url.query`                 | `string` | La cadena de consulta de la URL, solo con los parámetros de consulta que define el endpoint. Ausente cuando no hay ninguno. En el modo de solo metadatos, ausente cuando la consulta tiene un parámetro sensible, como `email`.                                                                                                                                                                                                                                                                            |
| `url.full`                  | `string` | La URL, compuesta por `url.scheme`, `server.address`, el puerto cuando la URL base tiene uno, `url.path` y `url.query`. En el modo de solo metadatos, ausente siempre que ese modo omite `url.query`.                                                                                                                                                                                                                                                                                                      |
