HAProxy

Supported OS Linux Mac OS Windows

Dashboard HAProxy par défaut

Présentation

Enregistrez l’activité HAProxy dans Datadog pour :

  • Visualiser les performances d’équilibrage de charge de HAProxy
  • Être informé lorsqu’un serveur tombe en panne
  • Corréler les performances de HAProxy avec le reste de vos applications

Configuration

Installation

Le check HAProxy est inclus avec le package de l’Agent Datadog : vous n’avez donc rien d’autre à installer sur votre serveur HAProxy.

Préparer HAProxy

Utiliser Prometheus

Pour configurer cette intégration, il est recommandé d’activer l’endpoint Prometheus sur HAProxy. Depuis la version 2 (ou la version Enterprise 1.9rc1), cet endpoint est intégré à HAProxy. Si vous utilisez une version antérieure, pensez à configurer l’exportateur Prometheus HAProxy, ou configurez l’ancienne intégration basée sur les sockets décrite dans la section suivante.

  1. Configurez votre haproxy.conf en suivant le guide officiel.

  2. Activez le paramètre use_prometheus dans haproxy.d/conf.yaml.

  3. Redémarrez HAProxy pour activer l’endpoint Prometheus.

  4. Redémarrez l’Agent.

Utiliser l’endpoint stats

Remarque : cette stratégie de configuration est donnée à titre de référence pour les utilisateurs des versions antérieures. Si vous configurez l’intégration pour la première fois, appliquez plutôt la configuration Prometheus décrite dans la section précédente.

L’Agent recueille des métriques via un endpoint stats :

  1. Configurez un endpoint dans votre fichier haproxy.conf :

      listen stats # Define a listen section called "stats"
      bind :9000 # Listen on localhost:9000
      mode http
      stats enable  # Enable stats page
      stats hide-version  # Hide HAProxy version
      stats realm Haproxy\ Statistics  # Title text for popup window
      stats uri /haproxy_stats  # Stats URI
      stats auth Username:Password  # Authentication credentials
    
  2. Redémarrez HAProxy pour activer l’endpoint stats.

Configuration

Host

Pour configurer ce check lorsque l’Agent est exécuté sur un host :

Modifiez le fichier haproxy.d/conf.yaml dans le dossier conf.d/ à la racine du répertoire de configuration de votre Agent pour commencer à recueillir vos métriques et logs HAProxy. Consultez le fichier d’exemple haproxy.d/conf.yam pour découvrir toutes les options de configuration disponibles.

Collecte de métriques
  1. Ajoutez ce bloc de configuration à votre fichier haproxy.d/conf.yaml pour commencer à recueillir vos métriques HAProxy :

    init_config:
    
    instances:
      ## @param url - string - required
      ## Haproxy URL to connect to gather metrics.
      ## Set the according <USERNAME> and <PASSWORD> or use directly a unix stats
      ## or admin socket: unix:///var/run/haproxy.sock
      #
      - url: http://localhost/admin?stats
    
  2. Redémarrez l’Agent.

Collecte de logs

Par défaut, Haproxy envoie des logs via UDP sur le port 514. L’Agent peut effectuer une écoute afin d’obtenir ces logs sur ce port. Toutefois, il est nécessaire de procéder à une élévation des privilèges pour toute association vers un numéro de port inférieur à 1024. Pour ce faire, suivez les instructions ci-dessous. Vous pouvez également choisir d’utiliser un autre port. Dans ce cas, ignorez l’étape 3.

  1. La collecte de logs est désactivée par défaut dans l’Agent Datadog. Vous devez l’activer dans datadog.yaml :

    logs_enabled: true
    
  2. Ajoutez ce blog de configuration à votre fichier haproxy.d/conf.yaml pour commencer à recueillir vos logs HAProxy ;

    logs:
      - type: udp
        port: 514
        service: <SERVICE_NAME>
        source: haproxy
    

    Modifiez la valeur du paramètre service et configurez-le pour votre environnement. Consultez le fichier d’exemple haproxy.d/conf.yaml pour découvrir toutes les options de configuration disponibles.

  3. Autorisez l’accès au port 514 à l’aide de la commande setcap :

    sudo setcap CAP_NET_BIND_SERVICE=+ep /opt/datadog-agent/bin/agent/agent
    

    Pour vérifier que tout fonctionne, exécutez la commande getcap :

    sudo getcap /opt/datadog-agent/bin/agent/agent
    

    Voici le résultat attendu :

    /opt/datadog-agent/bin/agent/agent = cap_net_bind_service+ep
    

    Remarque : exécutez cette commande setcap à chaque mise à niveau de l’Agent.

  4. Redémarrez l’Agent.

Docker

Pour configurer ce check lorsque l’Agent est exécuté sur un conteneur :

Collecte de métriques

Définissez les modèles d’intégration Autodiscovery en tant qu’étiquettes Docker sur votre conteneur d’application :

LABEL "com.datadoghq.ad.check_names"='["haproxy"]'
LABEL "com.datadoghq.ad.init_configs"='[{}]'
LABEL "com.datadoghq.ad.instances"='[{"url": "https://%%host%%/admin?stats"}]'
Collecte de logs

La collecte des logs est désactivée par défaut dans l’Agent Datadog. Pour l’activer, consultez la section Collecte de logs avec Docker.

Définissez ensuite des intégrations de logs en tant qu’étiquettes Docker :

LABEL "com.datadoghq.ad.logs"='[{"source":"haproxy","service":"<NOM_SERVICE>"}]'

Kubernetes

Pour configurer ce check lorsque l’Agent est exécuté sur Kubernetes :

Collecte de métriques

Définissez des modèles d’intégration Autodiscovery en tant qu’annotations de pod sur votre conteneur d’application. Cette configuration peut également être réalisée avec un fichier, une configmap ou une paire key/value.

apiVersion: v1
kind: Pod
metadata:
  name: haproxy
  annotations:
    ad.datadoghq.com/haproxy.check_names: '["haproxy"]'
    ad.datadoghq.com/haproxy.init_configs: '[{}]'
    ad.datadoghq.com/haproxy.instances: |
      [
        {
          "url": "https://%%host%%/admin?stats"
        }
      ]      
spec:
  containers:
    - name: haproxy
Collecte de logs

Disponible à partir des versions > 6.0 de l’Agent

La collecte des logs est désactivée par défaut dans l’Agent Datadog. Pour l’activer, consultez la section Collecte de logs avec Kubernetes.

Définissez ensuite des intégrations de logs en tant qu’annotations de pod. Cette configuration peut également être réalisée avec un fichier, une configmap ou une paire key/value.

