

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Acceso a las métricas de Prometheus
<a name="rabbitmq-prometheus-metrics"></a>

**nota**  
Las métricas de Prometheus solo están disponibles para RabbitMQ 4.2 y versiones posteriores. Los corredores de ActiveMQ no admiten las métricas de Prometheus.

Amazon MQ ahora admite las métricas de Prometheus para Amazon MQ para los corredores de RabbitMQ. Las métricas de Prometheus le permiten integrar la observabilidad de los corredores en su infraestructura de monitoreo existente, lo que le brinda una visión unificada del rendimiento de los corredores junto con sus demás servicios. Con las métricas de Prometheus, puede configurar alertas y paneles detallados para detectar y responder de forma proactiva a los problemas en sus cargas de trabajo de mensajería.

A partir de RabbitMQ 4.2, Amazon MQ para RabbitMQ es compatible con las métricas de Prometheus, lo que le permite analizar las métricas de los corredores mediante el sistema de supervisión de Prometheus. Se admiten los siguientes puntos de enlace:
+ `/metrics`
+ `/metrics/detailed`
+ `/metrics/memory-breakdown`

El `/metrics/per-object` punto final no es compatible.

Para obtener más información sobre las métricas expuestas por cada punto final, consulte la métrica de [Prometheus](https://www.rabbitmq.com/docs/prometheus#metric-aggregation) en la documentación de RabbitMQ.

## Métricas frente a métricas de Prometheus CloudWatch
<a name="rabbitmq-prometheus-metrics-vs-cloudwatch"></a>

Amazon MQ for RabbitMQ expone las métricas a través de los puntos de enlace de Prometheus y. CloudWatch Si bien ambas proporcionan visibilidad sobre la salud de los corredores, difieren en su alcance y uso.

Los puntos finales de Prometheus exponen un conjunto más amplio de métricas agregadas sobre la salud de los corredores de RabbitMQ, que cubren una gama más amplia de aspectos internos de los corredores, como la pérdida de conexiones, la actividad del canal, las estadísticas de colas e intercambios y las métricas de consenso de Raft. Son adecuados para la integración con la infraestructura de monitoreo existente basada en Prometheus y para la generación de alertas detalladas.

CloudWatch las métricas son un subconjunto seleccionado de las métricas de los corredores obtenidas de los puntos finales de Prometheus. Para obtener una lista completa de las métricas disponibles CloudWatch , consulte. [CloudWatch Métricas disponibles de Amazon MQ para corredores de RabbitMQ](rabbitmq-logging-monitoring.md)

En CloudWatch, las métricas siempre se agregan con un intervalo de al menos 60 segundos antes de la visualización. Por el contrario, Prometheus expone puntos de datos métricos sin procesar y las soluciones de paneles como Grafana visualizan puntos de datos individuales sin agregación de forma predeterminada. Como resultado, las visualizaciones de la misma métrica pueden diferir entre CloudWatch Prometheus y Prometheus según la estadística utilizada en CloudWatch

**nota**  
Recomendamos usar Prometheus para la supervisión desagregada de las métricas operativas de Amazon MQ para RabbitMQ.

## Obtención y acceso a los puntos finales de Prometheus
<a name="rabbitmq-prometheus-metrics-endpoint"></a>

Puede obtener el punto de enlace de Prometheus para su corredor de Amazon MQ for RabbitMQ mediante o el. Consola de administración de AWS AWS CLI
+ **Consola de administración de AWS****— Diríjase a la consola de Amazon MQ, abra la página de detalles de su agente y localice el punto de conexión de Prometheus en la sección Conexiones.**
+ **AWS CLI**— Usa el comando: `describe-broker`

  ```
  aws mq describe-broker --broker-id <broker-id>
  ```

  El punto final de Prometheus se devuelve en la respuesta de abajo. `BrokerInstances.Endpoints`

El soporte de Amazon MQ para RabbitMQ Prometheus utiliza el mismo esquema de autenticación que el bróker. Para obtener más información sobre los métodos de autenticación compatibles, consulte. [Autenticación y autorización de Amazon MQ para RabbitMQ](rabbitmq-authentication.md) Para obtener información sobre cómo configurar la autenticación en Prometheus, [consulte](https://prometheus.io/docs/prometheus/latest/configuration/configuration/#http_config) http\_config en la documentación de Prometheus.

## Mejores prácticas de configuración de Prometheus
<a name="rabbitmq-prometheus-metrics-best-practices"></a>
+ Configure un período de extracción de 60 segundos o más. Esto se recomienda para garantizar la seguridad operativa.

## Ejemplo de configuración de raspado
<a name="rabbitmq-prometheus-metrics-sample-config"></a>

En las siguientes secciones se proporcionan ejemplos de configuraciones de raspado de Prometheus para Amazon MQ para RabbitMQ. `<broker-prometheus-endpoint>`Sustitúyalo por el nombre de host del punto final Prometheus de su corredor `<username>` `<password>` y por las credenciales de su corredor.

### Configuración recomendada
<a name="rabbitmq-prometheus-metrics-sample-config-recommended"></a>

Se recomienda la siguiente configuración para la mayoría de los casos de uso. El análisis del `/metrics` punto final proporciona métricas bien agregadas sobre el estado general del clúster, lo que le permite tener una visión clara del rendimiento de los corredores sin la sobrecarga que supone recopilar métricas detalladas.

```
global:
  scrape_interval: 60s

scrape_configs:
  - job_name: 'rabbitmq-aws-cluster'
    scheme: https
    basic_auth:
      username: <username>
      password: <password>
    metrics_path: '/metrics'
    static_configs:
      - targets:
        - '<broker-prometheus-endpoint>:16001'
        - '<broker-prometheus-endpoint>:16002'
        - '<broker-prometheus-endpoint>:16003'
```

### Configuración de métricas detallada
<a name="rabbitmq-prometheus-metrics-sample-config-detailed"></a>

La siguiente configuración incluye familias de métricas detalladas adicionales para una mayor observabilidad de los componentes específicos del bróker.

```
global:
  scrape_interval: 60s

scrape_configs:
  - job_name: 'rabbitmq-connection-churn'
    scheme: https
    basic_auth:
      username: <username>
      password: <password>
    metrics_path: '/metrics/detailed'
    params:
      family: ['connection_churn_metrics']
    static_configs:
      - targets:
        - '<broker-prometheus-endpoint>:16001'
        - '<broker-prometheus-endpoint>:16002'
        - '<broker-prometheus-endpoint>:16003'
  - job_name: 'rabbitmq-ra'
    scheme: https
    basic_auth:
      username: <username>
      password: <password>
    metrics_path: '/metrics/detailed'
    params:
      family: ['ra_metrics']
    static_configs:
      - targets:
        - '<broker-prometheus-endpoint>:16001'
        - '<broker-prometheus-endpoint>:16002'
        - '<broker-prometheus-endpoint>:16003'
  - job_name: 'rabbitmq-queue'
    scheme: https
    basic_auth:
      username: <username>
      password: <password>
    metrics_path: '/metrics/detailed'
    params:
      family: ['queue_metrics']
    static_configs:
      - targets:
        - '<broker-prometheus-endpoint>:16001'
        - '<broker-prometheus-endpoint>:16002'
        - '<broker-prometheus-endpoint>:16003'
  - job_name: 'rabbitmq-exchange'
    scheme: https
    basic_auth:
      username: <username>
      password: <password>
    metrics_path: '/metrics/detailed'
    params:
      family: ['exchange_metrics']
    static_configs:
      - targets:
        - '<broker-prometheus-endpoint>:16001'
        - '<broker-prometheus-endpoint>:16002'
        - '<broker-prometheus-endpoint>:16003'
  - job_name: 'rabbitmq-connection'
    scheme: https
    basic_auth:
      username: <username>
      password: <password>
    metrics_path: '/metrics/detailed'
    params:
      family: ['connection_metrics']
    static_configs:
      - targets:
        - '<broker-prometheus-endpoint>:16001'
        - '<broker-prometheus-endpoint>:16002'
        - '<broker-prometheus-endpoint>:16003'
  - job_name: 'rabbitmq-channel'
    scheme: https
    basic_auth:
      username: <username>
      password: <password>
    metrics_path: '/metrics/detailed'
    params:
      family: ['channel_metrics']
    static_configs:
      - targets:
        - '<broker-prometheus-endpoint>:16001'
        - '<broker-prometheus-endpoint>:16002'
        - '<broker-prometheus-endpoint>:16003'
  - job_name: 'rabbitmq-exchange-count'
    scheme: https
    basic_auth:
      username: <username>
      password: <password>
    metrics_path: '/metrics/detailed'
    params:
      family: ['exchange_names']
    static_configs:
      - targets:
        - '<broker-prometheus-endpoint>:16001'
        - '<broker-prometheus-endpoint>:16002'
        - '<broker-prometheus-endpoint>:16003'
```