• EnglishEspañol日本語한국어Português
  • EntrarComeçar agora

Esta tradução de máquina é fornecida para sua comodidade.

In the event of any inconsistency between the English version and the translated version, the English versionwill take priority. Please visit this page for more information.

Criar um problema

RabbitMQ monitoramento integração

A New Relic integração no host do RabbitMQ reporta dados métricos e de configuração do seu serviço RabbitMQ, incluindo métricas importantes relacionadas ao cluster, vhosts, filas, exchanges e consumidor.

Compatibilidade e requisitos

Nossa integração é compatível com:

  • RabbitMQ versão 3.0 ou superior para dados métricos.
  • RabbitMQ versão 3.7 ou superior para dados de inventário.

Antes de instalar a integração, certifique-se de atender aos seguintes requisitos:

Instalar e ativar

Para instalar a integração RabbitMQ, siga as instruções para seu ambiente:

Notas Adicionais:

Importante

Esta integração pode monitor apenas uma instância do servidor RabbitMQ por host.

Este documento ajudou você na instalação?

Configurar a integração

A configuração no formato YAML de uma integração é onde você pode colocar as credenciais de login necessárias e configurar como os dados são coletados. Quais opções você altera dependem de sua configuração e preferência.

Existem diversas formas de configurar a integração, dependendo de como ela foi instalada:

Para obter um exemplo de configuração, consulte Exemplo de arquivo de configuração.

O arquivo de configuração possui configurações comuns aplicáveis a todas as integrações como interval, timeout, inventory_source. Para ler tudo sobre essas configurações comuns, consulte nosso documento Formato de configuração .

Importante

Se você ainda estiver usando nossos arquivos de configuração/definição legados, consulte este documento para obter ajuda.

Configurações específicas relacionadas ao RabbitMQ são definidas usando a seção env do arquivo de configuração. Essas configurações controlam a conexão com sua instância RabbitMQ, bem como outras configurações de segurança e recurso. A lista de configurações válidas é descrita na próxima seção deste documento.

Cluster environments

Em ambientes cluster, a integração coleta métricas de todo o cluster com apenas uma instância da integração conectada a um nó. Esta instância deve usar METRICS=true e INVENTORY=true. Para o restante dos nós, apenas o inventário deve ser coletado usando METRICS=false e INVENTORY=true. Para saber mais sobre isso, consulte configurações de instância.

Se você estiver executando um ambiente cluster no Kubernetes, você precisa implantar o RabbitMQ como um StatefulSet e configurar o agente para consultar todas as métricas do pod RabbitMQ. Defina a condição de correspondência de descoberta automática no arquivo de configuração com este valor:

discovery:
command:
exec: /var/db/newrelic-infra/nri-discovery-kubernetes
match:
podName: rabbitmq-0

Importante

A integração tem uma limitação no número de filas que podem ser coletadas. Caso o número de filas ultrapasse 2.000, após o aplicativo de filtros de filas, a integração não reportará nenhuma delas. Oferecemos uma solução alternativa que preservará todas as métricas, mas desabilitará o registro da entidade. Para aplicar a solução alternativa, adicione a seguinte variável de ambiente ao arquivo de configuração:

integrations:
- name: nri-rabbitmq
env:
# Integration configuration parameters.
METRICS: true
DISABLE_ENTITIES: true
QUEUES_MAX_LIMIT: "0"

Configurações da instância RabbitMQ

A integração RabbitMQ coleta informações métricas(M) e de Inventário(I). Verifique a coluna Applies To abaixo para descobrir quais configurações podem ser usadas para cada coleção específica:

' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' ' '

Contexto

Descrição

Padrão

Aplica-se a

HOSTNAME

Nome do host ou IP do plug-in de gerenciamento RabbitMQ.

host local

MI

PORT

Número da porta do plug-in de gerenciamento RabbitMQ.

15672

MI

USERNAME

Usuário que está se conectando ao plug-in de gerenciamento RabbitMQ.

N/A

MI

PASSWORD

Senha para conectar-se ao plug-in de gerenciamento RabbitMQ.

N/A

MI

TIMEOUT

Tempo limite em segundos para atingir o tempo limite da conexão com o endpoint RabbitMQ.

30

MI

MANAGEMENT_PATH_PREFIX

Prefixo de gerenciamento RabbitMQ.

N/A

MI

USE_SSL

Opção de conexão usando SSL.

false

MI

CA_BUNDLE_DIR

Localização do certificado SSL no host.

N/A

MI

CA_BUNDLE_FILE

Localização do certificado SSL no host.

