• /
  • EnglishEspañolFrançais日本語한국어Português
  • Se connecterDémarrer

Cette traduction automatique est fournie pour votre commodité.

En cas d'incohérence entre la version anglaise et la version traduite, la version anglaise prévaudra. Veuillez visiter cette page pour plus d'informations.

Créer un problème

Référence des métriques HAProxy OTel

Cette page fournit une référence complète de toutes les métriques HAProxy collectées via OpenTelemetry, y compris les chemins du haproxyreceiver et du récepteur Prometheus.

Présentation

L’intégration HAProxy OpenTelemetry collecte des métriques à partir du point de terminaison de statistiques CSV HAProxy via le haproxyreceiver. Les métriques sont organisées en deux niveaux :

  • Métriques par défaut (17): collectées automatiquement avec la configuration par défaut — suffisantes pour la plupart des cas d’utilisation de monitoring
  • Métriques optionnelles (16): désactivées par défaut, activées individuellement dans la section metrics du récepteur — utiles pour le débogage détaillé et la planification de la capacité

Lors de l’utilisation de l’installation guidée NRDOT, vous pouvez choisir entre deux configurations :

  • Optimisé (ingestion plus faible) : 17 métriques par défaut, intervalle de collecte de 60 s, processeurs d'optimisation appliqués
  • Complet (détails complets) : 27 métriques (17 par défaut + 10 facultatives), intervalle de collecte de 15 s

Conseil

Pour activer les métriques facultatives, ajoutez-les à la section metrics de votre configuration de Récepteur haproxy avec enabled: true. Consultez Monitorer HAProxy auto-hébergé avec OpenTelemetry pour les détails de configuration.

Métriques par défaut

Ces 17 métriques sont collectées avec la configuration par défaut (aucune section metrics n’est nécessaire).

Nom métrique

Description

Type

Unité

haproxy.bytes.input

Total des octets reçus par le proxy (collectés par frontend, backend et serveur)

Somme (cumulative)

Par

haproxy.bytes.output

Nombre total d'octets envoyés par le proxy (collectés par frontend, backend et serveur)

Somme (cumulative)

Par

haproxy.connections.errors

Nombre total d'erreurs de connexion (backend et serveur uniquement)

Somme (cumulative)

{errors}

haproxy.connections.rate

Nombre de connexions par seconde au cours de la dernière seconde écoulée (frontend uniquement)

Jauge

{connections}/s

haproxy.connections.retries

Nombre total de tentatives de connexion (backend et serveur uniquement)

Somme (cumulative)

{retries}

haproxy.requests.denied

Nombre total de requests refusées (frontend et backend)

Somme (cumulative)

{requests}

haproxy.requests.errors

Nombre total d'erreurs de request (frontend uniquement)

Somme (cumulative)

{errors}

haproxy.requests.queued

Nombre actuel de requests en file d’attente (backend et serveur uniquement)

Jauge

{requests}

haproxy.requests.rate

Nombre de requests HTTP par seconde au cours de la dernière seconde écoulée (frontend uniquement)

Jauge

{requests}/s

haproxy.requests.redispatched

Nombre total de redistributions de requests (backend et serveur uniquement)

Somme (cumulative)

{requests}

haproxy.requests.total

Nombre total de requests HTTP reçues (frontend et backend)

Somme (cumulative)

{requests}

haproxy.responses.denied

Nombre total de réponses refusées (frontend, backend et serveur)

Somme (cumulative)

{responses}

haproxy.responses.errors

Nombre total d'erreurs de réponse (backend et serveur uniquement)

Somme (cumulative)

{errors}

haproxy.server_selected.total

Nombre total de fois où un serveur a été sélectionné pour l'équilibrage de charge (backend et serveur)

Somme (cumulative)

{selections}

haproxy.sessions.average

Temps de session total moyen sur les 1024 dernières requests, en secondes (backend et serveur)

Jauge

s

haproxy.sessions.count

Nombre actuel de sessions actives (frontend, backend et serveur)

Jauge

{sessions}

haproxy.sessions.rate

Nombre de sessions par seconde au cours de la dernière seconde écoulée (frontend, backend et serveur)

Jauge

{sessions}/s

Métriques facultatives

Ces 16 métriques sont désactivées par défaut. Activez-les individuellement dans la configuration de votre collecteur en définissant enabled: true dans la section metrics du récepteur.

