ES|QL

INLINESTATS: desviación de cada petición respecto a la media de su servicio

INLINESTATS añade el agregado como columna sin reducir las filas — cada transacción se compara con la media de su propio servicio dentro de la misma consulta.

Requisitos

Elasticsearch 8.18+ (preview technique)

SQL
FROM "traces-apm-*"
| WHERE transaction.type == "request"
  AND @timestamp >= NOW() - 1 hour
| EVAL duree_ms = transaction.duration.us / 1000
| INLINESTATS duree_moy_service = AVG(duree_ms) BY service.name
| EVAL ecart_pct = ROUND(100.0 * (duree_ms - duree_moy_service) / duree_moy_service, 1)
| WHERE ecart_pct > 300
| KEEP @timestamp, service.name, transaction.name, duree_ms, ecart_pct
| SORT ecart_pct DESC
| LIMIT 20

Resultado

@timestamp               | service.name | transaction.name     | duree_ms | ecart_pct
-------------------------+--------------+----------------------+----------+----------
2026-06-10T14:52:08.412Z | checkout-api | POST /api/v2/payment |   8412.6 |     921.4
2026-06-10T14:47:31.090Z | checkout-api | POST /api/v2/payment |   6230.8 |     656.5
2026-06-10T14:55:02.771Z | catalog-api  | GET /api/v2/search   |   4106.2 |     587.3
2026-06-10T14:41:19.205Z | auth-svc     | POST /login          |   1893.4 |     412.9
2026-06-10T14:58:44.630Z | catalog-api  | GET /api/v2/search   |   2950.1 |     393.8
INLINESTATSLatenceAPMAnomalie

Snippets relacionados

Volver al Data Lab