N/A

MI

NODE_NAME_OVERRIDE

Substitui o nome do nó local em vez de recuperá-lo do RabbitMQ.

N/A

MI

CONFIG_PATH

Caminho absoluto para o arquivo de configuração do RabbitMQ.

N/A

MI

QUEUES

Nomes de filas a serem coletados no formato de uma matriz JSON de strings. Se um nome de fila corresponder exatamente (sensível a maiúsculas e minúsculas) a um deles, ele será coletado.

Exemplo:

queues: '["myQueue1","myQueue2"]'

N/A

EU

QUEUES_REGEXES

Nomes de filas a serem coletados no formato de uma matriz JSON de cadeias de caracteres REGEX. Se o nome de uma fila corresponder a um deles, ela será coletada.

Exemplo:

queues_regexes: '["queue[0-9]+",".*"]'

N/A

MI

EXCHANGES

Troque nomes para coletar no formato de uma matriz JSON de strings. Se um nome de troca corresponder exatamente (sensível a maiúsculas e minúsculas) a um deles, ele será coletado.

N/A

MI

EXCHANGES_REGEXES

Troca nomes para coletar no formato de uma matriz JSON de strings REGEX. Se um nome de troca corresponder a um destes, ele será coletado.

N/A

MI

VHOSTS

Nomes Vhost a serem coletados no formato de uma matriz JSON de strings. Se um nome de vhost corresponder exatamente (sensível a maiúsculas e minúsculas) a um deles, ele será incluído. Isto também afeta apenas a entidade coletora pertencente aos vhosts especificados.

N/A

MI

VHOSTS_REGEXES

Nomes Vhost a serem coletados no formato de uma matriz JSON de strings REGEX. Se um nome de vhost corresponder a um destes, o vhost e qualquer entidade pertencente a este vhost serão coletados.

N/A

MI

METRICS

Defina como true para ativar a coleta somente de métricas.

false

INVENTORY

Defina como true para ativar a coleta somente de inventário.

false

EVENTS

Defina como true para ativar a coleta somente de eventos.

false

DISABLE_ENTITIES

Configure se serão criados lançamentos de inventário para entidade durante a coleta de métricas. Para ser usado apenas como solução alternativa para coletar grandes quantidades de filas.

false

QUEUES_MAX_LIMIT

Define a quantidade máxima de Filas que podem ser processadas, caso esse número seja atingido todas as filas serão descartadas. Se definido como '0' nenhum limite é aplicado, isto é usado com DISABLE_ENTITIES=true para evitar aumento de memória no agente.

2000

Os valores para estas configurações podem ser definidos de diversas maneiras:

  • Adicionando o valor diretamente no arquivo de configuração. Esta é a forma mais comum.
  • Substituindo os valores das variáveis de ambiente usando a notação {{}} . Isso requer o agente de infraestrutura v1.14.0+. Leia mais aqui.
  • Usando o gerenciamento de segredos. Use isto para proteger informações sensíveis, como senhas, a serem expostas em texto simples no arquivo de configuração. Para obter mais informações, consulte Gerenciamento de segredos.

Etiquetas/atributo personalizado

Variáveis de ambiente podem ser usadas para controlar definições de configuração, como e, em seguida, são passadas para o agente de infraestrutura. Para obter instruções sobre como usar esse recurso, consulte Configurar o agente de infraestrutura. Você pode decorar ainda mais sua métrica usando etiquetas. Os rótulos permitem que você adicione pares de valores principais atributo à sua métrica que você pode usar para consultar, filtrar ou agrupar sua métrica.
Nosso arquivo de configuração de amostra padrão inclui exemplos de rótulos, mas, como não são obrigatórios, você pode remover, modificar ou adicionar novos de sua escolha.

labels:
env: production
role: rabbitmq

Exemplo de configuração

Aqui está um exemplo de arquivo de configuração:

Para obter mais informações sobre a estrutura geral da configuração de integração no host, consulte Configuração.

Encontre e use dados

Os dados deste serviço são reportados para um dashboard de integração.

métrica estão anexadas a estes tipos de eventos:

Você pode consultar esses dados para fins de resolução de problemas ou para criar gráficos e dashboards personalizados.

Para saber mais sobre como encontrar e usar seus dados, consulte Compreender os dados de integração.

Dados métricos

A integração RabbitMQ recolhe os seguintes dados métricos atributo. Cada nome de métrica é prefixado com um indicador de categoria e um ponto, como fila. ou nó..

Exemplo de evento vhost do RabbitMQ