La configuration complète NRDOT active les 10 premiers d'entre eux (marqués d'un [C]).

Nom métrique

Description

Type

Unité

haproxy.connections.average_time

[C]

Temps de connexion moyen en secondes (monitoring de latence)

Jauge

s

haproxy.requests.average_time

[C]

Temps d’attente moyen pour les requests en secondes

Jauge

s

haproxy.responses.average_time

[C]

Temps de réponse moyen en secondes

Jauge

s

haproxy.active

[C]

Nombre de serveurs actifs dans un backend

Jauge

{servers}

haproxy.backup

[C]

Nombre de serveurs de sauvegarde dans un backend

Jauge

{servers}

haproxy.downtime

[C]

Temps d’arrêt total en secondes

Somme (cumulative)

s

haproxy.failed_checks

[C]

Nombre total de contrôles d'intégrité ayant échoué

Somme (cumulative)

{checks}

haproxy.weight

[C]

Poids du serveur (utilisé dans les décisions d'équilibrage de charge)

Jauge

{weight}

haproxy.sessions.total

[C]

Nombre total cumulé de sessions

Somme (cumulative)

{sessions}

haproxy.connections.total

[C]

Nombre total cumulé de connexions

Somme (cumulative)

{connections}

haproxy.compression.input

Nombre total d'octets soumis au compresseur

Somme (cumulative)

Par

haproxy.compression.output

Nombre total d'octets émis par le compresseur

Somme (cumulative)

Par

haproxy.compression.bypass

Nombre total d'octets ayant contourné la compression

Somme (cumulative)

Par

haproxy.compression.responses

Nombre total de réponses HTTP ayant été compressées

Somme (cumulative)

{responses}

haproxy.clients.canceled

Nombre total de transferts de données abandonnés par le client

Somme (cumulative)

{cancellations}

haproxy.sessions.limit

Limite de session configurée pour le proxy

Jauge

{sessions}

Attributs de ressource

Les attributs de ressource suivants sont attachés à toutes les métriques HAProxy, fournissant un contexte pour le filtrage et le regroupement.

Attribut

Description

Exemple de valeur

haproxy.proxy_name

Nom du proxy HAProxy (à partir du nom de la section frontend/backend/listen dans haproxy.cfg)

http_front

,

flask_backends

,

stats

haproxy.service_name

Identifiant de type ou nom de serveur :

FRONTEND

pour les agrégats frontend,

BACKEND

pour les agrégats backend, ou le nom de serveur spécifique pour les métriques par serveur

FRONTEND

,

BACKEND

,

backend-app-a

,

backend-app-b

haproxy.addr

L'URL du point de terminaison de statistiques qui a été collectée (utilisée comme partie de l'identifiant d'entité)

http://localhost:8404/stats

host.id

Identifiant unique de l'hôte (à partir de

/etc/machine-id

sur Linux)

ec23da5ead46571f2c3a9771b093658b

host.name

Nom d’hôte de la machine exécutant le collecteur

ip-172-31-7-195.ap-southeast-2.compute.internal

os.type

Type de système d’exploitation

linux

