Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Commentaire: Published by Scroll Versions from space DA and version BM-3.5
Sv translation
languagefr

Présentation

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 :
      • bm-lmtpd.emailSize = (nombre d'emails , taille totale des emails)
      • bm-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.
Volet

Sur cette page :

Sommaire

En relation :
Monitoring Bm-Tick
Explorer et analyser les donnees avec bm-tick

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 fichier 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 heartbeat

Correspond à 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.membersGauge
la 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étriques 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'agent

L'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 permet 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

bm-hpsservice d'authentification
authCountCounternombre de demandes de connexions à BlueMind
  • status success : connexion réussie
  • status failed : connexion échouée (mauvais identifiant et/ou mot de passe
ftlTemplates.requestsCounternombre de pages générées demandées
requestsCountCounternombre de requêtes servies par hps
  • kind : maintenance - affichage de la page de maintenance
  • kind : protected - affichage d'une page protégée

Permet notamment de vérifier le nombre d'affichage effectifs de la page de maintenance. Trop de requêtes de type "maintenance" peut être le signe d'un problème.

staticFile.requestsCounternombre de pages statiques demandéesexemple : page de login
upstreamRequestSizeDistSumtaille des requêtes
upstreamRequestTimeTimerdurée de traitement des requêtes
upstreamRequestsCountCounternombre de requêtes
bm-ipstraçage des opérations IMAP
activeConnectionsGaugenombre de connexions ips actives
bm-lmtpdservice de remise des emails
activeConnectionsGaugenombre de connexions actives
connectionCountCounter

deliveriesCounter

emailRecipientsDistSumnombre de destinataires par email
emailSizeDistSumtaille des emails
sessionDurationTimerdurée de session
traffic.transportLatencyTimer

bm-locatorlocalisation des services
executionTimeTimertemps d'exécution des requêtes
requestsCountCounternombre de requêtes reçues par le service
  • origin : composant ayant émis la requête
  • statusCode : code retour http
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-xmppservice de messagerie instantanée
packetsCountCounternombre de paquets transmis par le servicesert à voir à quel point le service de messagerie est utilisé ainsi que s'il fonctionne correctement ou a cessé de fonctionné
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
cpu
données d'utilisation des processeurspermet de contrôler l'utilisation et la répartition des processeurs
disk
données de gestion de l'espace disquepermet de contrôler l'espace disque utilisé/libre/total/etc. par disque, partition, chemin, etc.
diskio
nombre 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 https://github.com/influxdata/telegraf/tree/master/plugins/inputs/elasticsearch
imapd.process


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


postgresql
informations sur la base de données de BlueMind
processes


swap


syslog


system


Sv translation
languageen

Introduction

BlueMind's Tick package is used to monitor large amounts of data (metrics). Some monitored data is raw, but other data is the result of pre-processing to provide more relevance make interpretation and analysis easier.

Every metric has its own tree structure which can contain:

  • datalocation: server name
  • host: host name or IP 
  • meterType: data type
    • gauge: instant measurement
    • counter: incremental counter
    • distsum: counter-amount data pair 
      e.g.:
      • bm-lmtpd.emailSize = (number of emails, total size of emails)
      • bm-lmtpd.emailRecipients = (number of emails, number of recipients)
    • timer: same as distsum but with the amount always expressed in nanoseconds
  • status: depending on the type of data, this status may be ok/failed (e.g. request successful/failed), success/failure (e.g. authentication successful/failed), etc.

Common data

As a rule, metrics are grouped by component.

JVM

There are JVM metrics for every JVM component:

  • bm-<composant>.hprof: the number of hprof files on the server can be used as an indication of a crash
  • bm-<composant>.jvm.*: all the jvm information for this component (current or maximum memory usage, etc.)

Heartbeat

In each component with interactions with the core, you will find the following metrics which are used to make sure that the component is receiving the core's health data:

Metric NameTypeContentAdditional Information
heartbeat.receiver.ageGaugeage of the last heartbeat received

The time between 2 heartbeats.

The core is supposed to send its health information every 4 seconds. Durations exceeding this, or exceeding 8 seconds, may indicate some issue.

heartbeat.receiver.failuresCounternumber of failed heartbeats
heartbeat.receiver.latencyGaugeheartbeat delivery timeTime between the heartbeat being sent by the core and it being received by the component.
heartbeat.receiver.latencyMaxGaugemaximum heartbeat delivery time
heartbeat.receiver.receivedCounternumber of successful heartbeats

Hazelcast

The servers members of the hazelcast cluster comprise the following metric:

Metric NameTypeContentAdditional Information
cluster.membersGauge
The value of this metric must be '3'

Metrics

Metric NameTypeContentAdditional Information
agent.metricsGatheredCounternumber of metrics collected by the agentThis metric is mostly useful for checking whether the agent is working properly: no data means that the agent isn't collecting anything and therefore that it is no longer working.
agent.vmware*
agent host server data

The agent is enabled only if vmware tools are detected on the BlueMind host servers. In this case, the "vSphere Guest SDK" metrics are extracted and historized.

These metrics are used to diagnose issues with BlueMind's virtualization on vmware.

bluemind.cluster


bluemind.cluster.partitions


bm-coreMain BlueMind Engine
callsCountCounternumber of calls received by the core
dirVersionGauge

directory.cluster.eventsCounter

handlingDurationTimerrequest handling time
heartbeat.broadcastCounter

heartbeat.maxPeriodGauge

heartbeat.periodGauge

bm-easMobile Connection Service
executionTimeTimer

responseSizeDistSum

bm-hpsAuthentication Service
authCountCounternumber of connections requests to BlueMind
  • success: successful connection
  • failed: failed connection (wrong username and/or password)
ftlTemplates.requestsCounternumber of page requests
requestsCountCounternumber of hps requests
  • kind: maintenance - maintenance page displays
  • kind: protected - protected pages displays

Used, among other things, to check the number of times the maintenance page has been displayed. Too many "maintenance" requests may indicate an issue.

staticFile.requestsCounternumber of static page requestse.g.: login page
upstreamRequestSizeDistSum

upstreamRequestTimeTimerrequest handling duration
upstreamRequestsCountCounternumber of requests
bm-ipsIMAP Operations Tracking
activeConnectionsGaugenumber of active ips connections
bm-lmtpdEmail Delivery Service
activeConnectionsGaugenumber of active connections
connectionCountCounter

deliveriesCounter

emailRecipientsDistSumnumber of recipients per email
emailSizeDistSumsize of messages
sessionDurationTimer

traffic.transportLatencyTimer

bm-locatorService Localization
executionTimeTimerrequest execution time
requestsCountCounternumber of requests received by the service
  • origin: component that makes the request
  • statusCode: http return code
bm-milterAnalysis and Modification of Emails at SMTP Level
connectionsCountCounter

sessionDurationTimer

traffic.classCounter

traffic.sizeCounter

bm-webserverWeb Application Server
appCache.requestTimeTimer

appCache.requestsCounter

ftlTemplates.requestsCounternumber of display requests generated by the webserver
staticFile.requestsCounternumber of static page display requests
bm-xmppInstant Messaging Service
packetsCountCounternumber of packets sent by the serviceused to assess messaging service usage and whether it is working properly or has stopped
bm-ysnpData Validation Service
authCountCounternumber of requests handled
  • ok statuses: confirmed requests (e.g. authentications accepted for a username/password entered by a user)
  • failed statuses: rejected validations (e.g. failed authentications due to a wrong password)
Other
cpu
processor usage dataused to monitor usage and processor distribution
disk
disk handling spaceused to monitor disk usage space used/free/total/etc. by disk, partition, path, etc.
diskio
number of bites written/read in real timeused to see whether the disk is working properly or excessively
elasticsearch*
ElasticSearch datafor more information and details about ES metrics, please refer to the dedicated documentation https://github.com/influxdata/telegraf/tree/master/plugins/inputs/elasticsearch
imapd.process


influxdb*
metrics storage database data
kapacitor*
tool-specific data
kernel


kernel_vmstat


mem


memcached


net


netstat


nginx


phpfpm


postfix_queue


postgresql
BlueMind database information
processes


swap


syslog


system