Estes atributos estão anexados ao tipo de evento RabbitmqVhostSample :

Nome

Descrição

vhost.connectionsBlocked

Número de conexões atuais no estado bloqueadas.

vhost.connectionsBlocking

Número de conexões atuais no estado de bloqueio.

vhost.connectionsClosed

Número de conexões atuais no estado fechado.

vhost.connectionsClosing

Número de conexões atuais no estado de fechamento.

vhost.connectionsFlow

Número de conexões atuais no fluxo de estado.

vhost.connectionsOpening

Quantidade de conexões atuais na abertura estadual.

vhost.connectionsRunning

Número de conexões atuais no estado em execução.

vhost.connectionsStarting

Número de conexões atuais no estado inicial.

vhost.connectionsTotal

Número de conexões atuais para um determinado vhost do RabbitMQ.

vhost.connectionsTuning

Número de conexões atuais no ajuste de estado.

Evento de amostra do nó RabbitMQ

Estes atributos estão anexados ao tipo de evento RabbitmqNodeSample :

Nome

Descrição

node.averageErlangProcessesWaiting

Número médio de processos Erlang aguardando execução. No RabbitMQ isso é visto como run_queue.

node.diskAlarm

Alarme de disco do nó (0 ou 1). 0 mostra que o alarme não disparou e 1 mostra que o alarme disparou. No RabbitMQ isso é visto como disk_free_alarm.

node.diskSpaceFreeInBytes

Espaço livre em disco atual em bytes. No RabbitMQ isso é visto como disk_free.

node.fileDescriptorsTotal

A contagem total de descritores de arquivo. No RabbitMQ isso é visto como fd_total.

node.fileDescriptorsTotalUsed

A contagem total de descritores de arquivo usados. No RabbitMQ isso é visto como fd_used.

node.fileDescriptorsUsedSockets

Número de descritores de arquivo usados como soquetes. No RabbitMQ isso é visto como sockets_used.

node.fileDescriptorsTotalSockets

Número total de descritores de arquivos disponíveis como soquetes. No RabbitMQ isso é visto como sockets_total.

node.hostMemoryAlarm

Alarme de memória do host (0 ou 1). 0 mostra que o alarme não disparou e 1 mostra que o alarme disparou. No RabbitMQ isso é visto como mem_alarm.

node.totalMemoryUsedInBytes

Memória usada em bytes. No RabbitMQ isso é visto como mem_used.

node.partitionsSeen

Número de partições de rede vistas por nó. No RabbitMQ isso é visto como partitions.

node.processesTotal

Limite do processo Erlang. No RabbitMQ isso é visto como proc_total.

node.processesUsed

Processos Erlang usados. No RabbitMQ isso é visto como proc_used.

node.running

Nó em execução (0 ou 1). 0 mostra que o nó não está em execução e 1 mostra que o nó está em execução. No RabbitMQ isso é visto como running.

Evento de amostra de troca RabbitMQ

Estes atributos estão anexados ao tipo de evento RabbitmqExchangeSample :

Nome

Descrição

exchange.bindings

Número de ligações para uma troca específica.

exchange.messagesPublishedPerChannel

Contagem de mensagens publicadas de um canal nesta troca. No RabbitMQ isso é visto como message_stats.publish_in.

exchange.messagesPublishedPerChannelPerSecond

Taxa de mensagens publicadas de um canal nesta exchange por segundo. No RabbitMQ isso é visto como message_stats.publish_in_details.rate.

exchange.messagesPublishedQueue

Contagem de mensagens publicadas desta troca em uma fila. No RabbitMQ isso é visto como message_stats.publish_out.

exchange.messagesPublishedQueuePerSecond

Taxa de mensagens publicadas nesta troca em uma fila por segundo. No RabbitMQ isso é visto como message_stats.publish_out_details.rate.

Evento de exemplo de fila RabbitMQ

Estes atributos estão anexados ao tipo de evento RabbitmqQueueSample :

Nome

Descrição

queue.bindings

Número de ligações para uma fila específica.

queue.countActiveConsumersReceiveMessages

Número de consumidores ativos que podem receber imediatamente quaisquer mensagens enviadas para a fila. No RabbitMQ isso é visto como active_consumers.

queue.consumers

Número de consumidores por fila. No RabbitMQ isso é visto como consumidor.

queue.consumerMessageUtilizationPerSecond

A proporção de tempo que o consumidor de uma fila pode receber novas mensagens (utilização por segundo). No RabbitMQ isso é visto como consumer_utilisation.

Esta métrica está disponível apenas no RabbitMQ versão 3.3 ou superior.

