diagnostics-prometheus. Escucha diagnósticos internos de confianza y genera un endpoint de texto de Prometheus en:
text/plain; version=0.0.4; charset=utf-8, el formato estándar de exposición de Prometheus.
Para trazas, logs, envío OTLP y atributos semánticos GenAI de OpenTelemetry, consulta Exportación de OpenTelemetry.
Inicio rápido
Reinicia el Gateway
La ruta HTTP se registra al iniciar el Plugin, así que vuelve a cargar después de habilitarlo.
Haz scraping de la ruta protegida
Envía la misma autenticación de gateway que usan tus clientes operadores:
diagnostics.enabled: true es obligatorio. Sin él, el Plugin sigue registrando la ruta HTTP pero no fluye ningún evento de diagnóstico al exportador, por lo que la respuesta queda vacía.Métricas exportadas
| Métrica | Tipo | Etiquetas |
|---|---|---|
openclaw_run_completed_total | counter | channel, model, outcome, provider, trigger |
openclaw_run_duration_seconds | histogram | channel, model, outcome, provider, trigger |
openclaw_model_call_total | counter | api, error_category, model, outcome, provider, transport |
openclaw_model_call_duration_seconds | histogram | api, error_category, model, outcome, provider, transport |
openclaw_model_tokens_total | counter | agent, channel, model, provider, token_type |
openclaw_gen_ai_client_token_usage | histogram | model, provider, token_type |
openclaw_model_cost_usd_total | counter | agent, channel, model, provider |
openclaw_tool_execution_total | counter | error_category, outcome, params_kind, tool |
openclaw_tool_execution_duration_seconds | histogram | error_category, outcome, params_kind, tool |
openclaw_harness_run_total | counter | channel, error_category, harness, model, outcome, phase, plugin, provider |
openclaw_harness_run_duration_seconds | histogram | channel, error_category, harness, model, outcome, phase, plugin, provider |
openclaw_message_processed_total | counter | channel, outcome, reason |
openclaw_message_processed_duration_seconds | histogram | channel, outcome, reason |
openclaw_message_delivery_total | counter | channel, delivery_kind, error_category, outcome |
openclaw_message_delivery_duration_seconds | histogram | channel, delivery_kind, error_category, outcome |
openclaw_queue_lane_size | gauge | lane |
openclaw_queue_lane_wait_seconds | histogram | lane |
openclaw_session_state_total | counter | reason, state |
openclaw_session_queue_depth | gauge | state |
openclaw_memory_bytes | gauge | kind |
openclaw_memory_rss_bytes | histogram | none |
openclaw_memory_pressure_total | counter | level, reason |
openclaw_telemetry_exporter_total | counter | exporter, reason, signal, status |
openclaw_prometheus_series_dropped_total | counter | none |
Política de etiquetas
Etiquetas acotadas y de baja cardinalidad
Etiquetas acotadas y de baja cardinalidad
Las etiquetas de Prometheus se mantienen acotadas y con baja cardinalidad. El exportador no emite identificadores de diagnóstico sin procesar como
runId, sessionKey, sessionId, callId, toolCallId, IDs de mensaje, IDs de chat ni IDs de solicitud del proveedor.Los valores de las etiquetas se redactan y deben cumplir la política de caracteres de baja cardinalidad de OpenClaw. Los valores que no cumplan la política se sustituyen por unknown, other o none, según la métrica.Límite de series y contabilidad de desbordamiento
Límite de series y contabilidad de desbordamiento
El exportador limita las series temporales retenidas en memoria a 2048 series entre contadores, gauges e histogramas combinados. Las nuevas series que superen ese límite se descartan, y
openclaw_prometheus_series_dropped_total aumenta en uno cada vez.Supervisa este contador como una señal fuerte de que un atributo aguas arriba está filtrando valores de alta cardinalidad. El exportador nunca eleva el límite automáticamente; si sube, corrige el origen en lugar de desactivar el límite.Lo que nunca aparece en la salida de Prometheus
Lo que nunca aparece en la salida de Prometheus
- texto de prompts, texto de respuestas, entradas de herramientas, salidas de herramientas, prompts del sistema
- IDs sin procesar de solicitudes del proveedor (solo hashes acotados, cuando corresponde, en spans; nunca en métricas)
- claves de sesión e IDs de sesión
- nombres de host, rutas de archivo, valores secretos
Recetas de PromQL
Elegir entre Prometheus y la exportación de OpenTelemetry
OpenClaw admite ambas superficies de forma independiente. Puedes usar una, ambas o ninguna.- diagnostics-prometheus
- diagnostics-otel
- Modelo pull: Prometheus hace scraping de
/api/diagnostics/prometheus. - No se requiere un recopilador externo.
- Autenticado mediante la autenticación normal del Gateway.
- La superficie es solo de métricas (sin trazas ni logs).
- Ideal para stacks ya estandarizados en Prometheus + Grafana.
Solución de problemas
Cuerpo de respuesta vacío
Cuerpo de respuesta vacío
- Comprueba
diagnostics.enabled: trueen la configuración. - Confirma que el Plugin está habilitado y cargado con
openclaw plugins list --enabled. - Genera algo de tráfico; los contadores e histogramas solo emiten líneas después de al menos un evento.
401 / unauthorized
401 / unauthorized
`openclaw_prometheus_series_dropped_total` está subiendo
`openclaw_prometheus_series_dropped_total` está subiendo
Un nuevo atributo está superando el límite de 2048 series. Inspecciona las métricas recientes en busca de una etiqueta con cardinalidad inesperadamente alta y corrígela en el origen. El exportador descarta intencionadamente las series nuevas en lugar de reescribir etiquetas en silencio.
Prometheus muestra series obsoletas después de un reinicio
Prometheus muestra series obsoletas después de un reinicio
El Plugin mantiene el estado solo en memoria. Tras un reinicio del Gateway, los contadores vuelven a cero y los gauges se reinician en su siguiente valor informado. Usa
rate() e increase() en PromQL para manejar los reinicios limpiamente.Relacionado
- Exportación de diagnósticos — zip local de diagnósticos para paquetes de soporte
- Estado y preparación — sondas
/healthzy/readyz - Registro — registro basado en archivos
- Exportación de OpenTelemetry — envío OTLP de trazas, métricas y logs