Prometheus (heredado)

Supported OS Linux Windows Mac OS

Integration version5.0.0

Información general

Conéctate a Prometheus para:

  • Extraer métricas personalizadas de los endpoints de Prometheus
  • Ver las alertas del AlertManager de Prometheus en tu flujo (stream) de eventos de Datadog

Nota: Datadog recomienda utilizar el check de OpenMetrics, ya que es más eficiente y es enteramente compatible con el formato de texto de Prometheus. Utiliza el check de Prometheus sólo cuando el endpoint de las métricas no es compatible con un formato de texto.

Todas las métricas recuperadas por esta integración se consideran métricas personalizadas.

Para aprender a configurar un check de Prometheus, consulta Empezando con la recopilación de métricas de Prometheus.

Configuración

Sigue las instrucciones a continuación para instalar y configurar este check para un Agent que se ejecuta en un host. Para entornos en contenedores, consulta las plantillas de integración de Autodiscovery para obtener orientación sobre la aplicación de estas instrucciones.

Instalación

El check de Prometheus viene en el paquete del Datadog Agent a partir de la versión 6.1.0.

Configuración

Edita el archivo prometheus.d/conf.yaml para recuperar métricas desde aplicaciones que exponen endpoints de OpenMetrics / Prometheus.

Cada instancia se compone como mínimo de:

ParámetroDescripción
prometheus_urlUna URL que apunta a la ruta de la métrica (Nota: Debe ser única)
namespaceEste espacio de nombres se antepone a todas las métricas (para evitar la colisión de nombres de métricas)
metricsLa lista de las métricas que se van a recuperar como métricas personalizadas con el formato - <METRIC_NAME> o - <METRIC_NAME>: <RENAME_METRIC>

Al listar las métricas, es posible utilizar el comodín * de la siguiente manera - <METRIC_NAME>* para recuperar todas las métricas coincidentes. Nota: Utiliza los comodines con precaución, ya que es posible que envíe muchas métricas personalizadas.

En el prometheus.d/conf.yaml de ejemplo se documentan configuraciones más avanzadas (ssl, unión de etiquetas (tags), etiquetas personalizadas,…).

Debido a la naturaleza de esta integración, es posible enviar un elevado número de métricas personalizadas a Datadog. Los usuarios pueden controlar el número máximo de métricas enviadas por errores de configuración o cambios en entradas. El check tiene un límite por defecto de 2000 métricas. Si es necesario, este límite puede aumentarse configurando la opción max_returned_metrics en el archivo prometheus.d/conf.yaml.

Si send_monotonic_counter: True, el Agent envía los deltas de los valores en cuestión y el tipo en la aplicación se configura para el conteo (este es el comportamiento por defecto). Si send_monotonic_counter: False, el Agent envía el valor sin procesar, monotónicamente creciente, y el tipo en la aplicación se establece en “gauge”.

Validación

Ejecuta el subcomando status del Agent y busca prometheus en la sección Checks.

Datos recopilados

Métricas

Todas las métricas recopiladas por el check de Prometheus se envían a Datadog como métricas personalizadas.

Nota: Los datos de los buckets para una determinada métrica de histograma de Prometheus <HISTOGRAM_METRIC_NAME> se almacenan en la métrica <HISTOGRAM_METRIC_NAME>.count en Datadog, con las etiquetas upper_bound que incluyen el nombre de los buckets. Para acceder al bucket +Inf, utiliza upper_bound:none.

Eventos

Las alertas del AlertManager de Prometheus se envían automáticamente a tu flujo de eventos de Datadog siguiendo la configuración del webhook.

Checks de servicio

El check de Prometheus no incluye checks de servicio.

AlertManager de Prometheus

Envía alertas del AlertManager de Prometheus dentro del flujo de eventos. De forma nativa, el AlertManager envía todas las alertas simultáneamente al webhook configurado. Para ver las alertas en Datadog, debes configurar tu instancia de AlertManager para enviar las alertas de una en una. Puedes añadir un parámetro “group-by” (agrupar por) en route para agrupar las alertas por el nombre real de la regla de alerta.

Configuración

  1. Edita el archivo de configuración del AlertManager, alertmanager.yml, para incluir lo siguiente:
receivers:
- name: datadog
  configuraciones_webhooks: 
  - enviar_resuelto: verdadero
    url: https://app.datadoghq.com/intake/webhook/prometheus?api_key=<DATADOG_API_KEY>
route:
  agrupar_por: ['nombredealerta']
  espera_grupo: 10s
  intervalo_grupo: 5m
  receiver: datadog
  repetir_intervalo: 3h

Nota: Este endpoint sólo acepta un evento en la carga útil a la vez.

  1. Reinicia los servicios de Prometheus y AlertManager.
sudo systemctl restart prometheus.service alertmanager.service

Solucionar problemas

¿Necesitas ayuda? Ponte en contacto con el soporte de Datadog.

Referencias adicionales