queue.erlangBytesConsumedInBytes

Bytes consumidos pelo processo Erlang associado à fila. No RabbitMQ isso é visto como memory.

queue.messagesReadyDeliveryClients

Contagem de mensagens prontas para serem entregues aos clientes. No RabbitMQ isso é visto como message_stats.messages_ready.

queue.messagesReadyDeliveryClientsPerSecond

Taxa de mensagens prontas para serem entregues aos clientes por segundo. No RabbitMQ isso é visto como message_stats.messages_ready_details.rate.

queue.messagesReadyUnacknowledged

Contagem de mensagens por fila entregues aos clientes, mas ainda não confirmadas. No RabbitMQ isso é visto como message_stats.deliver_no_ack.

queue.messagesReadyUnacknowledgedPerSecond

Taxa de mensagens por fila entregues aos clientes, mas ainda não reconhecidas por segundo. No RabbitMQ isso é visto como message_stats.deliver_no_ack_details.rate.

queue.messagesAcknowledged

Contagem de mensagens entregues aos clientes e confirmadas por fila. No RabbitMQ isso é visto como message_stats.ack.

queue.messagesAcknowledgedPerSecond

Taxa de mensagens entregues aos clientes e confirmadas por segundo por fila. No RabbitMQ isso é visto como message_stats.ack_details.rate.

queue.messagesDeliveredAckMode

Contagem de mensagens entregues em modo de confirmação ao consumidor por fila. No RabbitMQ isso é visto como message_stats.deliver.

queue.messagesDeliveredAckModePerSecond

Taxa de mensagens entregues em modo de confirmação ao consumidor por fila por segundo. No RabbitMQ isso é visto como message_stats.deliver_details.rate.

queue.messagesPublished

Contagem de mensagens publicadas por fila. No RabbitMQ isso é visto como message_stats.publish.

queue.messagesPublishedPerSecond

Taxa de mensagens publicadas por segundo por fila. No RabbitMQ isso é visto como message_stats.publish_details.rate.

queue.messagesRedeliverGet

Contagem do subconjunto de mensagens em modo de confirmação que teve o sinalizador reentregue definido por fila. No RabbitMQ isso é visto como message_stats.redeliver.

queue.messagesRedeliverGetPerSecond

Taxa de subconjunto de mensagens em modo de confirmação que teve o sinalizador reentregue definido por fila por segundo. No RabbitMQ isso é visto como message_stats.redeliver_details.rate.

queue.sumMessagesDelivered

Soma de mensagens entregues em modo de confirmação ao consumidor, em modo sem confirmação ao consumidor, em modo de confirmação em resposta a basic.get e em modo sem confirmação em resposta a basic.get. por fila. No RabbitMQ isso é visto como message_stats.deliver_get.

queue.sumMessagesDeliveredPerSecond

Taxa por segundo da soma de mensagens entregues em modo de confirmação ao consumidor, em modo sem confirmação ao consumidor, em modo de confirmação em resposta a basic.get e em modo sem confirmação em resposta a basic.get por fila. No RabbitMQ isso é visto como message_stats.deliver_get_details.rate.

queue.totalMessages

Contagem do total de mensagens na fila. No RabbitMQ isso é visto como messages.

queue.totalMessagesPerSecond

Taxa do total de mensagens na fila. No RabbitMQ isso é visto como messages_details.rate.

Metadados do sistema

Outros metadados incluem:

Nome

Descrição

version.rabbitmq

A versão do servidor RabbitMQ. Exemplo: 3.6.7.

version.management

A versão do plug-in de gerenciamento RabbitMQ. Por exemplo: 3.6.7.

Dados de inventário

A integração captura o parâmetro de configuração do RabbitMQ no arquivo /etc/rabbitmq/rabbitmq.conf . dados de inventário são capturados apenas no RabbitMQ versão 3.7 ou superior; os dados de inventário aparecerão na páginaInventory da interface da infraestrutura, na fonte config/rabbitmq .

Cuidado

Esteja ciente de que qualquer informação sensível que você colocar no arquivo rabbit.conf aparecerá na página Inventory na interface da infraestrutura. Isso inclui itens como os seguintes da AWS:

cluster_formation.aws.secret_key,
cluster_formation.aws.access_key_id

Resolução de problemas

Dicas de resolução de problemas:

Verifique o código-fonte

Esta integração é um software de código aberto. Isso significa que você pode navegar pelo código-fonte e enviar melhorias, ou criar seu próprio fork e construí-lo.

Copyright © 2024 New Relic Inc.

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