apiVersion: v1
kind: Pod
metadata:
  name: haproxy
  annotations:
    ad.datadoghq.com/mongo.logs: '[{"source":"haproxy","service":"<NOM_SERVICE>"}]'
spec:
  containers:
    - name: haproxy

ECS

Pour configurer ce check lorsque l’Agent est exécuté sur ECS :

Collecte de métriques

Définissez les modèles d’intégration Autodiscovery en tant qu’étiquettes Docker sur votre conteneur d’application :

{
  "containerDefinitions": [{
    "name": "haproxy",
    "image": "haproxy:latest",
    "dockerLabels": {
      "com.datadoghq.ad.check_names": "[\"haproxy\"]",
      "com.datadoghq.ad.init_configs": "[{}]",
      "com.datadoghq.ad.instances": "[{\"url\": \"https://%%host%%/admin?stats\"}]"
    }
  }]
}
Collecte de logs

Disponible à partir des versions > 6.0 de l’Agent

La collecte des logs est désactivée par défaut dans l’Agent Datadog. Pour l’activer, consultez la section Collecte de logs avec ECS.

Définissez ensuite des [intégrations de logs][5] en tant qu’étiquettes Docker :

{
  "containerDefinitions": [{
    "name": "haproxy",
    "image": "haproxy:latest",
    "dockerLabels": {
      "com.datadoghq.ad.logs": "[{\"source\":\"haproxy\",\"service\":\"<SERVICE_NAME>\"}]"
    }
  }]
}

Validation

Lancez la sous-commande status de l’Agent et cherchez haproxy dans la section Checks.

Données collectées

Métriques

