As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Acessando as métricas do Prometheus
nota
As métricas do Prometheus estão disponíveis somente para o RabbitMQ 4.2 e versões posteriores. Os corretores ActiveMQ não oferecem suporte às métricas do Prometheus.
O Amazon MQ agora oferece suporte às métricas do Prometheus para o Amazon MQ para corretores RabbitMQ. As métricas do Prometheus permitem que você integre a observabilidade do corretor à sua infraestrutura de monitoramento existente, oferecendo uma visão unificada do desempenho do corretor junto com seus outros serviços. Com as métricas do Prometheus, você pode configurar alertas e painéis detalhados para detectar e responder proativamente aos problemas em suas cargas de trabalho de mensagens.
A partir do RabbitMQ 4.2, o Amazon MQ para RabbitMQ oferece suporte às métricas do Prometheus, permitindo que você extraia métricas do broker usando o sistema de monitoramento Prometheus. Os seguintes endpoints são compatíveis:
/metrics/metrics/detailed/metrics/memory-breakdown
O /metrics/per-object endpoint não é suportado.
Para obter mais informações sobre as métricas expostas por cada endpoint, consulte a métrica Prometheus na documentação do
Métricas versus métricas do Prometheus CloudWatch
O Amazon MQ para RabbitMQ expõe métricas por meio dos endpoints Prometheus e. CloudWatch Embora ambos forneçam visibilidade da integridade do corretor, eles diferem em escopo e uso.
Os endpoints do Prometheus expõem um conjunto mais rico de métricas agregadas sobre a integridade do corretor RabbitMQ, abrangendo uma gama mais ampla de informações internas do corretor, como rotatividade de conexão, atividade do canal, estatísticas de filas e trocas e métricas de consenso do Raft. Eles são adequados para integração com a infraestrutura de monitoramento existente baseada no Prometheus e alertas detalhados.
CloudWatch as métricas são um subconjunto selecionado de métricas de corretores obtidas dos endpoints do Prometheus. Para obter uma lista completa das CloudWatch métricas disponíveis, consulteCloudWatch Métricas disponíveis para Amazon MQ para corretores RabbitMQ.
Em CloudWatch, as métricas são sempre agregadas com um intervalo de pelo menos 60 segundos antes da visualização. Por outro lado, o Prometheus expõe pontos de dados métricos brutos, e soluções de painel como o Grafana visualizam pontos de dados individuais sem agregação por padrão. Como resultado, as visualizações da mesma métrica podem divergir entre e CloudWatch Prometheus, dependendo da estatística usada em CloudWatch
nota
Recomendamos usar o Prometheus para o monitoramento não agregado das métricas operacionais do Amazon MQ para o RabbitMQ.
Obtendo e acessando os endpoints Prometheus
Você pode obter o endpoint Prometheus para seu agente Amazon MQ for RabbitMQ usando o ou o. Console de gerenciamento da AWS AWS CLI
-
Console de gerenciamento da AWS— Navegue até o console do Amazon MQ, abra a página de detalhes do seu corretor e localize o endpoint Prometheus na seção Conexões.
-
AWS CLI— Use o
describe-brokercomando:aws mq describe-broker --broker-id <broker-id>O endpoint do Prometheus é retornado na resposta abaixo.
BrokerInstances.Endpoints
O suporte do Amazon MQ para RabbitMQ Prometheus usa o mesmo esquema de autenticação do agente. Para obter mais informações sobre os métodos de autenticação compatíveis, consulteAutenticação e autorização do Amazon MQ para RabbitMQ. Para saber como configurar a autenticação no Prometheus, consulte
Práticas recomendadas de configuração do Prometheus
-
Configure um período de raspagem de 60 segundos ou mais. Isso é recomendado para segurança operacional.
Configuração de raspagem de amostras
As seções a seguir fornecem exemplos de configurações de raspagem do Prometheus para Amazon MQ para RabbitMQ. <broker-prometheus-endpoint>Substitua pelo nome de host do endpoint Prometheus do seu corretor <username> e <password> pelas credenciais do seu corretor.
Configuração recomendada
A configuração a seguir é recomendada para a maioria dos casos de uso. A coleta do /metrics endpoint fornece métricas bem agregadas sobre a integridade geral do cluster, oferecendo uma visão clara do desempenho do corretor sem a sobrecarga da coleta detalhada de métricas.
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'
Configuração detalhada de métricas
A configuração a seguir coleta famílias métricas detalhadas adicionais para uma observabilidade mais profunda em componentes específicos do broker.
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'