Aller au contenu principal

Référence des métriques

Le packaging Tick par BlueMind apporte la surveillance d'un grand nombre de données (appelées métriques). Certaines données surveillées sont brutes mais d'autres sont issues de pré-traitements afin d'offrir une plus grande pertinence et de faciliter leur interprétation et analyse.

Chaque métrique comporte une arborescence pouvant contenir :

  • datalocation : nom du serveur
  • host : nom ou IP de l'hôte
  • meterType : le type de donnée
    • gauge : mesure instantanée
    • counter : compteur à incrémentation
    • distsum : couple de données comportant un compteur et une quantité, par exemple :
      • -lmtpd.emailSize = (nombre d'emails, taille totale des emails)
      • -lmtpd.emailRecipients = (nombre d'emails, nombre de destinataires)
    • timer : identique au distsum mais la quantité est ici toujours exprimée en nanosecondes
  • status : selon le type de données il peut s'agir d'un statut ok/failed (requête aboutie/échouée par exemple), success/failure (authentification réussie/échouée par exemple), etc.

Données communes

De façon générale, les métriques sont regroupées par composant.

JVM

Pour chaque composant, vous pourrez trouver les métriques concernant la JVM :

  • bm-<composant>.hprof : le nombre de fichiers hprof existant sur la machine, permet de constater s'il y a eu un plantage
  • bm-<composant>.jvm : toutes les informations concernant la jvm pour ce composant (consommation mémoire courante, maximum, etc.)

Heartbeat

Dans chaque composant ayant des interactions avec le core, on retrouvera les métriques suivantes qui servent à surveiller que les données de l'état de santé (heartbeat - littéralement « battement de cœur ») du core sont bien reçues par le composant :

Nom de la métriquetypecontenuInformations complémentaires
heartbeat.receiver.ageGaugeâge de la réception du dernier heartbeatCorrespond à la durée entre 2 heartbeat.
Le core est censé envoyer son état de santé toutes les 4 secondes, des durées supérieures, voire dépassant les 8 secondes, doivent donc alerter sur le bon état de fonctionnement de celui-ci
heartbeat.receiver.failuresCounternombre d'échecs de réception
heartbeat.receiver.latencyGaugedurée de réception du heartbeatdurée entre l'émission du heartbeat par le core et la réception par le composant
heartbeat.receiver.latencyMaxGaugedurée de réception maximum
heartbeat.receiver.receivedCounternombre de réceptions OK

Hazelcast

Les serveurs membres du cluster hazelcast comportent la métrique suivante :

Nom de la métriquetypecontenuInformations complémentaires
cluster.membersGaugela valeur de cette métrique doit être '3'

Les métriques

Nom de la métriquetypecontenuInformations complémentaires
agent.metricsGatheredCounternombre de métriques collectées par l'agentcette métrique sert principalement à vérifier que l'agent est toujours en fonctionnement : l'absence de données indique que l'agent ne collecte plus rien, donc qu'il ne fonctionne plus
agent.vmware*données concernant la machine hébergeant l'agentL'agent est actif uniquement si les vmware tools sont détectés sur les machines hébergeant BlueMind. Dans cas les métriques du "vSphere Guest SDK" sont extraites et historisées.
Ces métriques permettent de diagnostiquer des problèmes liés à la façon dont serait virtualisé BlueMind sur vmware.
bluemind.cluster
bluemind.cluster.partitions
bm-coremoteur principal de BlueMind
callsCountCounternombre d'appels reçus par le core
dirVersionGauge
directory.cluster.eventsCounter
handlingDurationTimerdurée de traitement des requêtes
heartbeat.broadcastCounter
heartbeat.maxPeriodGauge
heartbeat.periodGauge
bm-easservice de connexion mobile
executionTimeTimer
responseSizeDistSum
activeConnectionsGaugenombre de connexions actives
connectionCountCounter
deliveriesCounter
emailRecipientsDistSumnombre de destinataires par email
emailSizeDistSumtaille des emails
sessionDurationTimerdurée de session
traffic.transportLatencyTimer
bm-milterAnalyse et modification des emails au niveau SMTP
connectionsCountCounter
sessionDurationTimer
traffic.classCounter
traffic.sizeCounter
bm-webserverserveur d'application web
appCache.requestTimeTimer
appCache.requestsCounter
ftlTemplates.requestsCounternombre de requêtes d'affichage de pages générées par le webserver
staticFile.requestsCounternombre de requêtes d'affichage de pages statiques
bm-ysnpservice de validation des données
authCountCounternombre de demandes traitées- status ok : demandes validées (par exemple authentification acceptée pour le login/pass entré par une personne)
- statuts failed : validation rejetée (par exemple authentification échouée car mot de passe incorrect)
Autres
cpudonnées d'utilisation des processeurspermet de contrôler l'utilisation et la répartition des processeurs
diskdonnées de gestion de l'espace disquepermet de contrôler l'espace disque utilisé/libre/total/etc. par disque, partition, chemin, etc.
diskionombre d'octets écrits/lus en temps réelpermet de voir si le disque travaille correctement ou trop
elasticsearch*données concernant ElasticSearchpour plus d'informations et de détails sur les métriques ES, voir la documentation dédiée
influxdb*données de la base de stockage des métriques
kapacitor*données concernant l'outil lui-même
kernel
kernel_vmstat
mem
memcached
net
netstat
nginx
phpfpm
postfix_queue
postgresqlinformations sur la base de données de BlueMind
processes
swap
syslog
system