haproxy.backend.active.servers
(gauge)
[OpenMetrics V1 and V2] Current number of active servers.
haproxy.backend.agg.server.check.status
(gauge)
[OpenMetrics V1 and V2] Backend's aggregated gauge of servers' state check status (since >= 2.4).
haproxy.backend.backup.servers
(gauge)
[OpenMetrics V1 and V2] Current number of backup servers.
haproxy.backend.bytes.in.total
(count)
[OpenMetrics V1] Current total of incoming bytes. By default submitted as count if using prometheus
Shown as byte
haproxy.backend.bytes.in.count
(count)
[OpenMetrics V2] Current total of incoming bytes. By default submitted as count if using prometheus
Shown as byte
haproxy.backend.bytes.out.total
(count)
[OpenMetrics V1] Current total of outgoing bytes. By default submitted as count if using prometheus
Shown as byte
haproxy.backend.bytes.out.count
(count)
[OpenMetrics V2] Current total of outgoing bytes. By default submitted as count if using prometheus
Shown as byte
haproxy.backend.check.last.change.seconds
(gauge)
[OpenMetrics V1 and V2] Number of seconds since the last UP<->DOWN transition.
haproxy.backend.check.up.down.total
(count)
[OpenMetrics V1] Total number of UP->DOWN transitions.
haproxy.backend.check.up.down.count
(count)
[OpenMetrics V2] Total number of UP->DOWN transitions.
haproxy.backend.client.aborts.total
(count)
[OpenMetrics V1] Total number of data transfers aborted by the client.
haproxy.backend.client.aborts.count
(count)
[OpenMetrics V2] Total number of data transfers aborted by the client.
haproxy.backend.connect.time.average.seconds
(gauge)
[OpenMetrics V1 and V2] Avg. connect time for last 1024 successful connections.
haproxy.backend.connection.attempts.total
(count)
[OpenMetrics V1] Total number of connection establishment attempts.
haproxy.backend.connection.attempts.count
(count)
[OpenMetrics V2] Total number of connection establishment attempts.
haproxy.backend.connection.errors.total
(count)
[OpenMetrics V1] Total number of connection errors.
haproxy.backend.connection.errors.count
(count)
[OpenMetrics V2] Total number of connection errors.
haproxy.backend.connection.reuses.total
(count)
[OpenMetrics V1] Total number of connection reuses.
haproxy.backend.connection.reuses.count
(count)
[OpenMetrics V2] Total number of connection reuses.
haproxy.backend.current.queue
(gauge)
[OpenMetrics V1 and V2] Current number of queued requests.
haproxy.backend.current.sessions
(gauge)
[OpenMetrics V1 and V2] Current number of active sessions.
haproxy.backend.downtime.seconds.total
(count)
[OpenMetrics V1] Total downtime (in seconds) for the service.
haproxy.backend.downtime.seconds.count
(count)
[OpenMetrics V2] Total downtime (in seconds) for the service.
haproxy.backend.failed.header.rewriting.total
(count)
[OpenMetrics V1] Total number of failed header rewriting warnings.
haproxy.backend.failed.header.rewriting.count
(count)
[OpenMetrics V2] Total number of failed header rewriting warnings.
haproxy.backend.http.cache.hits.total
(count)
[OpenMetrics V1] Total number of HTTP cache hits.
haproxy.backend.http.cache.hits.count
(count)
[OpenMetrics V2] Total number of HTTP cache hits.
haproxy.backend.http.cache.lookups.total
(count)
[OpenMetrics V1] Total number of HTTP cache lookups.
haproxy.backend.http.cache.lookups.count
(count)
[OpenMetrics V2] Total number of HTTP cache lookups.
haproxy.backend.http.comp.bytes.bypassed.total
(count)
[OpenMetrics V1] Total number of bytes that bypassed the HTTP compressor (CPU/BW limit).
Shown as byte
haproxy.backend.http.comp.bytes.bypassed.count
(count)
[OpenMetrics V2] Total number of bytes that bypassed the HTTP compressor (CPU/BW limit).
Shown as byte
haproxy.backend.http.comp.bytes.in.total
(count)
[OpenMetrics V1] Total number of HTTP response bytes fed to the compressor.
Shown as byte
haproxy.backend.http.comp.bytes.in.count
(count)
[OpenMetrics V2] Total number of HTTP response bytes fed to the compressor.
Shown as byte
haproxy.backend.http.comp.bytes.out.total
(count)
[OpenMetrics V1] Total number of HTTP response bytes emitted by the compressor.
Shown as byte
haproxy.backend.http.comp.bytes.out.count
(count)
[OpenMetrics V2] Total number of HTTP response bytes emitted by the compressor.
Shown as byte
haproxy.backend.http.comp.responses.total
(count)
[OpenMetrics V1] Total number of HTTP responses that were compressed.
haproxy.backend.http.comp.responses.count
(count)
[OpenMetrics V2] Total number of HTTP responses that were compressed.
haproxy.backend.http.requests.total
(count)
[OpenMetrics V1] Total number of HTTP requests received.
haproxy.backend.http.requests.count
(count)
[OpenMetrics V2] Total number of HTTP requests received.
haproxy.backend.http.responses.total
(count)
[OpenMetrics V1] Total number of HTTP responses.
haproxy.backend.http.responses.count
(count)
[OpenMetrics V2] Total number of HTTP responses.
haproxy.backend.internal.errors.total
(count)
[OpenMetrics V1] Total number of internal errors since process started (since >= 2.2).
haproxy.backend.internal.errors.count
(count)
[OpenMetrics V2] Total number of internal errors since process started (since >= 2.2).
haproxy.backend.last.session.seconds
(gauge)
[OpenMetrics V1 and V2] Number of seconds since last session assigned to server/backend.
haproxy.backend.limit.sessions
(gauge)
[OpenMetrics V1 and V2] Configured session limit.
haproxy.backend.loadbalanced.total
(count)
[OpenMetrics V1] Total number of times a service was selected, either for new sessions, or when redispatching.
haproxy.backend.loadbalanced.count
(count)
[OpenMetrics V2] Total number of times a service was selected, either for new sessions, or when redispatching.
haproxy.backend.max.connect.time.seconds
(gauge)
[OpenMetrics V1 and V2] Maximum observed time spent waiting for a connection to complete
haproxy.backend.max.queue
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of queued requests.
haproxy.backend.max.queue.time.seconds
(gauge)
[OpenMetrics V1 and V2] Maximum observed time spent in the queue
haproxy.backend.max.response.time.seconds
(gauge)
[OpenMetrics V1 and V2] Maximum observed time spent waiting for a server response
haproxy.backend.max.session.rate
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of sessions per second.
haproxy.backend.max.sessions
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of active sessions.
haproxy.backend.max.total.time.seconds
(gauge)
[OpenMetrics V1 and V2] Maximum observed total request+response time (request+queue+connect+response+processing)
haproxy.backend.max.count.time.seconds
(gauge)
[OpenMetrics V1 and V2] Maximum observed total request+response time (request+queue+connect+response+processing)
haproxy.backend.queue.time.average.seconds
(gauge)
[OpenMetrics V1 and V2] Avg. queue time for last 1024 successful connections.
haproxy.backend.redispatch.warnings.total
(count)
[OpenMetrics V1] Total number of redispatch warnings.
haproxy.backend.redispatch.warnings.count
(count)
[OpenMetrics V2] Total number of redispatch warnings.
haproxy.backend.requests.denied.total
(count)
[OpenMetrics V1] Total number of denied requests.
haproxy.backend.requests.denied.count
(count)
[OpenMetrics V2] Total number of denied requests.
haproxy.backend.response.errors.total
(count)
[OpenMetrics V1] Total number of response errors.
haproxy.backend.response.errors.count
(count)
[OpenMetrics V2] Total number of response errors.
haproxy.backend.response.time.average.seconds
(gauge)
[OpenMetrics V1 and V2] Avg. response time for last 1024 successful connections.
haproxy.backend.responses.denied.total
(count)
[OpenMetrics V1] Total number of denied responses.
haproxy.backend.responses.denied.count
(count)
[OpenMetrics V2] Total number of denied responses.
haproxy.backend.retry.warnings.total
(count)
[OpenMetrics V1] Total number of retry warnings.
haproxy.backend.retry.warnings.count
(count)
[OpenMetrics V2] Total number of retry warnings.
haproxy.backend.server.aborts.total
(count)
[OpenMetrics V1] Total number of data transfers aborted by the server.
haproxy.backend.server.aborts.count
(count)
[OpenMetrics V2] Total number of data transfers aborted by the server.
haproxy.backend.sessions.total
(count)
[OpenMetrics V1] Total number of sessions.
haproxy.backend.sessions.count
(count)
[OpenMetrics V2] Total number of sessions.
haproxy.backend.status
(gauge)
[OpenMetrics V1 and V2] Current status of the service. <= 2.3: gauge value determines state (frontend: 0=STOP, 1=UP, 2=FULL - backend: 0=DOWN, 1=UP - server: 0=DOWN, 1=UP, 2=MAINT, 3=DRAIN, 4=NOLB). >= 2.4 per state label value.
haproxy.backend.total.time.average.seconds
(gauge)
[OpenMetrics V1 and V2] Avg. total time for last 1024 successful connections.
haproxy.backend.count.time.average.seconds
(gauge)
[OpenMetrics V1 and V2] Avg. total time for last 1024 successful connections.
haproxy.backend.uweight
(gauge)
[OpenMetrics V1 and V2] Server's user weight or sum of active servers' user weights for a backend (>= 2.4).
haproxy.backend.weight
(gauge)
[OpenMetrics V1 and V2] Service weight.
haproxy.backend_hosts
(gauge)
[Legacy] Number of backend hosts.
Shown as host
haproxy.backend.bytes.in_rate
(gauge)
[Legacy] Rate of bytes in on backend hosts.
Shown as byte
haproxy.backend.bytes.out_rate
(gauge)
[Legacy] Rate of bytes out on backend hosts.
Shown as byte
haproxy.backend.connect.time
(gauge)
[Legacy] Average connect time over the last 1024 backend requests.
Shown as millisecond
haproxy.backend.denied.req_rate
(gauge)
[Legacy] Number of backend requests denied due to security concerns.
Shown as request
haproxy.backend.denied.resp_rate
(gauge)
[Legacy] Number of backend responses denied due to security concerns.
Shown as response
haproxy.backend.errors.con_rate
(gauge)
[Legacy] Rate of backend requests that encountered an error trying to connect to a backend server.
Shown as error
haproxy.backend.errors.resp_rate
(gauge)
[Legacy] Rate of backend responses aborted due to error.
Shown as error
haproxy.backend.queue.current
(gauge)
[Legacy] Number of backend requests without an assigned backend.
Shown as request
haproxy.backend.queue.time
(gauge)
[Legacy] Average queue time over the last 1024 backend requests.
Shown as millisecond
haproxy.backend.response.1xx
(gauge)
[Legacy] Backend HTTP responses with 1xx code per second.
Shown as response
haproxy.backend.response.2xx
(gauge)
[Legacy] Backend HTTP responses with 2xx code per second.
Shown as response
haproxy.backend.response.3xx
(gauge)
[Legacy] Backend HTTP responses with 3xx code per second.
Shown as response
haproxy.backend.response.4xx
(gauge)
[Legacy] Backend HTTP responses with 4xx code per second.
Shown as response
haproxy.backend.response.5xx
(gauge)
[Legacy] Backend HTTP responses with 5xx code per second.
Shown as response
haproxy.backend.response.other
(gauge)
[Legacy] Backend HTTP responses with other code (protocol error).
Shown as response
haproxy.backend.response.time
(gauge)
[Legacy] Average response time over the last 1024 backend requests (0 for TCP).
Shown as millisecond
haproxy.backend.requests.tot_rate
(gauge)
[Legacy] Rate of total number of backend HTTP requests.
Shown as request
haproxy.backend.session.current
(gauge)
[Legacy] Number of active backend sessions.
Shown as connection
haproxy.backend.session.limit
(gauge)
[Legacy] Configured backend session limit.
Shown as connection
haproxy.backend.session.pct
(gauge)
[Legacy] Percentage of sessions in use (backend.session.current/backend.session.limit * 100).
Shown as percent
haproxy.backend.session.rate
(gauge)
[Legacy] Number of backend sessions created per second.
Shown as connection
haproxy.backend.session.time
(gauge)
[Legacy] Average total session time over the last 1024 requests.
Shown as millisecond
haproxy.backend.uptime
(gauge)
[Legacy] Number of seconds since the last UP<->DOWN transition
Shown as second
haproxy.backend.warnings.redis_rate
(gauge)
[Legacy] Number of times a request was redispatched to another server.
Shown as error
haproxy.backend.warnings.retr_rate
(gauge)
[Legacy] Number of times a connection to a server was retried.
Shown as error
haproxy.count_per_status
(gauge)
[Legacy] Number of hosts by status (UP/DOWN/NOLB/MAINT).
Shown as host
haproxy.frontend.bytes.in.total
(count)
[OpenMetrics V1] Current total of incoming bytes. By default submitted as count if using prometheus
Shown as byte
haproxy.frontend.bytes.in.count
(count)
[OpenMetrics V2] Current total of incoming bytes. By default submitted as count if using prometheus
Shown as byte
haproxy.frontend.bytes.out.total
(count)
[OpenMetrics V1] Current total of outgoing bytes. By default submitted as count if using prometheus
Shown as byte
haproxy.frontend.bytes.out.count
(count)
[OpenMetrics V2] Current total of outgoing bytes. By default submitted as count if using prometheus
Shown as byte
haproxy.frontend.connections.rate.max
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of connections per second.
haproxy.frontend.connections.total
(count)
[OpenMetrics V1] Total number of connections.
haproxy.frontend.connections.count
(count)
[OpenMetrics V2] Total number of connections.
haproxy.frontend.current.sessions
(gauge)
[OpenMetrics V1 and V2] Current number of active sessions.
haproxy.frontend.denied.connections.total
(count)
[OpenMetrics V1] Total number of requests denied by 'tcp-request connection' rules.
haproxy.frontend.denied.connections.count
(count)
[OpenMetrics V2] Total number of requests denied by 'tcp-request connection' rules.
haproxy.frontend.denied.sessions.total
(count)
[OpenMetrics V1] Total number of requests denied by 'tcp-request session' rules.
haproxy.frontend.denied.sessions.count
(count)
[OpenMetrics V2] Total number of requests denied by 'tcp-request session' rules.
haproxy.frontend.failed.header.rewriting.total
(count)
[OpenMetrics V1] Total number of failed header rewriting warnings.
haproxy.frontend.failed.header.rewriting.count
(count)
[OpenMetrics V2] Total number of failed header rewriting warnings.
haproxy.frontend.http.cache.hits.total
(count)
[OpenMetrics V1] Total number of HTTP cache hits.
haproxy.frontend.http.cache.hits.count
(count)
[OpenMetrics V2] Total number of HTTP cache hits.
haproxy.frontend.http.cache.lookups.total
(count)
[OpenMetrics V1] Total number of HTTP cache lookups.
haproxy.frontend.http.cache.lookups.count
(count)
[OpenMetrics V2] Total number of HTTP cache lookups.
haproxy.frontend.http.comp.bytes.bypassed.total
(count)
[OpenMetrics V1] Total number of bytes that bypassed the HTTP compressor (CPU/BW limit).
Shown as byte
haproxy.frontend.http.comp.bytes.bypassed.count
(count)
[OpenMetrics V2] Total number of bytes that bypassed the HTTP compressor (CPU/BW limit).
Shown as byte
haproxy.frontend.http.comp.bytes.in.total
(count)
[OpenMetrics V1] Total number of HTTP response bytes fed to the compressor.
Shown as byte
haproxy.frontend.http.comp.bytes.in.count
(count)
[OpenMetrics V2] Total number of HTTP response bytes fed to the compressor.
Shown as byte
haproxy.frontend.http.comp.bytes.out.total
(count)
[OpenMetrics V1] Total number of HTTP response bytes emitted by the compressor.
Shown as byte
haproxy.frontend.http.comp.bytes.out.count
(count)
[OpenMetrics V2] Total number of HTTP response bytes emitted by the compressor.
Shown as byte
haproxy.frontend.http.comp.responses.total
(count)
[OpenMetrics V1] Total number of HTTP responses that were compressed.
haproxy.frontend.http.comp.responses.count
(count)
[OpenMetrics V2] Total number of HTTP responses that were compressed.
haproxy.frontend.http.requests.rate.max
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of HTTP requests per second.
haproxy.frontend.http.requests.total
(count)
[OpenMetrics V1] Total number of HTTP requests received.
haproxy.frontend.http.requests.count
(count)
[OpenMetrics V2] Total number of HTTP requests received.
haproxy.frontend.http.responses.total
(count)
[OpenMetrics V1] Total number of HTTP responses.
haproxy.frontend.http.responses.count
(count)
[OpenMetrics V2] Total number of HTTP responses.
haproxy.frontend.intercepted.requests.total
(count)
[OpenMetrics V1] Total number of intercepted HTTP requests.
haproxy.frontend.intercepted.requests.count
(count)
[OpenMetrics V2] Total number of intercepted HTTP requests.
haproxy.frontend.internal.errors.total
(count)
[OpenMetrics V1] Total number of internal errors since process started (since >= 2.2).
haproxy.frontend.internal.errors.count
(count)
[OpenMetrics V2] Total number of internal errors since process started (since >= 2.2).
haproxy.frontend.limit.session.rate
(gauge)
[OpenMetrics V1 and V2] Configured limit on new sessions per second.
haproxy.frontend.limit.sessions
(gauge)
[OpenMetrics V1 and V2] Configured session limit.
haproxy.frontend.max.session.rate
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of sessions per second.
haproxy.frontend.max.sessions
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of active sessions.
haproxy.frontend.request.errors.total
(count)
[OpenMetrics V1] Total number of request errors.
haproxy.frontend.request.errors.count
(count)
[OpenMetrics V2] Total number of request errors.
haproxy.frontend.requests.denied.total
(count)
[OpenMetrics V1] Total number of denied requests.
haproxy.frontend.requests.denied.count
(count)
[OpenMetrics V2] Total number of denied requests.
haproxy.frontend.responses.denied.total
(count)
[OpenMetrics V1] Total number of denied responses.
haproxy.frontend.responses.denied.count
(count)
[OpenMetrics V2] Total number of denied responses.
haproxy.frontend.sessions.total
(count)
[OpenMetrics V1] Total number of sessions.
haproxy.frontend.sessions.count
(count)
[OpenMetrics V2] Total number of sessions.
haproxy.frontend.status
(gauge)
[OpenMetrics V1 and V2] Current status of the service. <= 2.3: gauge value determines state (frontend: 0=STOP, 1=UP, 2=FULL - backend: 0=DOWN, 1=UP - server: 0=DOWN, 1=UP, 2=MAINT, 3=DRAIN, 4=NOLB). >= 2.4 per state label value.
haproxy.frontend.bytes.in_rate
(gauge)
[Legacy] Rate of bytes in on frontend hosts.
Shown as byte
haproxy.frontend.bytes.out_rate
(gauge)
[Legacy] Rate of bytes out on frontend hosts.
Shown as byte
haproxy.frontend.connections.rate
(gauge)
[Legacy] Number of connections per second.
Shown as connection
haproxy.frontend.connections.tot_rate
(gauge)
[Legacy] Rate of total number of frontend connections.
Shown as connection
haproxy.frontend.denied.req_rate
(gauge)
[Legacy] Number of frontend requests denied due to security concerns.
Shown as request
haproxy.frontend.denied.resp_rate
(gauge)
[Legacy] Number of frontend responses denied due to security concerns.
Shown as response
haproxy.frontend.errors.req_rate
(gauge)
[Legacy] Rate of frontend request errors.
Shown as error
haproxy.frontend.requests.intercepted
(gauge)
[Legacy] Number of intercepted frontend requests per second.
Shown as request
haproxy.frontend.requests.rate
(gauge)
[Legacy] Number of frontend HTTP requests per second.
Shown as request
haproxy.frontend.requests.tot_rate
(gauge)
[Legacy] Rate of total number of frontend HTTP requests.
Shown as request
haproxy.frontend.response.1xx
(gauge)
[Legacy] Frontend HTTP responses with 1xx code.
Shown as response
haproxy.frontend.response.2xx
(gauge)
[Legacy] Frontend HTTP responses with 2xx code.
Shown as response
haproxy.frontend.response.3xx
(gauge)
[Legacy] Frontend HTTP responses with 3xx code.
Shown as response
haproxy.frontend.response.4xx
(gauge)
[Legacy] Frontend HTTP responses with 4xx code.
Shown as response
haproxy.frontend.response.5xx
(gauge)
[Legacy] Frontend HTTP responses with 5xx code.
Shown as response
haproxy.frontend.response.other
(gauge)
[Legacy] Frontend HTTP responses with other code (protocol error).
Shown as response
haproxy.frontend.session.current
(gauge)
[Legacy] Number of active frontend sessions.
Shown as connection
haproxy.frontend.session.limit
(gauge)
[Legacy] Configured frontend session limit.
Shown as connection
haproxy.frontend.session.pct
(gauge)
[Legacy] Percentage of sessions in use (frontend.session.current/frontend.session.limit * 100.
Shown as percent
haproxy.frontend.session.rate
(gauge)
[Legacy] Number of frontend sessions created per second.
Shown as connection
haproxy.listener.bytes.in.total
(count)
[OpenMetrics V1] Total number of request bytes since process started (>= 2.4).
haproxy.listener.bytes.in.count
(count)
[OpenMetrics V2] Total number of request bytes since process started (>= 2.4).
haproxy.listener.bytes.out.total
(count)
[OpenMetrics V1] Total number of response bytes since process started (>= 2.4).
haproxy.listener.bytes.out.count
(count)
[OpenMetrics V2] Total number of response bytes since process started (>= 2.4).
haproxy.listener.current.sessions
(gauge)
[OpenMetrics V1 and V2] Number of current sessions on the frontend, backend or server (>= 2.4).
haproxy.listener.denied.connections.total
(count)
[OpenMetrics V1] Total number of incoming connections blocked on a listener/frontend by a tcp-request connection rule since the worker process started (>= 2.4).
haproxy.listener.denied.connections.count
(count)
[OpenMetrics V2] Total number of incoming connections blocked on a listener/frontend by a tcp-request connection rule since the worker process started (>= 2.4).
haproxy.listener.denied.sessions.total
(count)
[OpenMetrics V1] Total number of incoming sessions blocked on a listener/frontend by a tcp-request connection rule since the worker process started
haproxy.listener.denied.sessions.count
(count)
[OpenMetrics V2] Total number of incoming sessions blocked on a listener/frontend by a tcp-request connection rule since the worker process started
haproxy.listener.failed.header.rewriting.total
(count)
[OpenMetrics V1] Total number of failed HTTP header rewrites since the worker process started (>= 2.4).
haproxy.listener.failed.header.rewriting.count
(count)
[OpenMetrics V2] Total number of failed HTTP header rewrites since the worker process started (>= 2.4).
haproxy.listener.internal.errors.total
(count)
[OpenMetrics V1] Total number of internal errors since process started (>= 2.4).
haproxy.listener.internal.errors.count
(count)
[OpenMetrics V2] Total number of internal errors since process started (>= 2.4).
haproxy.listener.limit.sessions
(gauge)
[OpenMetrics V1 and V2] Frontend/listener/server's maxconn, backend's fullconn (>= 2.4).
haproxy.listener.max.sessions
(gauge)
[OpenMetrics V1 and V2] Highest value of current sessions encountered since process started (>= 2.4).
haproxy.listener.request.errors.total
(count)
[OpenMetrics V1] Total number of invalid requests since process started (>= 2.4).
haproxy.listener.request.errors.count
(count)
[OpenMetrics V2] Total number of invalid requests since process started (>= 2.4).
haproxy.listener.requests.denied.total
(count)
[OpenMetrics V1] Total number of denied requests since process started (>= 2.4).
haproxy.listener.requests.denied.count
(count)
[OpenMetrics V2] Total number of denied requests since process started (>= 2.4).
haproxy.listener.responses.denied.total
(count)
[OpenMetrics V1] Total number of denied responses since process started (>= 2.4).
haproxy.listener.responses.denied.count
(count)
[OpenMetrics V2] Total number of denied responses since process started (>= 2.4).
haproxy.listener.sessions.total
(count)
[OpenMetrics V1] Total number of sessions since process started (>= 2.4).
haproxy.listener.sessions.count
(count)
[OpenMetrics V2] Total number of sessions since process started (>= 2.4).
haproxy.listener.status
(gauge)
[OpenMetrics V1 and V2] Current status of the service, per state label value (>= 2.4).
haproxy.process.active.peers
(gauge)
[OpenMetrics V1 and V2] Current number of active peers.
haproxy.process.build_info
(gauge)
[OpenMetrics V1 and V2] Build info.
haproxy.process.busy.polling.enabled
(gauge)
[OpenMetrics V1 and V2] Non zero if the busy polling is enabled.
haproxy.process.bytes.out.rate
(gauge)
[OpenMetrics V1 and V2] Number of bytes emitted by current worker process over the last second (>= 2.3).
haproxy.process.bytes.out.total
(count)
[OpenMetrics V1] Total number of bytes emitted by current worker process since started (>= 2.3).
haproxy.process.bytes.out.count
(count)
[OpenMetrics V2] Total number of bytes emitted by current worker process since started (>= 2.3).
haproxy.process.connected.peers
(gauge)
[OpenMetrics V1 and V2] Current number of connected peers.
haproxy.process.connections.total
(count)
[OpenMetrics V1] Total number of created sessions.
haproxy.process.connections.count
(count)
[OpenMetrics V2] Total number of created sessions.
haproxy.process.current.backend.ssl.key.rate
(gauge)
[OpenMetrics V1 and V2] Current backend SSL Key computation per second over last elapsed second.
haproxy.process.current.connection.rate
(gauge)
[OpenMetrics V1 and V2] Current number of connections per second over last elapsed second.
haproxy.process.current.connections
(gauge)
[OpenMetrics V1 and V2] Number of active sessions.
haproxy.process.current.frontend.ssl.key.rate
(gauge)
[OpenMetrics V1 and V2] Current frontend SSL Key computation per second over last elapsed second.
haproxy.process.current.run.queue
(gauge)
[OpenMetrics V1 and V2] Current number of tasks in the run-queue.
haproxy.process.current.session.rate
(gauge)
[OpenMetrics V1 and V2] Current number of sessions per second over last elapsed second.
haproxy.process.current.ssl.connections
(gauge)
[OpenMetrics V1 and V2] Number of opened SSL connections.
haproxy.process.current.ssl.rate
(gauge)
[OpenMetrics V1 and V2] Current number of SSL sessions per second over last elapsed second.
haproxy.process.current.tasks
(gauge)
[OpenMetrics V1 and V2] Current number of tasks.
haproxy.process.current.zlib.memory
(gauge)
[OpenMetrics V1 and V2] Current memory used for zlib in bytes (zlib is no longer the default since >= 2.4).
haproxy.process.dropped.logs.total
(count)
[OpenMetrics V1] Total number of dropped logs.
haproxy.process.dropped.logs.count
(count)
[OpenMetrics V2] Total number of dropped logs.
haproxy.process.failed.resolutions
(count)
[OpenMetrics V1] Total number of failed DNS resolutions in current worker process since started (>= 2.3).
haproxy.process.failed.resolutions.count
(count)
[OpenMetrics V2] Total number of failed DNS resolutions in current worker process since started (>= 2.3).
haproxy.process.frontend.ssl.reuse
(gauge)
[OpenMetrics V1 and V2] SSL session reuse ratio (percent).
haproxy.process.hard.max.connections
(gauge)
[OpenMetrics V1 and V2] Initial Maximum number of concurrent connections.
haproxy.process.http.comp.bytes.in.total
(count)
[OpenMetrics V1] Number of bytes per second over last elapsed second, before http compression.
Shown as byte
haproxy.process.http.comp.bytes.in.count
(count)
[OpenMetrics V2] Number of bytes per second over last elapsed second, before http compression.
Shown as byte
haproxy.process.http.comp.bytes.out.total
(count)
[OpenMetrics V1] Number of bytes per second over last elapsed second, after http compression.
Shown as byte
haproxy.process.http.comp.bytes.out.count
(count)
[OpenMetrics V2] Number of bytes per second over last elapsed second, after http compression.
Shown as byte
haproxy.process.idle.time.percent
(gauge)
[OpenMetrics V1 and V2] Idle to total ratio over last sample (percent).
haproxy.process.jobs
(gauge)
[OpenMetrics V1 and V2] Current number of active jobs (listeners, sessions, open devices).
haproxy.process.limit.connection.rate
(gauge)
[OpenMetrics V1 and V2] Configured maximum number of connections per second.
haproxy.process.limit.http.comp
(gauge)
[OpenMetrics V1 and V2] Configured maximum input compression rate in bytes.
haproxy.process.limit.session.rate
(gauge)
[OpenMetrics V1 and V2] Configured maximum number of sessions per second.
haproxy.process.limit.ssl.rate
(gauge)
[OpenMetrics V1 and V2] Configured maximum number of SSL sessions per second.
haproxy.process.listeners
(gauge)
[OpenMetrics V1 and V2] Current number of active listeners.
haproxy.process.max.backend.ssl.key.rate
(gauge)
[OpenMetrics V1 and V2] Maximum observed backend SSL Key computation per second.
haproxy.process.max.connection.rate
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of connections per second.
haproxy.process.max.connections
(gauge)
[OpenMetrics V1 and V2] Maximum number of concurrent connections.
haproxy.process.max.fds
(gauge)
[OpenMetrics V1 and V2] Maximum number of open file descriptors; 0=unset.
haproxy.process.max.frontend.ssl.key.rate
(gauge)
[OpenMetrics V1 and V2] Maximum observed frontend SSL Key computation per second.
haproxy.process.max.memory.bytes
(gauge)
[OpenMetrics V1 and V2] Per-process memory limit (in bytes); 0=unset.
haproxy.process.max.pipes
(gauge)
[OpenMetrics V1 and V2] Configured maximum number of pipes.
haproxy.process.max.session.rate
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of sessions per second.
haproxy.process.max.sockets
(gauge)
[OpenMetrics V1 and V2] Maximum number of open sockets.
haproxy.process.max.ssl.connections
(gauge)
[OpenMetrics V1 and V2] Configured maximum number of concurrent SSL connections.
haproxy.process.max.ssl.rate
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of SSL sessions per second.
haproxy.process.max.zlib.memory
(gauge)
[OpenMetrics V1 and V2] Configured maximum amount of memory for zlib in bytes (zlib is no longer the default since >= 2.4).
haproxy.process.nbproc
(gauge)
[OpenMetrics V1 and V2] Configured number of processes.
haproxy.process.nbthread
(gauge)
[OpenMetrics V1 and V2] Configured number of threads.
haproxy.process.pipes.free.total
(count)
[OpenMetrics V1] Number of pipes unused.
haproxy.process.pipes.free.count
(count)
[OpenMetrics V2] Number of pipes unused.
haproxy.process.pipes.used.total
(count)
[OpenMetrics V1] Number of pipes in used.
haproxy.process.pipes.used.count
(count)
[OpenMetrics V2] Number of pipes in used.
haproxy.process.pool.allocated.bytes
(gauge)
[OpenMetrics V1 and V2] Total amount of memory allocated in pools (in bytes).
haproxy.process.pool.failures.total
(count)
[OpenMetrics V1] Total number of failed pool allocations.
haproxy.process.pool.failures.count
(count)
[OpenMetrics V2] Total number of failed pool allocations.
haproxy.process.pool.used.bytes
(gauge)
[OpenMetrics V1 and V2] Total amount of memory used in pools (in bytes).
haproxy.process.recv.logs.total
(count)
[OpenMetrics V1] Total number of log messages received by log-forwarding listeners on this worker process since started (>= 2.4).
haproxy.process.recv.logs.count
(count)
[OpenMetrics V2] Total number of log messages received by log-forwarding listeners on this worker process since started (>= 2.4).
haproxy.process.relative.process.id
(gauge)
[OpenMetrics V1 and V2] Relative process id, starting at 1.
haproxy.process.requests.total
(count)
[OpenMetrics V1] Total number of requests (TCP or HTTP).
haproxy.process.requests.count
(count)
[OpenMetrics V2] Total number of requests (TCP or HTTP).
haproxy.process.spliced.bytes.out.total
(count)
[OpenMetrics V1] Total number of bytes emitted by current worker process through a kernel pipe since started (>= 2.3).
haproxy.process.spliced.bytes.out.count
(count)
[OpenMetrics V2] Total number of bytes emitted by current worker process through a kernel pipe since started (>= 2.3).
haproxy.process.ssl.cache.lookups.total
(count)
[OpenMetrics V1] Total number of SSL session cache lookups.
haproxy.process.ssl.cache.lookups.count
(count)
[OpenMetrics V2] Total number of SSL session cache lookups.
haproxy.process.ssl.cache.misses.total
(count)
[OpenMetrics V1] Total number of SSL session cache misses.
haproxy.process.ssl.cache.misses.count
(count)
[OpenMetrics V2] Total number of SSL session cache misses.
haproxy.process.ssl.connections.total
(count)
[OpenMetrics V1] Total number of opened SSL connections.
haproxy.process.ssl.connections.count
(count)
[OpenMetrics V2] Total number of opened SSL connections.
haproxy.process.start.time.seconds
(gauge)
[OpenMetrics V1 and V2] Start time in seconds.
haproxy.process.stopping
(gauge)
[OpenMetrics V1 and V2] Non zero means stopping in progress.
haproxy.process.unstoppable.jobs
(gauge)
[OpenMetrics V1 and V2] Current number of active jobs that can't be stopped during a soft stop.
haproxy.process.uptime.seconds
(gauge)
[OpenMetrics V1 and V2] How long ago this worker process was started (>= 2.4).
haproxy.server.bytes.in.total
(count)
[OpenMetrics V1] Current total of incoming bytes.
Shown as byte
haproxy.server.bytes.in.count
(count)
[OpenMetrics V2] Current total of incoming bytes.
Shown as byte
haproxy.server.bytes.out.total
(count)
[OpenMetrics V1] Current total of outgoing bytes.
Shown as byte
haproxy.server.bytes.out.count
(count)
[OpenMetrics V2] Current total of outgoing bytes.
Shown as byte
haproxy.server.check.code
(gauge)
[OpenMetrics V1 and V2] layer5-7 code, if available of the last health check. (>= 2.0)
haproxy.server.check.duration.seconds
(gauge)
[OpenMetrics V1 and V2] Previously run health check duration (>= 2.0)
Shown as second
haproxy.server.check.failures.total
(count)
[OpenMetrics V1] Total number of failed check (Only counts checks failed when the server is up).
haproxy.server.check.failures.count
(count)
[OpenMetrics V2] Total number of failed check (Only counts checks failed when the server is up).
haproxy.server.check.last.change.seconds
(gauge)
[OpenMetrics V1 and V2] Number of seconds since the last UP<->DOWN transition. (>= 2.0)
Shown as second
haproxy.server.check.status
(gauge)
[OpenMetrics V1 and V2] Status of last health check, if enabled.. <= 2.3 HCHKSTATUS* values in haproxy doc. >= 2.4 per state label value.
haproxy.server.check.up.down.total
(count)
[OpenMetrics V1] Total number of UP->DOWN transitions.
haproxy.server.check.up.down.count
(count)
[OpenMetrics V2] Total number of UP->DOWN transitions.
haproxy.server.client.aborts.total
(count)
[OpenMetrics V1] Total number of data transfers aborted by the client.
haproxy.server.client.aborts.count
(count)
[OpenMetrics V2] Total number of data transfers aborted by the client.
haproxy.server.connect.time.average.seconds
(gauge)
[OpenMetrics V1 and V2] Avg. connect time for last 1024 successful connections.
haproxy.server.connection.attempts.total
(count)
[OpenMetrics V1] Total number of connection establishment attempts.
haproxy.server.connection.attempts.count
(count)
[OpenMetrics V2] Total number of connection establishment attempts.
haproxy.server.connection.errors.total
(count)
[OpenMetrics V1] Total number of connection errors.
haproxy.server.connection.errors.count
(count)
[OpenMetrics V2] Total number of connection errors.
haproxy.server.connection.reuses.total
(count)
[OpenMetrics V1] Total number of connection reuses.
haproxy.server.connection.reuses.count
(count)
[OpenMetrics V2] Total number of connection reuses.
haproxy.server.current.queue
(gauge)
[OpenMetrics V1 and V2] Current number of queued requests.
haproxy.server.current.sessions
(gauge)
[OpenMetrics V1 and V2] Current number of active sessions.
haproxy.server.current.throttle
(gauge)
[OpenMetrics V1 and V2] Current throttle percentage for the server, when slowstart is active, or no value if not in slowstart.
haproxy.server.downtime.seconds.total
(count)
[OpenMetrics V1] Total downtime (in seconds) for the service.
haproxy.server.downtime.seconds.count
(count)
[OpenMetrics V2] Total downtime (in seconds) for the service.
haproxy.server.failed.header.rewriting.total
(count)
[OpenMetrics V1] Total number of failed header rewriting warnings.
haproxy.server.failed.header.rewriting.count
(count)
[OpenMetrics V2] Total number of failed header rewriting warnings.
haproxy.server.http.responses.total
(count)
[OpenMetrics V1] Total number of HTTP responses.
haproxy.server.http.responses.count
(count)
[OpenMetrics V2] Total number of HTTP responses.
haproxy.server.idle.connections.current
(gauge)
[OpenMetrics V1 and V2] Current number of idle connections available for reuse.
haproxy.server.idle.connections.limit
(gauge)
[OpenMetrics V1 and V2] Limit on the number of available idle connections.
haproxy.server.internal.errors.total
(count)
[OpenMetrics V1] Total number of internal errors since process started (since >= 2.2).
haproxy.server.internal.errors.count
(count)
[OpenMetrics V2] Total number of internal errors since process started (since >= 2.2).
haproxy.server.last.session.seconds
(gauge)
[OpenMetrics V1 and V2] Number of seconds since last session assigned to server/backend.
haproxy.server.limit.sessions
(gauge)
[OpenMetrics V1 and V2] Configured session limit.
haproxy.server.loadbalanced.total
(count)
[OpenMetrics V1] Total number of times a service was selected, either for new sessions, or when redispatching.
haproxy.server.loadbalanced.count
(count)
[OpenMetrics V2] Total number of times a service was selected, either for new sessions, or when redispatching.
haproxy.server.max.connect.time.seconds
(gauge)
[OpenMetrics V1 and V2] Maximum observed time spent waiting for a connection to complete
haproxy.server.max.queue
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of queued requests.
haproxy.server.max.queue.time.seconds
(gauge)
[OpenMetrics V1 and V2] Maximum observed time spent in the queue
haproxy.server.max.response.time.seconds
(gauge)
[OpenMetrics V1 and V2] Maximum observed time spent waiting for a server response
haproxy.server.max.session.rate
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of sessions per second.
haproxy.server.max.sessions
(gauge)
[OpenMetrics V1 and V2] Maximum observed number of active sessions.
haproxy.server.max.total.time.seconds
(gauge)
[OpenMetrics V1 and V2] Maximum observed total request+response time (request+queue+connect+response+processing)
haproxy.server.max.count.time.seconds
(gauge)
[OpenMetrics V1 and V2] Maximum observed total request+response time (request+queue+connect+response+processing)
haproxy.server.need.connections.current
(gauge)
[OpenMetrics V1 and V2] Estimated needed number of connections (>= 2.3).
haproxy.server.queue.limit
(gauge)
[OpenMetrics V1 and V2] Configured maxqueue for the server (0 meaning no limit).
haproxy.server.queue.time.average.seconds
(gauge)
[OpenMetrics V1 and V2] Avg. queue time for last 1024 successful connections.
haproxy.server.redispatch.warnings.total
(count)
[OpenMetrics V1] Total number of redispatch warnings.
haproxy.server.redispatch.warnings.count
(count)
[OpenMetrics V2] Total number of redispatch warnings.
haproxy.server.response.errors.total
(count)
[OpenMetrics V1] Total number of response errors.
haproxy.server.response.errors.count
(count)
[OpenMetrics V2] Total number of response errors.
haproxy.server.response.time.average.seconds
(gauge)
[OpenMetrics V1 and V2] Avg. response time for last 1024 successful connections.
haproxy.server.responses.denied.total
(count)
[OpenMetrics V1] Total number of denied responses.
haproxy.server.responses.denied.count
(count)
[OpenMetrics V2] Total number of denied responses.
haproxy.server.safe.idle.connections.current
(gauge)
[OpenMetrics V1 and V2] Current number of safe idle connections (>= 2.3).
haproxy.server.retry.warnings.total
(count)
[OpenMetrics V1] Total number of retry warnings.
haproxy.server.retry.warnings.count
(count)
[OpenMetrics V2] Total number of retry warnings.
haproxy.server.server.aborts.total
(count)
[OpenMetrics V1] Total number of data transfers aborted by the server.
haproxy.server.server.aborts.count
(count)
[OpenMetrics V2] Total number of data transfers aborted by the server.
haproxy.server.server.idle.connections.current
(gauge)
[OpenMetrics V1 and V2] Current number of idle connections available for reuse
haproxy.server.server.idle.connections.limit
(gauge)
[OpenMetrics V1 and V2] Limit on the number of available idle connections
haproxy.server.sessions.total
(count)
[OpenMetrics V1] Total number of sessions.
haproxy.server.sessions.count
(count)
[OpenMetrics V2] Total number of sessions.
haproxy.server.status
(gauge)
[OpenMetrics V1 and V2] Current status of the service. <= 2.3: gauge value determines state (frontend: 0=STOP, 1=UP, 2=FULL - backend: 0=DOWN, 1=UP - server: 0=DOWN, 1=UP, 2=MAINT, 3=DRAIN, 4=NOLB). >= 2.4 per state label value.
haproxy.server.total.time.average.seconds
(gauge)
[OpenMetrics V1 and V2] Avg. total time for last 1024 successful connections.
haproxy.server.unsafe.idle.connections.current
(gauge)
[OpenMetrics V1 and V2] Current number of unsafe idle connections (>= 2.3).
haproxy.server.used.connections.current
(gauge)
[OpenMetrics V1 and V2] Current number of connections in use (>= 2.3).
haproxy.server.uweight
(gauge)
[OpenMetrics V1 and V2] Server's user weight or sum of active servers' user weights for a backend (>= 2.4).
haproxy.server.weight
(gauge)
[OpenMetrics V1 and V2] Service weight.
haproxy.sticktable.size
(gauge)
[OpenMetrics V1 and V2] Maximum number of elements the table can hold (<= 2.3 through unix socket, >= 2.4 through prometheus).
haproxy.sticktable.used
(gauge)
[OpenMetrics V1 and V2] Number of elements in the table (<= 2.3 through unix socket, >= 2.4 through prometheus).

Événements

Le check HAProxy n’inclut aucun événement.

Checks de service

haproxy.backend_up :
Convertit la page de statut HAProxy en checks de service. Renvoie CRITICAL pour un service donné si HAProxy le signale comme down. Renvoie OK pour les états maint, ok et tout autre état.

Dépannage

Besoin d’aide ? Contactez l’assistance Datadog.

Pour aller plus loin