Observabilidad API: conectar señales con decisiones

En resumen

Un panel de disponibilidad no explica todas las operaciones lentas o incorrectas. Parta del recorrido del usuario y conecte las señales necesarias para diagnosticarlo.

Bastidores de comunicaciones y cableado de red en una sala vacía Ilustración · escena ficticia
En este artículo

Elegir la señal según la pregunta

OpenTelemetry distingue métricas, registros y trazas, entre otras señales. Se complementan sin garantizar cobertura completa. Documente período, instrumentación y exclusiones; una media puede ocultar las solicitudes más lentas.

PreguntaSeñal útilLímite
¿Cuántas solicitudes fallan?Métricas agregadasDefinir errores, alcance y período.
¿Dónde se consumió tiempo?Traza y duración de etapasMuestreo y dependencias sin instrumentar.
¿Qué evento ocurrió?Registro estructuradoSin secretos ni datos excesivos.
¿Funciona el recorrido?Sonda funcionalUn escenario no cubre todos los usos.

Preparar un diagnóstico útil

  • Mida tráfico, errores y distribución de duraciones por operación normalizada. Evite identificadores personales y URL variables como etiquetas de métricas.
  • Relacione eventos con un identificador de correlación y la versión del servicio. Revise propagación del contexto y muestreo antes de buscar una traza ausente.
  • Asigne a cada alerta impacto, responsable y primera acción. Use cuentas dedicadas en las sondas y evite operaciones irreversibles.

Proteger datos y comprobar resultados

Excluya contraseñas, tokens y cuerpos sensibles de los registros; limite acceso y conservación. Un éxito HTTP puede contener un resultado de negocio incorrecto. Compruebe también invariantes y permisos en un entorno controlado.

Fuentes primarias

Conectar la telemetría a una tarea de usuario

Las métricas, los registros y los rastreos responden a diferentes preguntas. Un alto tiempo de actividad puede ocultar un fallo en el proceso de compra o inicio de sesión. Defina el resultado que esperan los usuarios y, a continuación, instrumente las llamadas que lo proporcionan.

  • Elija un indicador de recorrido para el éxito, la latencia y el fallo visible para el usuario.
  • Propaga la correlación entre servicios, limitando al mismo tiempo los datos confidenciales en los rastreos.
  • Simule un fallo de dependencia para comprobar si las alertas dan lugar a acciones y a un modo degradado comprensible.

Fuente primaria: OpenTelemetry — Observability primer. Método relacionado: consultar la guía práctica.

Fallo de recogida: conciliar registros y eventos ausentes

Distinguir eventos producidos, recibidos y utilizables sin interpretar el silencio como ausencia de incidentes.

  • Relaciona aplicación, colector y almacenamiento con responsables. Prepara una secuencia finita de eventos ficticios con identificadores estables, sin secretos ni datos de clientes. Conserva tiempos de evento y observación: el retraso no equivale automáticamente a pérdida.
  • En pruebas, interrumpe el destino y restablécelo. Observa llenado de cola, reintentos, rechazos y reinicio. Una cola persistente puede limitar pérdidas, pero tiene capacidad y depende del almacenamiento; define qué ocurre al llenarse. Verifica que la recogida no bloquee silenciosamente el servicio.
  • Concilia la referencia con eventos realmente legibles al mismo corte. Cuenta repeticiones, retrasos y ausencias por separado; un acuse de red no prueba utilidad final. Sin referencia fiable declara cobertura desconocida, no cero pérdidas ni cero incidentes.

Caso de aceptación reproducible

Ejemplo ficticio: estos datos no describen clientes ni resultados observados.

Ver datos del caso
{
    "expected_ids": [
        "E1",
        "E2",
        "E3"
    ],
    "received_ids": [
        "E1",
        "E1",
        "E3"
    ],
    "received_rows": 3,
    "unique_received": 2,
    "missing_ids": [
        "E2"
    ],
    "observation_cutoff": "same_for_both_sets"
}

Decisión esperada

Ejemplo ficticio: se esperan E1, E2 y E3, pero llegan E1, E1 y E3. Tres filas no prueban completitud: E1 se repite y E2 falta al corte.

OpenTelemetry — Collector resiliency

¿Tres filas recibidas prueban que se conservaron tres eventos?

No. Dos filas pueden repetir un identificador y ocultar una ausencia. Compara identificadores, periodo observado y etapas de la cadena.

Fuente primaria: OpenTelemetry — Collector resiliency. Método relacionado: consultar la guía práctica.

Subdominios abandonados: retirar un CNAME con control

