🇺🇸 EN
Observability
·10 min read·↗·🇺🇸 EN

¿Qué es la Observabilidad de Agentes? Por qué y cuándo importa

Portada principal del artículo: ¿Qué es la Observabilidad de Agentes? Por qué y cuándo importa
Foto en Unsplash
Summarize with AI:

Seamos sinceros: añadir funciones de inteligencia artificial a una aplicación frontend o fullstack hoy en día es muy fácil. Haces un par de llamadas a una API, escribes unos cuantos prompts, y listo: ya tienes una función inteligente funcionando.

El verdadero reto empieza cuando esa funcionalidad aterriza en producción. 😅

Cuando el código tradicional falla, casi siempre se rompe de forma ruidosa: salta una excepción, miras la consola del navegador o los logs del servidor, encuentras la línea exacta con el stack trace, corriges el fallo y despliegas.

Las funcionalidades con IA no funcionan así. La inteligencia artificial es no determinista. Puedes enviar exactamente el mismo input dos veces y recibir dos respuestas totalmente distintas.

Cuando un agente o función de IA falla, rara vez se cae el servidor. Casi siempre devuelve un 200 OK. El problema real es descubrir por qué la respuesta es incorrecta.

Piensa en todas las piezas que se mueven en una app moderna con IA:

  • El system prompt y el prompt del usuario
  • El contexto inyectado desde RAG (base de datos vectorial)
  • Los datos externos obtenidos desde APIs o servidores MCP (Model Context Protocol)
  • El modelo en sí (y su configuración de temperatura)
  • Las herramientas y llamadas a funciones (tool calls)

Cuando la respuesta final falla, ¿qué pieza se rompió? ¿El prompt fue confuso? ¿El RAG trajo el documento equivocado? ¿Una herramienta devolvió datos vacíos? ¿O el modelo alucinó?

Al haber tantas piezas conectadas, encontrar el origen del problema se convierte en un juego de adivinanzas donde no sabes de dónde vienen los golpes.

Para dejar de adivinar y depurar con total claridad, necesitamos Observabilidad de Agentes.

En este artículo veremos:

  • Por qué las herramientas tradicionales de monitorización se quedan cortas con la IA.
  • Los tres conceptos esenciales: Spans, Trazas y OpenTelemetry.
  • La arquitectura en 3 capas que utilizan las plataformas modernas de observabilidad.
  • En qué momento tu proyecto realmente necesita observabilidad.
  • Las lecciones prácticas que he aprendido construyendo sistemas reales.

Empecemos explorando por qué nuestras herramientas clásicas de APM no son suficientes para los modelos de lenguaje.


Por qué falla la monitorización tradicional 🛑

Como desarrolladores, ya conocemos herramientas como Datadog, Sentry o New Relic. Estos sistemas de Application Performance Monitoring (APM) son excelentes para medir tiempos de respuesta del servidor, uso de memoria y errores 500.

Sin embargo, la IA introduce un tipo de fallo totalmente nuevo: los Fallos Semánticos.

Veamos un ejemplo muy simple. Creas un agente de IA para reservar vuelos para los usuarios.

Un usuario escribe: "Reserva un vuelo a París para el próximo viernes."

El agente se ejecuta, llama a tu backend y responde: "¡Listo! He reservado tu vuelo a Texas."

Desde el punto de vista técnico de tu servidor, todo fue un éxito:

  • La API respondió con código 200 OK.
  • El tiempo de respuesta fue rápido.
  • No saltó ninguna excepción en los logs.

Tu panel de monitorización está en verde impecable. Pero para el usuario, tu aplicación falló estrepitosamente.

Un log tradicional como console.log("Procesando petición") no sirve para resolver esto. No te permite ver el razonamiento interno del agente. Necesitas inspeccionar cada paso intermedio entre el prompt inicial y la respuesta final.

Para entender cómo inspeccionar estos pasos, analicemos los bloques fundamentales de la telemetría en IA.


Los conceptos clave que necesitas entender 🧠

Para depurar aplicaciones con IA de forma profesional, tomamos prestados conceptos del tracing distribuido. Si has trabajado con microservicios, esto te resultará muy familiar.

1. Spans: Cada paso individual

Un span representa una unidad de trabajo aislada. En una aplicación de IA, un span puede ser:

  • Una llamada a un modelo (como OpenAI, Gemini o Claude).
  • La ejecución de una herramienta (por ejemplo, llamar a getFlights()).
  • Una petición a un servidor MCP (como consultar una base de datos o leer archivos).
  • Una consulta vectorial (recuperar fragmentos de texto para RAG).

Un span no solo mide cuántos milisegundos tardó la operación. En IA, un span registra:

  • El prompt exacto enviado al modelo.
  • El texto o JSON en bruto recibido de vuelta.
  • Los parámetros del modelo (temperatura, versión del modelo, top_p).
  • El uso de tokens (tokens de entrada, tokens de salida y coste estimado).

2. Trazas (Traces): El viaje completo

Una traza conecta todos los spans de una misma petición de usuario. Genera una línea temporal visual con todo lo ocurrido de principio a fin.

