• /
  • EnglishEspañolFrançais日本語한국어Português
  • Inicia sesiónComenzar ahora

Te ofrecemos esta traducción automática para facilitar la lectura.

En caso de que haya discrepancias entre la versión en inglés y la versión traducida, se entiende que prevalece la versión en inglés. Visita esta página para obtener más información.

Crea una propuesta

Rastreo distribuido de HAProxy con OpenTelemetry

|View as Markdown (English)

Vea HAProxy como un salto conectado en su rastreo distribuido, no solo como una caja negra entre servicios. HAProxy 3.4 y versiones posteriores incluyen un filtro de OpenTelemetry que permite que su balanceador de carga participe directamente en el rastreo distribuido, de modo que New Relic pueda mapear automáticamente las relaciones de servicios entre sus aplicaciones y la entidad de HAProxy en los mapas de servicios —no se requiere configuración manual.

Esta página le muestra cómo configurar el filtro OTel de HAProxy, su exportador y el OTel Collector para que los datos de la traza lleguen a New Relic. Para ver cómo funciona el rastreo internamente —extrayendo y propagando el W3C Trace Context a través de HAProxy—, consulte Cómo funciona a continuación.

Cómo funciona

En una configuración típica, el tráfico fluye de la siguiente manera:

Instrumented app (frontend) → HAProxy (with OTel filter) → Instrumented app (backend)
  1. La aplicación frontend envía una solicitud con un encabezado W3C traceparent.
  2. El filtro OTel de HAProxy extrae el contexto de traza, crea spans que cubren el ciclo de vida de la solicitud e inyecta el contexto de traza actualizado en la solicitud reenviada al backend.
  3. La aplicación del backend recibe la solicitud con el contexto de traza propagado y continúa la traza.
  4. El frontend, HAProxy y el backend exportan sus spans a un OpenTelemetry Collector, que los reenvía a New Relic.

New Relic utiliza estos spans conectados para crear relaciones CALLS:

  • Servicio frontend LLAMA A entidad HAProxy
  • Entidad HAProxy LLAMA A servicio backend

Estas relaciones son visibles en los mapas de servicios y en la experiencia de mapas.

Antes de que empieces

El filtro OTel de HAProxy funciona con cualquier aplicación que admita la propagación del contexto W3C Trace Context, incluidas:

  • Aplicaciones instrumentadas con OpenTelemetry SDK (cualquier lenguaje)
  • Instrumentación automática de OpenTelemetry (Java, .NET, Python, Node.js)
  • Agentes APM de New Relic (Go, Java, .NET, Node.js, Python, Ruby, PHP) con el rastreo distribuido habilitado

Puede combinar enfoques de instrumentación. Por ejemplo, un frontend del SDK de OTel puede llamar a través de HAProxy a un backend de agente APM de New Relic, y la cadena de relaciones aparece correctamente en New Relic.

Asegúrese de tener también:

  • Clave de licenciade New Relic válida
  • HAProxy 3.4 o posterior con el filtro OTel habilitado. Consulte la guía de instalación de OTel para HAProxy para obtener instrucciones sobre cómo obtener una distribución compatible con el filtro OTel.
  • OpenTelemetry Collector (OTel Collector Contrib o NRDOT) ejecutándose en el mismo host o accesible desde el host de HAProxy
  • Aplicaciones instrumentadas que envían requests a través de HAProxy, utilizando cualquiera de los enfoques de instrumentación compatibles enumerados anteriormente
  • Acceso de red desde el recolector al extremo OTLPde New Relic

Sugerencia

Esta guía configura tanto la recopilación de métricas como el rastreo distribuido en un solo OTel Collector. Para una configuración avanzada de métricas o un despliegue en Kubernetes, consulte Monitorear HAProxy autohospedado y Monitorear HAProxy en Kubernetes.

Configurar el rastreo distribuido

Sugerencia

El pipeline de trazas a continuación es la misma configuración estándar que usaría para cualquier servicio que participe en el rastreo distribuido —no una configuración de relación manual. Una vez que el rastreo está activo, New Relic detecta automáticamente los spans conectados y crea relaciones de servicio. No se necesita configuración adicional para que aparezcan las relaciones.

Vea las relaciones de los servicios

Una vez que HAProxy y el recolector se estén ejecutando, genere algo de tráfico a través de sus aplicaciones instrumentadas. Después de unos minutos, verifique que los datos estén llegando a New Relic:

-- Verify HAProxy trace spans
FROM Span SELECT count(*)
WHERE service.name = 'YOUR_HAPROXY_SERVICE_NAME'
SINCE 10 minutes ago
-- Verify HAProxy metrics
FROM Metric SELECT count(*)
WHERE metricName LIKE 'haproxy.%'
SINCE 10 minutes ago

Una vez que los datos de traza están fluyendo, New Relic crea automáticamente relaciones CALLS entre sus servicios y la entidad de HAProxy. Las relaciones pueden tardar hasta 10 minutos en aparecer.

Siga estos pasos para ver las relaciones:

  1. Vaya a one.newrelic.com > All capabilities > All entities.
  2. Busque su entidad de HAProxy o uno de sus servicios instrumentados.
  3. Seleccione una entidad para abrir su página de resumen.
  4. Haga clic en Service map para ver el gráfico de relaciones de la entidad.

Debería ver sus servicios de frontend conectados a HAProxy, y HAProxy conectado a sus servicios de backend:

[Frontend app] → CALLS → [HAProxy] → CALLS → [Backend app]

También puede consultar las relaciones con NRQL:

FROM Relationship SELECT *
WHERE source.entityName = 'YOUR_HAPROXY_SERVICE_NAME'
OR target.entityName = 'YOUR_HAPROXY_SERVICE_NAME'
SINCE 1 day ago

Resolución de problemas

Próximos pasos

Copyright © 2026 New Relic Inc.

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