Contexte

Le check $KEY$ Frontend Responses by SSH permet de superviser les réponses HTTP retournées par un frontend HAProxy.

Il permet de suivre précisément la répartition des codes de réponses générés par celui-ci, afin d’identifier rapidement des comportements anormaux ou une dégradation du service exposé.


En fonction du trafic et des applications publiées, un frontend peut retourner différents types de réponses HTTP. Une augmentation inhabituelle de certains codes peut révéler :

  • Une erreur applicative côté backend
  • Un problème de routage ou de configuration HAProxy
  • Une indisponibilité partielle du service
  • Une surcharge de l’infrastructure
  • Une attaque ou un comportement anormal des clients


Ce check permet donc :

  • De surveiller l’évolution des réponses HTTP du frontend
  • De détecter rapidement une hausse des erreurs 4xx ou 5xx
  • D’identifier des anomalies de fonctionnement applicatif


Pour résumer, ce check est un indicateur clé pour assurer la bonne qualité des réponses délivrées aux utilisateurs.

Paramétrage

Le check utilise la ligne de commande suivante :

$SHINKEN_HAPROXY-BY-SSH_PLUGINSDIR$/check_haproxy_SSH.py
       -H "$HOSTADDRESS$"
       -u "$_HOSTHAPROXY-BY-SSH__SSH-USER$"
       -k "$_HOSTHAPROXY-BY-SSH__SSH-KEY$"
       -x "$_HOSTHAPROXY-BY-SSH__SSH-PASSPHRASE$"
       -p "$_HOSTHAPROXY-BY-SSH__SSH-PORT$"
       --mode endpoint_status
       -n "$ARG1$"
       -w "$_HOSTHAPROXY-BY-SSH__AVERAGE-LATENCY__AVERAGE-LATENCY-WARN$
       ;$_HOSTHAPROXY-BY-SSH__CURRENT-CONNECTIONS__CURRENT-CONNECTIONS-WARN$"
       -c "$_HOSTHAPROXY-BY-SSH__AVERAGE-LATENCY__AVERAGE-LATENCY-CRIT$
       ;$_HOSTHAPROXY-BY-SSH__CURRENT-CONNECTIONS__CURRENT-CONNECTIONS-CRIT$"

Données utilisées provenant du modèle

Données communes pour les checks des modèles

Authentification

Données spécifiques pour ce check

DonnéeModifiable surUnitéValeur par défautDescription
APROXY-BY-SSH__AVERAGE-LATENCY__AVERAGE-LATENCY-WARN

l'Hôte

( Onglet Données )

ms
200Définit le de temps de latence à partir duquel le check passe en ATTENTION.
APROXY-BY-SSH__AVERAGE-LATENCY__AVERAGE-LATENCY-CRIT

l'Hôte

( Onglet Données )

ms
500Définit le de temps de latence à partir duquel le check passe en CRITIQUE.
HAPROXY-BY-SSH__CURRENT-CONNECTIONS__CURRENT-CONNECTIONS-WARN

l'Hôte

( Onglet Données )

-70Définit le taux de sessions utilisateurs à partir duquel le check passe en ATTENTION.
HAPROXY-BY-SSH__CURRENT-CONNECTIONS__CURRENT-CONNECTIONS-CRIT

l'Hôte

( Onglet Données )

-90Définit le taux de sessions utilisateurs à partir duquel le check passe en CRITIQUE.

Les données DFE (Duplicate Foreach)

Nom

Unité

Description

Seuil d'avertissement

Seuil critique

HAPROXY-BY-SSH__ENDPOINTS

--Définit une paire KEY$(VALUE)$, la KEY correspond à la description du endpoint à vérifier et la VALUE au nom du processus.--

Données utilisées provenant du check

Pas de données spécifiques pour ce check

Résultat

Exemple

Interprétation des données

Statut

Il peut prendre 4 valeurs différentes  OK / CRITIQUE / ATTENTION / INCONNU .

  • Le statut va dépendre du retour de sonde et de la configuration spécifique du check pour les données suivantes :

    • AVERAGE-LATENCY-WARN
    • AVERAGE-LATENCY-CRIT
    • CURRENT-CONNECTIONS-WARN
    • CURRENT-CONNECTIONS-CRIT
  • Voici un tableau récapitulatif du statut attendu suivant le retour de sonde :

Le texte de la colonne  "Affichage des seuils" montre les paramètres utilisés et leur valeur définie sur l'équipement supervisé.

Situation

Statut

Exemple

  • La latence moyenne est supérieur ou égale à AVERAGE-LATENCY-CRIT

CRITIQUE

  • Le taux de sessions utilisateurs est supérieur ou égale à CURRENT-CONNECTIONS-WARN

ATTENTION

Résultat

Le résultat contient le statut du check.

Résultat long

Le résultat long contient un tableau listant :

  • Le status du endpoint.
  • Son taux de session utilisateurs.
  • Sa latence moyenne.
  • Un tableau récapitulatif des erreurs HTML reçu par le endpoint.

Métriques

Définition

Nom de la métriqueUnitéDescriptionSeuil d'avertissementSeuil critique
average_latency_$KEY$msTemps moyen de latence du serveur

AVERAGE-LATENCY-WARN

AVERAGE-LATENCY-CRIT

sessions_pct_$KEY$%Taux de sessions utilisateurs du serveur

CURRENT-CONNECTIONS-WARN

CURRENT-CONNECTIONS-CRIT

Exemple