Por ejemplo, cuando un usuario pide: "Resume mi última factura", la traza muestra:

  1. Root Span: La petición inicial del usuario.
  2. Child Span 1 (Llamada a tool): El agente decide invocar fetchInvoice(id).
  3. Child Span 2 (Base de datos): Consulta los detalles de la factura en PostgreSQL.
  4. Child Span 3 (Llamada al LLM): Envía el prompt junto con los datos de la factura al modelo para redactar el resumen.

Si el resumen es incorrecto, no tienes que adivinar. Abres la traza y revisas:

  • ¿fetchInvoice() devolvió la factura correcta?
  • ¿El texto de la factura se truncó antes de mandarlo al modelo?
  • ¿El modelo ignoró las instrucciones del system prompt?

La traza te señala de inmediato el punto exacto donde ocurrió el fallo.

3. OpenTelemetry: El estándar abierto

Aquí va mi recomendación más importante: no construyas tu propia librería casera de logging para tus apps con IA.

La industria ha adoptado OpenTelemetry (OTel) como el estándar universal de observabilidad. OpenTelemetry ya define convenciones de nombres específicas (Semantic Conventions) para aplicaciones de IA.

Algunos atributos estándar de GenAI incluyen:

  • gen_ai.request.model
  • gen_ai.usage.input_tokens
  • gen_ai.usage.output_tokens
  • gen_ai.system (openai, anthropic, gemini, etc.)

Al usar OpenTelemetry, tu código no queda atado a ningún proveedor comercial. Puedes enviar tus trazas a plataformas de código abierto o a servicios como Datadog, Honeycomb, LangSmith, Phoenix o la plataforma de observabilidad de Progress sin modificar una sola línea de tu aplicación.

Ahora que conocemos los spans y las trazas, veamos cómo se estructura una plataforma de observabilidad moderna en entornos de producción.


Cómo funcionan las plataformas de observabilidad de IA en producción 🏗️

Cuando analizas arquitecturas de nivel empresarial (como la de Progress/Telerik AI Observability Platform), la monitorización de IA se organiza alrededor de una arquitectura en 3 capas:

[ Tu Aplicación / Agente ]
   │  (SDKs en TypeScript, Python o .NET con OpenTelemetry)
   ▼
[ Colector Especializado ]
   │  (Valida credenciales, enriquece spans, calcula costes, enmascara PII)
   ▼
[ Plataforma de Observabilidad y Analítica ]
   │  (Dashboards, control de costes, evaluaciones LLM-as-a-Judge y alertas)

Capa 1: SDKs de Aplicación (Instrumentación)

Librerías ligeras integradas en tu código. Interceptan automáticamente las llamadas a proveedores de LLM (OpenAI, Anthropic, Gemini), frameworks de agentes y herramientas MCP, generando spans de OpenTelemetry sin código repetitivo.

Capa 2: El Colector (Enriquecimiento y Guardrails)

Un colector de telemetría dedicado que recibe las trazas de tus SDKs y realiza trabajo crítico en segundo plano:

  • Cálculo de costes: Mapea el número de tokens al precio exacto de cada proveedor en tiempo real.
  • Enmascaramiento de PII: Limpia datos sensibles de clientes antes de guardarlos.
  • Etiquetado y atribución: Asocia IDs de usuario, sesiones y etiquetas de experimentos.

Capa 3: Plataforma de Evaluación y Dashboards

La interfaz donde el equipo de ingeniería y producto puede:

  • Inspeccionar líneas temporales completas de flujos complejos de agentes.
  • Ejecutar evaluaciones automatizadas con LLM-as-a-Judge sobre respuestas reales de producción.
  • Configurar límites de presupuesto y alertas de anomalías.

Conocer esta arquitectura nos ayuda a identificar cuándo un proyecto realmente necesita este nivel de visibilidad.


¿Cuándo necesitas realmente observabilidad de agentes? ⏱️

Si solo tienes una funcionalidad sencilla que envía un prompt estático a una API y muestra el texto tal cual, un logging tradicional puede ser suficiente por el momento.

Empiezas a necesitar observabilidad de agentes de forma obligatoria cuando:

  1. Tu IA usa herramientas y servidores MCP: En el momento en que tu agente ejecuta código, consulta APIs o interactúa con sistemas externos (como instalaciones de MCP en un clic), necesitas trazar cada acción para saber por qué eligió ese camino.
  2. Utilizas RAG (Retrieval-Augmented Generation): Cuando las respuestas dependen de documentos externos, necesitas auditar qué fragmentos exactos se inyectaron en el contexto del prompt.
  3. Construyes flujos multi-paso o equipos de agentes: Cuando varios agentes colaboran entre sí (o usan Agent Skills especializadas), depurar sin trazas es prácticamente imposible.
  4. La seguridad y los límites importan: Si tu aplicación recibe inputs de usuarios que podrían sufrir ataques de prompt injection, la telemetría es indispensable para detectar y auditar amenazas.

Pasemos ahora a las métricas prácticas en las que conviene centrarse hoy en día.


Lo que he aprendido que es verdaderamente esencial 💼