Vincular cada nombre DNS a un recurso controlado y cerrar sus dependencias antes de liberar el servicio.

  • Registra nombre público, cadena CNAME, recurso y responsable. Compara DNS con el inventario de la cuenta autorizada. Un error HTTP, NXDOMAIN o recurso ausente exige revisión; no demuestra que un tercero pueda reclamarlo. Las protecciones varían por proveedor.
  • Elimina el enlace o dirígelo a un destino controlado antes de borrar el recurso. Considera los TTL anteriores y las cachés; comprueba DNS autoritativo y varios resolutores. Conserva las validaciones de propiedad aún necesarias, sin borrar todos los TXT.
  • Revisa enlaces, redirecciones, callbacks OAuth, webhooks y dominios de cookies. Si el recurso ya fue liberado, corrige DNS e investiga posibles exposiciones según el proceso de incidentes. Reconcilia DNS e inventario tras cada eliminación.

Caso de aceptación reproducible

Ejemplo ficticio: estos datos no describen clientes ni resultados observados.

Ver datos del caso
{
    "name": "portal.example",
    "cname_present": true,
    "resource_deleted": true,
    "provider_claimability": "not_verified",
    "takeover_observed": false,
    "expected": "remove_or_replace_mapping_and_review_exposure"
}

Decisión esperada

Ejemplo ficticio: portal.example apunta a un recurso eliminado. Retira el CNAME o usa un destino controlado; la ausencia del recurso no demuestra una toma de control por terceros.

Microsoft — Prevent dangling DNS entries

Fuente primaria: Microsoft — Prevent dangling DNS entries. Método relacionado: consultar la guía práctica.

Reintentos API: calcular el presupuesto completo

Separe tiempo por llamada, esperas y recorrido completo.

Caso didáctico ficticio: las cifras no representan a CIE ni a un cliente.

Modelo ficticio: cuatro llamadas de hasta 250 ms y esperas de 100, 200 y 400 ms. No incluye jitter, conexión, colas ni validación local.

Intentos totales
41 + 3
Esperas acumuladas (ms)
700100 + 200 + 400
Presupuesto modelado (ms)
17004 × 250 + 700
Descomponer la secuencia
PasoLlamada máxima (ms)Espera siguiente (ms)
Intento 1250100
Intento 2250200
Intento 3250400
Intento 42500
Total1000700
Duraciones del modelo (ms)
  • Tiempo de llamadas1000
  • Esperas acumuladas700
  • Plazo global (ms)1500

Comprobaciones antes de concluir

  1. 1.000 + 700 = 1.700 ms supera el plazo de 1.500 ms.
  2. Propague el plazo global y compruebe que repetir no duplica efectos; un timeout no prueba cancelación remota.

Probar un presupuesto de reintentos

n × T + W × (2^(n−1) − 1)

Método relacionado: consultar la guía práctica.

Referencias: datos, usos y límites

Documentación consultada el .

Las notas detalladas de esta edición están disponibles en inglés.

Referencias: datos, usos y límites
Fuente y finalidadDato o referencia verificadaCómo utilizarlaLímite que debe conservarse
NIST · SP 800-61 Rev. 3

Prepare incident response within cybersecurity risk management.

Revision 3 was published in April 2025 and supersedes Revision 2. It is a CSF 2.0 Community Profile. Rehearse containment decisions, evidence preservation, communication and recovery. Compare planned actions with evidence produced during the exercise.

Profundizar en el método →

Reading the guide does not validate a local plan. Contacts, emergency access and dependencies need local testing.
Google · Core Web Vitals

Distinguish loading, responsiveness and visual stability.

Good thresholds are LCP ≤ 2.5 s, INP ≤ 200 ms and CLS ≤ 0.1 at the 75th percentile, segmented by mobile and desktop. Separate field measurement from laboratory tests. Record period, URL, device, population and sample size before comparing changes.

Profundizar en el método →

These thresholds are not measured results for this site. A good lab score alone does not establish visitor experience.

API: obsolescencia y retirada

Las notas detalladas de esta edición están disponibles en inglés.

Announced retirement and continuity to verify

A Sunset field signals intent; it establishes neither actual shutdown nor guaranteed continuity until then. Prepare dependencies, data and access to move.

  • Identify the announcement’s exact scope and owner.
  • Keep dates and updates with receipt evidence.
  • Test exit, in-flight operations and removal of obsolete access.

Compare deprecation and retirement announcements →

IETF · RFC 9745 · Deprecation · Standards Track · March 2025 · §2–5 · consulted 2026-10-23

IETF · RFC 8594 · Sunset · Informational · May 2019 · §3–5, §8 · consulted 2026-10-23