Exercice 14

Sujet

Identifier le 90e percentile de la durée des requêtes http. Utiliser la métrique prometheus_http_request_duration_seconds_bucket

90e percentile = 0.9 quantile

Solution

show
histogram_quantile(0.9, prometheus_http_request_duration_seconds_bucket)

Exercice 14bis

Sujet

Écrire la requête du calcul de l'apdex :

Étant données les SLA suivantes :

  • Satisfaisant : req <= 0.2s
  • Tolérable : req <= 1s > 0.2s
  • Frustrante : req > 1s

Et la formule suivante :

\[ Apdex = \left( \frac{ Sat \times 1 + Tol \times 0.5 + Fru \times 0 }{ Nb_{req} } \right) \]

Solution

show

APDEX Long terme par handler

(
  # Requêtes satisfaisantes
  prometheus_http_request_duration_seconds_bucket{le="0.2"}
  + ignoring(le)
  (
    (
      # Requêtes tolérables
      prometheus_http_request_duration_seconds_bucket{le="1"}
      - ignoring(le)
      prometheus_http_request_duration_seconds_bucket{le="0.2"}
    )
    *
    0.5
  )
)
/ ignoring(le)
# Nombre total de requêtes
prometheus_http_request_duration_seconds_bucket{le="+Inf"}

APDEX Long terme

(
  # Requêtes satisfaisantes
  sum(prometheus_http_request_duration_seconds_bucket{le="0.2"})
  +
  (
    (
      # Requêtes tolérables
      sum(prometheus_http_request_duration_seconds_bucket{le="1"})
      -
      sum(prometheus_http_request_duration_seconds_bucket{le="0.2"})
    )
    *
    0.5
  )
)
/
# Nombre total de requêtes
sum(prometheus_http_request_duration_seconds_bucket{le="+Inf"})

APDEX Court terme

(
  # Requêtes satisfaisantes
  sum(increase(prometheus_http_request_duration_seconds_bucket{le="0.2"}[2m]))
  +
  (
    (
      # Requêtes tolérables
      sum(increase(prometheus_http_request_duration_seconds_bucket{le="1"}[2m]))
      -
      sum(increase(prometheus_http_request_duration_seconds_bucket{le="0.2"}[2m]))
    )
    *
    0.5
  )
)
/
# Nombre total de requêtes
sum(increase(prometheus_http_request_duration_seconds_bucket{le="+Inf"}[2m]))