El ecosistema de IA avanza a un ritmo vertiginoso. Salen modelos nuevos cada semana y pretender dominarlo todo al detalle es imposible.

Como desarrolladores frontend o fullstack, no necesitamos convertirnos en investigadores de machine learning. Pero a partir de lo que he aprendido construyendo y rompiendo cosas en producción (y pasando de demos de chat con IA a productos reales), estos son los conceptos que marcan la diferencia:

1. Control de consumo y coste de tokens

Cada interacción con un modelo cuesta dinero: el system prompt, la consulta del usuario, los payloads de las herramientas y la respuesta devuelta. Aprendí muy pronto que un bucle silencioso en un agente puede consumir tu presupuesto en minutos. En producción, vigilar el consumo de tokens por usuario y por funcionalidad es el paso cero.

2. Desglose de latencia (TTFT frente a tiempo de proceso)

En frontend, cuando un usuario dice que "la IA va lenta", necesitas saber con exactitud dónde se pierde el tiempo:

  • TTFT (Time To First Token): Cuántos milisegundos pasan hasta que el modelo empieza a emitir texto hacia el usuario.
  • Latencia de herramientas y base de datos: ¿Tu backend pasó 3 segundos buscando en la base de datos vectorial antes de que el modelo siquiera empezara a pensar?

Comprender esta diferencia nos permite diseñar interfaces mucho más agradables, con skeletons, loaders y texto en streaming.

3. Calidad del contexto por encima de cantidad

En RAG, meter más información no siempre mejora el resultado. Inyectar documentos gigantes en el prompt suele confundir al modelo, disparar el coste y provocar alucinaciones. La observabilidad te permite auditar los fragmentos exactos recuperados para confirmar que son relevantes.

4. Evals: Pruebas cuando el resultado siempre varía

No podemos usar tests unitarios clásicos tipo expect(resultado).toBe("Bienvenido") porque las respuestas de los modelos siempre tienen variaciones. La solución son los evals: comprobaciones automáticas o evaluaciones con un "LLM juez" que puntúan las respuestas según criterios de precisión, utilidad y tono a lo largo del tiempo.

5. Guardrails y datos sensibles (PII)

Antes de enviar datos a proveedores externos, debes tener visibilidad absoluta sobre lo que sale de tu aplicación. Con observabilidad y reglas de seguridad bien configuradas, puedes filtrar información personal (emails, tarjetas de crédito) y frenar ataques de prompt injection antes de que alcancen tus servicios internos. Revisa mi guía sobre las 4 capas de defensa contra prompt injection para ver todos los detalles.


Resumen 🛠️

Construir aplicaciones con IA es apasionante, pero gestionar sistemas no deterministas supone un cambio de mentalidad radical.

Cuando una función con IA devuelve un resultado inesperado, los logs tradicionales no te van a salvar. Con spans, trazas, OpenTelemetry y una arquitectura de observabilidad en 3 capas, puedes abrir la caja negra y ver con total nitidez cada prompt, cada fragmento de contexto y cada llamada a herramienta.

La observabilidad es precisamente lo que transforma un experimento frágil en un producto sólido y fiable para producción.

Si estás profundizando en el desarrollo con IA y herramientas modernas, echa un vistazo a mi Serie de IA y a la Serie de Observabilidad para más guías prácticas.

Part of the Observability Series

Monitoring, tracing, and understanding what your applications are doing in production.

View Entire Series

Preguntas Frecuentes

¿Cuál es la diferencia entre un APM tradicional y la observabilidad de agentes?

El APM tradicional monitoriza la salud del servidor como latencia, uso de CPU y tasas de errores HTTP. La observabilidad de agentes rastrea el razonamiento paso a paso, los prompts, el contexto, el coste de tokens y las llamadas a herramientas (tools) para entender exactamente por qué el modelo tomó una decisión.

¿Cuáles son las 3 capas de una arquitectura de observabilidad en IA?

Las tres capas son: 1) SDKs en la aplicación (instrumentación de llamadas LLM y tools mediante OpenTelemetry), 2) Colector dedicado (agregación de trazas, cálculo de costes y enmascaramiento de PII), y 3) Plataforma de evaluación y analítica (dashboards, evaluaciones con LLM-as-a-Judge y alertas).

¿Por qué debería usar OpenTelemetry para agentes de IA?

OpenTelemetry es un estándar abierto con convenciones semánticas oficiales para GenAI. Te permite recolectar trazas sin quedar atado a un único proveedor de monitorización.

¿Cuáles son las métricas más críticas en aplicaciones de IA en producción?

Las más críticas son el consumo y coste de tokens, el desglose de latencia (Time to First Token vs ejecución de herramientas), la calidad del contexto en RAG y las puntuaciones de evaluación (precisión y tasa de alucinaciones).

Related Articles

Share this article

If you found this guide helpful, consider sharing it with your team or fellow developers.


Real Software. Real Lessons.

I share the lessons I learned the hard way, so you can either avoid them or be ready when they happen.

User avatar
User avatar
User avatar
User avatar
+13K

Join 13,800+ developers and readers.

No spam ever. Unsubscribe at any time.