Saltar al contenido
Telemetry
Eventos estructurados receta SQL

Detectar latidos de servicio faltantes

Encuentre servicios, trabajadores o tareas programadas que dejaron de informar antes de que apareciera un evento de falla.

Principianteservice_heartbeatsRevisado 2026-07-27Probado con Apache DataFusion 45.2.0

Revisado por el equipo de producto Telemetry en . Compatibilidad con SQL, contrato de eventos, resultados sintéticos y advertencias operativas. Revisar los estándares y la propiedad

Pregunta respondida

¿Qué fuentes de telemetría esperadas han dejado de enviar latidos?

El silencio es a menudo el primer síntoma de un proceso bloqueado o de una ruta de ingestión interrumpida. Esta consulta compara el latido más reciente de cada fuente con un intervalo de informe esperado.

Contrato de evento

Campos que espera la consulta

CampoTipoPor que existe
timestamp_utcTimestampCuando se observaron los latidos del corazón.
service_nameUtf8Nombre de fuente o servicio estable.
environmentUtf8producción, puesta en escena o desarrollo.
statusUtf8sano o degradado en el momento del latido del corazón.
DataFusionSQL

Copiar la consulta

sql
SELECT
  service_name,
  environment,
  MAX(timestamp_utc) AS last_seen_at,
  COUNT(*) AS heartbeats_in_window
FROM service_heartbeats
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
  AND environment = 'production'
GROUP BY service_name, environment
HAVING MAX(timestamp_utc) < now() - INTERVAL '10 minutes'
ORDER BY last_seen_at ASC;

Esta consulta de solo lectura se planifica y ejecuta en una tabla escrita vacía con Apache DataFusion 45.2.0. El resultado de la muestra determinista es sintético y se revisa por separado; valide tipos de campos, umbrales y definiciones comerciales con sus propios datos. Lea la metodología de prueba.

Resultado de la consulta

Fuentes de producción más allá de la fecha límite

Primero se debe investigar el valor last_seen_at más antiguo.

service_nameenvironmentlast_seen_atheartbeats_in_window
billing_syncproduction2026-07-27 15:04:00Z132
email_workerproduction2026-07-27 15:11:00Z139

Salida de ejemplo sintético. Ejecute la consulta con su propio esquema de eventos y umbrales antes de utilizarla para decisiones operativas.

Production sources past the heartbeat deadline: gráfico estático de valores sintéticos de last_seen_at del resultado del ejemplo Detect Missing Service Heartbeats
SVG indexable de la salida del ejemplo determinista. Descárguelo para ver un artículo, un runbook o una revisión de diseño con atribución.

Reproducir el ejemplo

Descargar el accesorio público

El paquete JSON incluye el contrato de evento escrito, illustrative filas de entrada, SQL exacto, resultado esperado, notas de revisión y versión del motor. El CSV contiene el resultado mostrado.

Cómo funciona el SQL

  1. 1MAX(timestamp_utc) devuelve el latido más reciente observado para cada fuente.
  2. 2TENER filtros después de agrupar, manteniendo solo los servicios cuyo evento más reciente sea anterior a la ventana de silencio permitida.
  3. 3El recuento proporciona un contexto útil: una fuente sin eventos en toda la ventana retrospectiva puede necesitar una tabla de fuentes esperadas en lugar de esta consulta de solo eventos.

Casos extremos para decidir

  • Una fuente que nunca ha emitido un latido no puede aparecer. Mantenga un registro de fuentes esperadas cuando sea importante una cobertura completa.
  • Establezca el umbral por encima del intervalo normal más la ingesta y la fluctuación de programación.
  • Separe los trabajadores de mantenimiento planificado o discapacitados para evitar alertas ruidosas.

Panel recomendado

  • Estadística: número de fuentes que superaron la fecha límite
  • Tabla: last_seen_at por service_name
  • Gráfico de líneas: volumen de latidos del corazón por fuente

Guía de alerta

Alerta después de que se pierdan dos o tres intervalos esperados e incluya la hora de la última vez que se vio y el enlace del runbook.

Leer configuración de alerta

Pon la receta a trabajar

Instrumentación y guías relacionadas.

Continuar el análisis

Ejecútelo en eventos reales.

Crea una tabla, adapta los campos y guarda el resultado.

Comience gratis, envíe eventos estructurados y utilice el resultado de la consulta como un gráfico, un widget de panel compartido o una entrada de alerta.

Obtén una clave API