Monitoreo de uso
Monitorea el uso de Claude Code con métricas de OpenTelemetry
El soporte de OpenTelemetry está actualmente en beta y los detalles están sujetos a cambios.
OpenTelemetry en Claude Code
Claude Code admite métricas de OpenTelemetry (OTel) para monitoreo y observabilidad. Este documento explica cómo habilitar y configurar OTel para Claude Code.
Todas las métricas son datos de series temporales exportados a través del protocolo estándar de métricas de OpenTelemetry. Es responsabilidad del usuario asegurarse de que su backend de métricas esté configurado correctamente y que la granularidad de agregación cumpla con sus requisitos de monitoreo.
Inicio rápido
Configura OpenTelemetry usando variables de entorno:
El intervalo de exportación predeterminado es de 10 minutos. Durante la configuración, es posible que desees usar un intervalo más corto para fines de depuración. Recuerda restablecerlo para uso en producción.
Para opciones de configuración completas, consulta la especificación de OpenTelemetry.
Configuración de administrador
Los administradores pueden configurar los ajustes de OpenTelemetry para todos los usuarios a través del archivo de configuración administrada. Esto permite un control centralizado de la configuración de telemetría en toda una organización. Consulta la jerarquía de configuración para obtener más información sobre cómo se aplican los ajustes.
El archivo de configuración administrada se encuentra en:
- macOS:
/Library/Application Support/ClaudeCode/managed-settings.json
- Linux:
/etc/claude-code/managed-settings.json
Ejemplo de configuración de ajustes administrados:
Los ajustes administrados pueden distribuirse a través de MDM (Mobile Device Management) u otras soluciones de administración de dispositivos. Las variables de entorno definidas en el archivo de configuración administrada tienen alta prioridad y no pueden ser anuladas por los usuarios.
Detalles de configuración
Variables de configuración comunes
Variable de entorno | Descripción | Valores de ejemplo |
---|---|---|
CLAUDE_CODE_ENABLE_TELEMETRY | Habilita la recopilación de telemetría (requerido) | 1 |
OTEL_METRICS_EXPORTER | Tipo(s) de exportador a utilizar (separados por comas) | console , otlp , prometheus |
OTEL_EXPORTER_OTLP_PROTOCOL | Protocolo para el exportador OTLP | grpc , http/json , http/protobuf |
OTEL_EXPORTER_OTLP_ENDPOINT | Punto final del recolector OTLP | http://localhost:4317 |
OTEL_EXPORTER_OTLP_HEADERS | Encabezados de autenticación para OTLP | Authorization=Bearer token |
OTEL_EXPORTER_OTLP_METRICS_CLIENT_KEY | Clave de cliente para autenticación mTLS | Ruta al archivo de clave de cliente |
OTEL_EXPORTER_OTLP_METRICS_CLIENT_CERTIFICATE | Certificado de cliente para autenticación mTLS | Ruta al archivo de certificado de cliente |
OTEL_METRIC_EXPORT_INTERVAL | Intervalo de exportación en milisegundos (predeterminado: 10000) | 5000 , 60000 |
Control de cardinalidad de métricas
Las siguientes variables de entorno controlan qué atributos se incluyen en las métricas para gestionar la cardinalidad:
Variable de entorno | Descripción | Valor predeterminado | Ejemplo para deshabilitar |
---|---|---|---|
OTEL_METRICS_INCLUDE_SESSION_ID | Incluir atributo session.id en métricas | true | false |
OTEL_METRICS_INCLUDE_VERSION | Incluir atributo app.version en métricas | false | true |
OTEL_METRICS_INCLUDE_ACCOUNT_UUID | Incluir atributo user.account_uuid en métricas | true | false |
Estas variables ayudan a controlar la cardinalidad de las métricas, lo que afecta los requisitos de almacenamiento y el rendimiento de las consultas en tu backend de métricas. Una cardinalidad más baja generalmente significa mejor rendimiento y menores costos de almacenamiento, pero datos menos granulares para el análisis.
Configuraciones de ejemplo
Métricas disponibles
Claude Code exporta las siguientes métricas:
Nombre de métrica | Descripción | Unidad |
---|---|---|
claude_code.session.count | Recuento de sesiones CLI iniciadas | recuento |
claude_code.lines_of_code.count | Recuento de líneas de código modificadas | recuento |
claude_code.pull_request.count | Número de pull requests creados | recuento |
claude_code.commit.count | Número de commits git creados | recuento |
claude_code.cost.usage | Costo de la sesión de Claude Code | USD |
claude_code.token.usage | Número de tokens utilizados | tokens |
Detalles de métricas
Todas las métricas comparten estos atributos estándar:
session.id
: Identificador único de sesión (controlado porOTEL_METRICS_INCLUDE_SESSION_ID
)app.version
: Versión actual de Claude Code (controlado porOTEL_METRICS_INCLUDE_VERSION
)organization.id
: UUID de la organización (cuando está autenticado)user.account_uuid
: UUID de la cuenta (cuando está autenticado, controlado porOTEL_METRICS_INCLUDE_ACCOUNT_UUID
)
1. Contador de sesiones
Emitido al inicio de cada sesión.
2. Contador de líneas de código
Emitido cuando se agrega o elimina código.
- Atributo adicional:
type
("added"
o"removed"
)
3. Contador de Pull Requests
Emitido al crear pull requests a través de Claude Code.
4. Contador de Commits
Emitido al crear commits git a través de Claude Code.
5. Contador de costos
Emitido después de cada solicitud de API.
- Atributo adicional:
model
6. Contador de tokens
Emitido después de cada solicitud de API.
- Atributos adicionales:
type
("input"
,"output"
,"cacheRead"
,"cacheCreation"
) ymodel
Interpretación de datos de métricas
Estas métricas proporcionan información sobre patrones de uso, productividad y costos:
Monitoreo de uso
Métrica | Oportunidad de análisis |
---|---|
claude_code.token.usage | Desglose por type (entrada/salida), usuario, equipo o modelo |
claude_code.session.count | Seguimiento de adopción y participación a lo largo del tiempo |
claude_code.lines_of_code.count | Medir la productividad mediante el seguimiento de adiciones/eliminaciones de código |
claude_code.commit.count & claude_code.pull_request.count | Comprender el impacto en los flujos de trabajo de desarrollo |
Monitoreo de costos
La métrica claude_code.cost.usage
ayuda con:
- Seguimiento de tendencias de uso entre equipos o individuos
- Identificación de sesiones de alto uso para optimización
Las métricas de costo son aproximaciones. Para datos oficiales de facturación, consulta tu proveedor de API (Anthropic Console, AWS Bedrock o Google Cloud Vertex).
Alertas y segmentación
Alertas comunes a considerar:
- Picos de costo
- Consumo inusual de tokens
- Alto volumen de sesiones de usuarios específicos
Todas las métricas pueden segmentarse por user.account_uuid
, organization.id
, session.id
, model
y app.version
.
Consideraciones de backend
Tipo de backend | Mejor para |
---|---|
Bases de datos de series temporales (Prometheus) | Cálculos de tasas, métricas agregadas |
Almacenes columnares (ClickHouse) | Consultas complejas, análisis de usuarios únicos |
Plataformas de observabilidad (Honeycomb, Datadog) | Consultas avanzadas, visualización, alertas |
Para métricas DAU/WAU/MAU, elige backends que admitan consultas eficientes de valores únicos.
Información de servicio
Todas las métricas se exportan con:
- Nombre del servicio:
claude-code
- Versión del servicio: Versión actual de Claude Code
- Nombre del medidor:
com.anthropic.claude_code
Consideraciones de seguridad
- La telemetría es opcional y requiere configuración explícita
- La información sensible como claves API o contenidos de archivos nunca se incluyen en las métricas