Identifiant d'entité : l'entité HAProxy dans New Relic est synthétisée à partir de host.id + haproxy.addr (par exemple ec23da5ead46571f2c3a9771b093658b:http://localhost:8404/stats).

Modélisation de la métrique Prometheus

Si vous utilisez le chemin du récepteur Prometheus, le tableau suivant montre comment les noms de métrique HAProxy Prometheus correspondent aux équivalents OTel haproxyreceiver. Chaque métrique OTel peut avoir plusieurs sources Prometheus (une par niveau : frontend, backend, serveur).

Métrique OTel

Frontend Prometheus

Backend Prometheus

Serveur Prometheus

haproxy.bytes.input

haproxy_frontend_bytes_in_total

haproxy_backend_bytes_in_total

haproxy_server_bytes_in_total

haproxy.bytes.output

haproxy_frontend_bytes_out_total

haproxy_backend_bytes_out_total

haproxy_server_bytes_out_total

haproxy.connections.errors

haproxy_backend_connection_errors_total

haproxy_server_connection_errors_total

haproxy.connections.rate

haproxy_frontend_connections_rate_max

haproxy.connections.retries

haproxy_backend_retry_warnings_total

haproxy_server_retry_warnings_total

haproxy.requests.denied

haproxy_frontend_requests_denied_total

haproxy_backend_requests_denied_total

haproxy.requests.errors

haproxy_frontend_request_errors_total

haproxy.requests.queued

haproxy_backend_current_queue

haproxy_server_current_queue

haproxy.requests.rate

haproxy_frontend_http_requests_rate_max

haproxy.requests.redispatched

haproxy_backend_redispatch_warnings_total

haproxy_server_redispatch_warnings_total

haproxy.requests.total

haproxy_frontend_http_requests_total

haproxy_backend_http_requests_total

haproxy.responses.denied

haproxy_frontend_responses_denied_total

haproxy_backend_responses_denied_total

haproxy_server_responses_denied_total

haproxy.responses.errors

haproxy_backend_response_errors_total

haproxy_server_response_errors_total

haproxy.server_selected.total

haproxy_backend_loadbalanced_total

haproxy_server_loadbalanced_total

haproxy.sessions.average

haproxy_backend_total_time_average_seconds

haproxy_server_total_time_average_seconds

haproxy.sessions.count

haproxy_frontend_current_sessions

haproxy_backend_current_sessions

haproxy_server_current_sessions

haproxy.sessions.rate

haproxy_frontend_max_session_rate

haproxy_backend_max_session_rate

haproxy_server_max_session_rate

Important

Limites connues du chemin Prometheus :

  • Aucune FACET par code d'état: le haproxyreceiver analyse les champs CSV hrsp_* en un attribut status_code sur haproxy.requests.total. Le chemin Prometheus ne prend pas cela en charge — la répartition des codes de réponse HTTP est disponible uniquement sous forme de métriques distinctes (haproxy_frontend_http_responses_total{code="2xx"}) non incluses dans la configuration de transformation.
  • Les métriques de taux sont des maximums à vie: haproxy.connections.rate correspond à haproxy_frontend_connections_rate_max et haproxy.requests.rate correspond à haproxy_frontend_http_requests_rate_max. Ce sont des valeurs maximales à vie, pas des taux instantanés. Pour les taux actuels réels, utilisez la fonction NRQL rate() sur les métriques de compteur cumulatif.
  • -136 métriques Prometheus n'ont pas d'équivalent OTel: le point de terminaison Prometheus de HAProxy expose -204 métriques. Seules 36 sont mappées aux 17 métriques OTel par défaut (sur les niveaux frontend/backend/serveur). Le reste (éléments internes du processus, détails des vérifications d'état, statistiques du résolveur DNS) n'a pas d'équivalent haproxyreceiver.

Exemples de requêtes NRQL

Utilisez ces requêtes pour explorer vos métriques HAProxy dans New Relic :

-- Current sessions across all frontends
FROM Metric SELECT latest(haproxy.sessions.count)
FACET haproxy.proxy_name
WHERE haproxy.service_name = 'FRONTEND'
-- Request rate per frontend over time
FROM Metric SELECT average(haproxy.requests.rate)
FACET haproxy.proxy_name
WHERE haproxy.service_name = 'FRONTEND'
TIMESERIES
-- Backend error rate (responses.errors as rate)
FROM Metric SELECT rate(sum(haproxy.responses.errors), 1 second)
FACET haproxy.proxy_name
WHERE haproxy.service_name = 'BACKEND'
TIMESERIES
-- Bytes throughput per backend
FROM Metric SELECT rate(sum(haproxy.bytes.input), 1 minute) AS 'Bytes In/min',
rate(sum(haproxy.bytes.output), 1 minute) AS 'Bytes Out/min'
FACET haproxy.proxy_name
WHERE haproxy.service_name = 'BACKEND'
-- Average session time per backend (latency indicator)
FROM Metric SELECT average(haproxy.sessions.average)
FACET haproxy.proxy_name
WHERE haproxy.service_name = 'BACKEND'
-- Per-server session count (individual backend servers)
FROM Metric SELECT latest(haproxy.sessions.count)
FACET haproxy.proxy_name, haproxy.service_name
WHERE haproxy.service_name NOT IN ('FRONTEND', 'BACKEND')
-- Queued requests (indicates backend saturation)
FROM Metric SELECT max(haproxy.requests.queued)
FACET haproxy.proxy_name
WHERE haproxy.service_name = 'BACKEND'
TIMESERIES

Prochaines étapes

Droits d'auteur © 2026 New Relic Inc.

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.