Saltar al contenido
Telemetry
Fiabilidad de la API receta SQL

Calcular la tasa de tiempo de espera de API por ruta

Clasifique las rutas por tasa de tiempo de espera mientras conserva el volumen de solicitudes y los límites de tiempo de espera configurados.

Principianteapi_requestsRevisado 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é rutas API caducan con suficiente frecuencia como para afectar a los usuarios?

Los tiempos de espera merecen su propia tarifa porque pueden aparecer como varios códigos de estado o desconexiones de clientes. Un campo de resultados normalizado los hace comparables.

Contrato de evento

Campos que espera la consulta

CampoTipoPor que existe
timestamp_utcTimestampSolicitar tiempo de finalización.
route_templateUtf8Ruta emparejada estable.
outcomeUtf8éxito, error, tiempo de espera, cancelado o rate_limited.
latency_msFloat64Duración de la solicitud observada.
DataFusionSQL

Copiar la consulta

sql
SELECT
  route_template,
  COUNT(*) AS requests,
  SUM(CASE WHEN outcome = 'timeout' THEN 1 ELSE 0 END) AS timeouts,
  100.0 * SUM(CASE WHEN outcome = 'timeout' THEN 1 ELSE 0 END)
    / NULLIF(COUNT(*), 0) AS timeout_rate_pct,
  approx_percentile_cont(latency_ms, 0.95) AS p95_latency_ms
FROM api_requests
WHERE timestamp_utc >= now() - INTERVAL '24 hours'
GROUP BY route_template
HAVING COUNT(*) >= 50
ORDER BY timeout_rate_pct DESC, requests DESC
LIMIT 20;

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

Tasa de tiempo de espera por ruta

La exportación de informes tiene un problema de tiempo de espera que una tasa agregada de 5xx podría ocultar.

route_templaterequeststimeoutstimeout_rate_pctp95_latency_ms
/api/reports/export780313,9729.400
/api/projects/:id/sync2410220,918420
/api/search12.14090,07680

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

Timeout rate by route: gráfico estático de valores sintéticos de timeout_rate_pct del resultado del ejemplo Calculate API Timeout Rate by Route
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. 1Un resultado normalizado captura los plazos del servidor, los tiempos de espera de la puerta de enlace y las rutas de tiempo de espera de los clientes gestionados.
  2. 2El umbral mínimo de solicitud evita que un raro tiempo de espera domine la clasificación.
  3. 3La latencia p95 junto a la tasa de tiempo de espera ayuda a distinguir el trabajo constantemente lento de los fallos abruptos en los plazos.

Casos extremos para decidir

  • Las desconexiones de clientes y los plazos del servidor pueden necesitar valores de resultados diferentes.
  • Las exportaciones de larga duración pueden tener un objetivo de servicio diferente al de las rutas interactivas.
  • Registre la fecha límite configurada cuando las rutas o los clientes utilicen diferentes políticas de tiempo de espera.

Panel recomendado

  • Barras: timeout_rate_pct por route_template
  • Tendencia: volumen de tiempo de espera y latencia p95
  • Tabla: solicitudes de tiempo de espera más recientes con dependencia y contexto de lanzamiento

Guía de alerta

Alerta cuando una ruta excede su objetivo de tasa de tiempo de espera en un volumen de solicitudes significativo.

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