Docs de Autonomy
Integraciones

Observabilidad (OTLP)

Exporta las trazas de tus ejecuciones de test a Datadog, Grafana, Honeycomb o cualquier backend OTLP — y pivota de un paso de test fallido a la traza de producción correspondiente.

Autonomy exporta cada ejecución de test como una traza OpenTelemetry al backend de observabilidad que tu equipo ya usa. Una ejecución se convierte en un span autonomy.run con hijos anidados autonomy.step y autonomy.action.* — los pasos fallidos llevan el estado de error OTLP, así que aparecen en el mismo seguimiento de errores, paneles y alertas que tu tráfico de producción.

Qué hace

  • Exporta una traza por ejecución: autonomy.runautonomy.step (uno por paso del plan) → autonomy.action.* (navigate, fill, tap, wait, …) con tiempos reales.
  • Marca ejecuciones, pasos y acciones fallidos con el estado de error OTLP — los exploradores de trazas los pintan en rojo y los cuentan en las tasas de error.
  • Adjunta autonomy.run_url a cada span: un enlace directo desde cualquier span de tu backend a la página de evidencias de la ejecución en Autonomy.
  • Entrega las credenciales del proveedor a los runners alojados automáticamente — configura una vez en el panel, sin cambios en el entorno del runner.
  • La exportación es «fire-and-forget»: un endpoint lento o inaccesible nunca retrasa ni hace fallar una ejecución de test.

Qué se exporta

Los spans llevan un conjunto fijo de atributos en lista blanca:

AtributoContenido
test.statuspassed / failed por paso, estado final en el span de la ejecución
test.platformweb, ios, android o api
test.plan_name, test.plan_idEl caso de test ejecutado
test.step_index, test.step_action, test.step_targetTu paso del plan tal como fue redactado
autonomy.diagnosis.categoryClasificación del fallo (app_bug, test_flaky, environment, …)
autonomy.recovery_countReintentos consumidos antes del veredicto del paso — una señal de flakiness sobre la que alertar
autonomy.run_urlEnlace directo a la ejecución en el panel de Autonomy

Nada más sale de Autonomy. La identidad de los modelos, el uso de tokens, los prompts, las capturas de pantalla, el contenido de las páginas, los mensajes de error sin procesar y los nombres de herramientas internas nunca se exportan — los fallos se reducen a códigos de categoría, y el contrato lo aplica una lista blanca de atributos en el exportador.

Configuración

Antes de empezar

  • Una cuenta de administrador del workspace — los ajustes de Observabilidad son solo para admins.
  • Un endpoint de ingesta OTLP/HTTP en un hostname público con https.
  • Una credencial de ingesta de tu proveedor (clave API, token o cabecera basic-auth).
  1. Abre Settings → Observability en el panel de Autonomy.
  2. Elige el preajuste de tu proveedor — rellena la forma del endpoint y el formato de las cabeceras.
  3. Introduce el endpoint OTLP. Autonomy añade /v1/traces automáticamente; https es obligatorio.
  4. Introduce los Headers como pares clave=valor separados por comas. Se guardan cifrados y de solo escritura — no se vuelven a mostrar tras guardar.
  5. Pulsa Send Test Span. Autonomy envía del lado del servidor un span sintético autonomy.test_connection e informa del estado HTTP y la latencia.
  6. Confirma que el span llegó a tu explorador de trazas bajo el servicio autonomy-runner-labs, luego activa Trace Export y guarda.

Configuración por proveedor

Datadog

  • Endpoint: https://otlp.datadoghq.com — usa el dominio de tu site (otlp.datadoghq.eu, otlp.us5.datadoghq.com, …).
  • Headers: dd-api-key=<tu clave API> (una clave API, no una clave de aplicación).
  • Dónde aparecen las trazas: APM → Traces, servicio autonomy-runner-labs. Los pasos fallidos aparecen como spans en error; usa facetas sobre @autonomy.diagnosis.category o @test.plan_name para construir monitores.

Grafana Cloud (Tempo)

  • Endpoint: https://otlp-gateway-<region>.grafana.net/otlp — cópialo de la página OpenTelemetry → OTLP de tu stack.
  • Headers: Authorization=Basic <base64 de instanceID:token> — genera el token con scope metrics:write/traces:write.
  • Dónde aparecen las trazas: Explore con la fuente de datos Tempo; consulta TraceQL {resource.service.name="autonomy-runner-labs"}.

Honeycomb

  • Endpoint: https://api.honeycomb.io (UE: https://api.eu1.honeycomb.io).
  • Headers: x-honeycomb-team=<tu clave de ingesta>. En Honeycomb Classic añade x-honeycomb-dataset=<dataset>.
  • Dónde aparecen las trazas: el dataset autonomy-runner-labs (o el entorno de la clave de ingesta). Un BubbleUp sobre test.status = failed es una buena primera consulta.

OTLP genérico

Funciona cualquier colector o proveedor que acepte OTLP/HTTP con JSON en /v1/traces — un OpenTelemetry Collector, SigNoz, Axiom y la mayoría de ingestas nativas de los proveedores. Apunta el endpoint a la URL base (hostname público con https — se rechazan IP literales y hostnames internos) y aporta las cabeceras de autenticación que espere la ingesta.

Runners autoalojados

La configuración del panel tiene prioridad y no requiere cambios en el runner. Los runners autoalojados sin configuración de organización pueden activar la exportación por entorno:

VariableRequiredDescription
AUTONOMY_OBSERVABILITY_EXPORTYesPonlo a `otel` para activar la exportación basada en entorno.
OTEL_EXPORTER_OTLP_ENDPOINTYesEndpoint OTLP base; `/v1/traces` se añade automáticamente.
OTEL_EXPORTER_OTLP_HEADERSNoPares `clave=valor` separados por comas, enviados con cada exportación.
OTEL_SERVICE_NAMENoNombre de servicio en los spans exportados. Por defecto `autonomy-runner-labs`.

Rotar o eliminar credenciales

Los headers son de solo escritura: para rotar, pega el nuevo valor y guarda — sustituye el secreto almacenado. Para desconectar un proveedor, usa Clear stored headers; la configuración del endpoint se mantiene, pero las exportaciones salen sin cabeceras de autenticación (que la mayoría de proveedores rechazan) hasta que guardes unas nuevas.

Solución de problemas

Send Test Span falla con HTTP 401 o 403

La ingesta rechazó las credenciales. Revisa la clave de cabecera de tu proveedor (dd-api-key, Authorization, x-honeycomb-team) y que la credencial tenga scope de ingesta/escritura.

Send Test Span falla con HTTP 404

No hay ingesta de trazas OTLP en esa URL. Introduce solo el endpoint base — Autonomy añade /v1/traces por sí mismo; una ruta duplicada es la causa habitual.

«Endpoint must use https» o «must be a public hostname»

Solo se aceptan hostnames públicos con https — se rechazan http plano, IP literales, localhost y nombres .internal/.local. Para un colector interno, expón un ingress https delante.

El span de prueba funciona pero las ejecuciones no exportan nada

Confirma que Trace Export está activado y guardado, y que tus runners han tomado trabajo después del cambio — la configuración se entrega cuando un runner reclama una ejecución. Los fallos de entrega nunca hacen fallar las ejecuciones; una credencial errónea se manifiesta como silencio, no como errores de ejecución. Vuelve a lanzar Send Test Span para reverificar.

On this page