• EnglishEspañol日本語한국어Português
  • Inicia sesiónComenzar ahora

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

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.

Crea una propuesta

Integración de monitoreo RabbitMQ

La New Relic integración en el host RabbitMQ informa datos métricos y de configuración de su servicio RabbitMQ, incluidas métricas importantes relacionadas con el clúster, vhosts, colas, intercambios y consumidores.

Compatibilidad y requisitos

Nuestra integración es compatible con:

  • RabbitMQ versión 3.0 o superior para datos métricos.
  • RabbitMQ versión 3.7 o superior para datos de inventario.

Antes de instalar la integración, asegúrese de cumplir con los siguientes requisitos:

Instalar y activar

Para instalar la integración RabbitMQ, siga las instrucciones para su entorno:

Notas adicionales:

Importante

Esta integración puede monitor solo una instancia del servidor RabbitMQ por host.

¿Te ha ayudado este documento con la instalación?

Configurar la integración

La configuración de formato YAML de una integración es donde puede colocar las credenciales de inicio de sesión requeridas y configurar cómo se recopilan los datos. Las opciones que cambie dependen de su configuración y preferencia.

Hay varias formas de configurar la integración, dependiendo de cómo se instaló:

Para ver una configuración de ejemplo, consulte Archivo de configuración de ejemplo.

El archivo de configuración tiene configuraciones comunes aplicables a todas las integraciones como interval, timeout, inventory_source. Para leer todo sobre estas configuraciones comunes, consulte nuestro documento Formato de configuración .

Importante

Si todavía utiliza nuestros archivos de configuración/definición legacy, consulte este documento para obtener ayuda.

Las configuraciones específicas relacionadas con RabbitMQ se definen usando la sección env del archivo de configuración. Estas configuraciones controlan la conexión a su instancia RabbitMQ, así como otras configuraciones y características de seguridad. La lista de configuraciones válidas se describe en la siguiente sección de este documento.

Cluster environments

En entornos de clúster, la integración recopila métrica de todo el clúster con una sola instancia de la integración conectada a un nodo. Esta instancia debe usar METRICS=true y INVENTORY=true. Para el resto de los nodos, solo se debe recopilar Inventario usando METRICS=false y INVENTORY=true. Para obtener más información sobre estos, consulte configuración de instancia.

Si está ejecutando un entorno de clúster en Kubernetes, debe implementar RabbitMQ como StatefulSet y configurar el agente para consultar todas las métricas del pod RabbitMQ. Establezca la condición de coincidencia de detección automática en el archivo de configuración en este valor:

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

Importante

La integración tiene una limitación en la cantidad de colas que se pueden recopilar. Si el número de colas supera las 2000, después de la aplicación de los filtros de cola, la integración no informará ninguna de ellas. Ofrecemos una solución alternativa que preservará todas las métricas, pero deshabilitará el registro de entidades. Para aplicar la solución, agregue la siguiente variable de entorno al archivo de configuración:

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

Configuración de la instancia RabbitMQ

La integración RabbitMQ recopila información tanto métrica (M) como de inventario (I). Consulte la columna Applies To a continuación para encontrar qué configuraciones se pueden usar para cada colección específica:

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

Configuración

Descripción

Por defecto

Se aplica a

HOSTNAME

Nombre de host o IP del complemento de administración RabbitMQ.

host local

M/I

PORT

Número de puerto del complemento de administración RabbitMQ.

15672

M/I

USERNAME

Usuario que se está conectando al complemento de administración RabbitMQ.

N/A

M/I

PASSWORD

Contraseña para conectarse al complemento de administración RabbitMQ.

N/A

M/I

TIMEOUT

Tiempo de espera en segundos para finalizar la conexión con RabbitMQ extremo.

30

M/I

MANAGEMENT_PATH_PREFIX

Prefijo de gestión de RabbitMQ.

N/A

M/I

USE_SSL

Opción de conectarse mediante SSL.

false

M/I

CA_BUNDLE_DIR

Ubicación del certificado SSL en el host.

N/A

M/I

CA_BUNDLE_FILE

Ubicación del certificado SSL en el host.

N/A

M/I

NODE_NAME_OVERRIDE

Anula el nombre del nodo local en lugar de recuperarlo de RabbitMQ.

N/A

M/I

CONFIG_PATH

Ruta absoluta al archivo de configuración de RabbitMQ.

N/A

M/I

QUEUES

Nombres de cola para recopilar en el formato de una matriz JSON de cadenas. Si el nombre de una cola coincide exactamente (distingue entre mayúsculas y minúsculas) con uno de estos, se recopilará.

Ejemplo:

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

N/A

I

QUEUES_REGEXES

Nombres de cola para recopilar en el formato de una matriz JSON de cadenas REGEX. Si el nombre de una cola coincide con uno de estos, se recopilará.

Ejemplo:

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

N/A

M/I

EXCHANGES

Intercambie nombres para recopilarlos en el formato de una matriz JSON de cadenas. Si el nombre de un intercambio coincide exactamente (distingue entre mayúsculas y minúsculas) con uno de estos, se recopilará.

N/A

M/I

EXCHANGES_REGEXES

Intercambia nombres para recopilarlos en el formato de una matriz JSON de cadenas REGEX. Si el nombre de un intercambio coincide con uno de estos, se recopilará.

N/A

M/I

VHOSTS

Nombres de Vhost para recolectar en el formato de una matriz JSON de cadenas. Si un nombre de vhost coincide exactamente (distingue entre mayúsculas y minúsculas) con uno de estos, se incluirá. Esto también afecta únicamente a las entidades recopiladoras que pertenecen a los vhosts especificados.

N/A

M/I

VHOSTS_REGEXES

Nombres de Vhost para recopilar en el formato de una matriz JSON de cadenas REGEX. Si un nombre de vhost coincide con uno de estos, se recopilará el vhost y cualquier entidad que pertenezca a este vhost.

N/A

M/I

METRICS

Establezca en true para habilitar la recopilación solo métrica.

false

INVENTORY

Configúrelo en true para habilitar la recopilación solo de inventario.

false

EVENTS

Establezca en true para habilitar la recopilación solo de eventos.

false

DISABLE_ENTITIES

Configure si se crean entradas de inventario para la entidad durante la recopilación métrica. Solo se debe utilizar como solución alternativa para recopilar grandes cantidades de colas.

false

QUEUES_MAX_LIMIT

Define la cantidad máxima de colas que se pueden procesar; si se alcanza este número, se eliminarán todas las colas. Si se define como '0' no se aplican límites, se usa con DISABLE_ENTITIES=true para evitar aumento de memoria en el agente.

2000

Los valores para estas configuraciones se pueden definir de varias maneras:

  • Agregando el valor directamente en el archivo de configuración. Esta es la forma más común.
  • Reemplazar los valores de las variables de entorno usando la notación {{}} . Esto requiere el agente de infraestructura v1.14.0+. Leer más aquí.
  • Usando la gestión de secretos. Utilícelo para proteger información confidencial, como contraseñas, que se expondrán en texto sin formato en el archivo de configuración. Para obtener más información, consulte Gestión de secretos.

Etiquetas/atributo personalizado

Las variables de entorno se pueden utilizar para controlar los ajustes de configuración, como su , y luego se pasan al agente de infraestructura. Para obtener instrucciones sobre cómo utilizar esta característica, consulte Configurar el agente de infraestructura. Puedes decorar aún más tu métrica usando etiquetas. Las etiquetas le permiten agregar valor de pares principales de atributos a su métrica que luego puede usar para consultar, filtrar o agrupar su métrica.
Nuestro archivo de configuración de muestra predeterminado incluye ejemplos de etiquetas pero, como no son obligatorias, puede eliminar, modificar o agregar nuevas de su elección.

labels:
env: production
role: rabbitmq

Configuración de ejemplo

Aquí hay un archivo de configuración de ejemplo:

Para obtener más información sobre la estructura general de la configuración de integración en el host, consulte Configuración.

Buscar y utilizar datos

Los datos de este servicio se informan a un dashboard de integración.

métricas se adjuntan a estos tipos de eventos:

Puede consultar estos datos para fines de resolución de problemas o para crear gráficos y paneles personalizados.

Para obtener más información sobre cómo encontrar y utilizar sus datos, consulte Comprender los datos de integración.

Datos métricos

La integración RabbitMQ recopila el siguiente atributo de datos métricos. Cada nombre de métrica tiene como prefijo un indicador de categoría y un punto, como cola. o nodo..

Evento de muestra de RabbitMQ vhost

Estos atributos están adjuntos al tipo de evento RabbitmqVhostSample :

Nombre

Descripción

vhost.connectionsBlocked

Número de conexiones actuales en el estado bloqueadas.

vhost.connectionsBlocking

Número de conexiones actuales en el estado de bloqueo.

vhost.connectionsClosed

Número de conexiones actuales en el estado cerradas.

vhost.connectionsClosing

Número de conexiones actuales en el estado de cierre.

vhost.connectionsFlow

Número de conexiones actuales en el flujo estatal.

vhost.connectionsOpening

Número de conexiones actuales en la apertura estatal.

vhost.connectionsRunning

Número de conexiones actuales en el estado en funcionamiento.

vhost.connectionsStarting

Número de conexiones actuales en el estado inicial.

vhost.conexionesTotal

Número de conexiones actuales a un vhost Rabbitmq determinado.

vhost.connectionsTuning

Número de conexiones actuales en el estado de sintonización.

Evento de muestra del nodo RabbitMQ

Estos atributos están adjuntos al tipo de evento RabbitmqNodeSample :

Nombre

Descripción

node.averageErlangProcessesWaiting

Número promedio de procesos de Erlang esperando para ejecutarse. En RabbitMQ esto se ve como run_queue.

node.diskAlarm

Alarma de disco de nodo (0 o 1). 0 muestra que la alarma no se disparó y 1 muestra que la alarma sí se disparó. En RabbitMQ esto se ve como disk_free_alarm.

node.diskSpaceFreeInBytes

Espacio libre en disco actual en bytes. En RabbitMQ esto se ve como disk_free.

node.fileDescriptorsTotal

El recuento total de descriptores de archivos. En RabbitMQ esto se ve como fd_total.

node.fileDescriptorsTotalUsed

El recuento total de descriptores de archivos utilizados. En RabbitMQ esto se ve como fd_used.

node.fileDescriptorsUsedSockets

Número de descriptores de archivos utilizados como sockets. En RabbitMQ esto se ve como sockets_used.

node.fileDescriptorsTotalSockets

Número total de descriptores de archivos disponibles como sockets. En RabbitMQ esto se ve como sockets_total.

node.hostMemoryAlarm

Alarma de memoria del host (0 o 1). 0 muestra que la alarma no se disparó y 1 muestra que la alarma sí se disparó. En RabbitMQ esto se ve como mem_alarm.

node.totalMemoryUsedInBytes

Memoria utilizada en bytes. En RabbitMQ esto se ve como mem_used.

node.partitionsSeen

Número de particiones de red vistas por nodo. En RabbitMQ esto se ve como partitions.

node.processesTotal

Límite del proceso de Erlang. En RabbitMQ esto se ve como proc_total.

node.processesUsed

Procesos Erlang utilizados. En RabbitMQ esto se ve como proc_used.

node.running

Nodo en ejecución (0 o 1). 0 muestra que el nodo no se está ejecutando y 1 muestra que el nodo se está ejecutando. En RabbitMQ esto se ve como running.

Evento de muestra de intercambio RabbitMQ

Estos atributos están adjuntos al tipo de evento RabbitmqExchangeSample :

Nombre

Descripción

exchange.bindings

Número de enlaces para un intercambio específico.

exchange.messagesPublishedPerChannel

Recuento de mensajes publicados desde un canal en este intercambio. En RabbitMQ esto se ve como message_stats.publish_in.

exchange.messagesPublishedPerChannelPerSecond

Tasa de mensajes publicados desde un canal en este intercambio por segundo. En RabbitMQ esto se ve como message_stats.publish_in_details.rate.

exchange.messagesPublishedQueue

Recuento de mensajes publicados desde este intercambio en una cola. En RabbitMQ esto se ve como message_stats.publish_out.

exchange.messagesPublishedQueuePerSecond

Tasa de mensajes publicados desde este intercambio en una cola por segundo. En RabbitMQ esto se ve como message_stats.publish_out_details.rate.

Evento de muestra de cola RabbitMQ

Estos atributos están adjuntos al tipo de evento RabbitmqQueueSample :

Nombre

Descripción

queue.bindings

Número de enlaces para una cola específica.

queue.countActiveConsumersReceiveMessages

Número de consumidores activos que pueden recibir inmediatamente cualquier mensaje enviado a la cola. En RabbitMQ esto se ve como active_consumers.

queue.consumers

Número de consumidores por cola. En RabbitMQ esto se ve como consumidor.

queue.consumerMessageUtilizationPerSecond

La proporción de tiempo que el consumidor de una cola puede recibir mensajes nuevos (utilización por segundo). En RabbitMQ esto se ve como consumer_utilisation.

Esta métrica solo está disponible en RabbitMQ versión 3.3 o superior.

queue.erlangBytesConsumedInBytes

Bytes consumidos por el proceso Erlang asociado con la cola. En RabbitMQ esto se ve como memory.

queue.messagesReadyDeliveryClients

Recuento de mensajes listos para ser entregados a los clientes. En RabbitMQ esto se ve como message_stats.messages_ready.

queue.messagesReadyDeliveryClientsPerSecond

Tasa de mensajes listos para ser entregados a los clientes por segundo. En RabbitMQ esto se ve como message_stats.messages_ready_details.rate.

queue.messagesReadyUnacknowledged

Recuento de mensajes por cola entregados a clientes pero aún no reconocidos. En RabbitMQ esto se ve como message_stats.deliver_no_ack.

queue.messagesReadyUnacknowledgedPerSecond

Tasa de mensajes por cola entregados a clientes pero aún no reconocidos por segundo. En RabbitMQ esto se ve como message_stats.deliver_no_ack_details.rate.

queue.messagesAcknowledged

Recuento de mensajes entregados a clientes y confirmados por cola. En RabbitMQ esto se ve como message_stats.ack.

queue.messagesAcknowledgedPerSecond

Tasa de mensajes entregados a clientes y confirmados por segundo por cola. En RabbitMQ esto se ve como message_stats.ack_details.rate.

queue.messagesDeliveredAckMode

Recuento de mensajes entregados en modo de reconocimiento al consumidor por cola. En RabbitMQ esto se ve como message_stats.deliver.

queue.messagesDeliveredAckModePerSecond

Tasa de mensajes entregados en modo de reconocimiento al consumidor por cola por segundo. En RabbitMQ esto se ve como message_stats.deliver_details.rate.

queue.messagesPublished

Recuento de mensajes publicados por cola. En RabbitMQ esto se ve como message_stats.publish.

queue.messagesPublishedPerSecond

Tasa de mensajes publicados por segundo por cola. En RabbitMQ esto se ve como message_stats.publish_details.rate.

queue.messagesRedeliverGet

Recuento del subconjunto de mensajes en modo de reconocimiento que tenían el indicador de reenvío establecido por cola. En RabbitMQ esto se ve como message_stats.redeliver.

queue.messagesRedeliverGetPerSecond

Tasa del subconjunto de mensajes en modo de reconocimiento que tenían el indicador reentregado establecido por cola por segundo. En RabbitMQ esto se ve como message_stats.redeliver_details.rate.

queue.sumMessagesDelivered

Suma de mensajes entregados en modo de reconocimiento al consumidor, en modo sin reconocimiento al consumidor, en modo de reconocimiento en respuesta a basic.get y en modo sin reconocimiento en respuesta a basic.get. por cola. En RabbitMQ esto se ve como message_stats.deliver_get.

queue.sumMessagesDeliveredPerSecond

Tasa por segundo de la suma de mensajes entregados en modo de reconocimiento al consumidor, en modo sin reconocimiento al consumidor, en modo de reconocimiento en respuesta a basic.get y en modo sin reconocimiento en respuesta a basic.get por cola. En RabbitMQ esto se ve como message_stats.deliver_get_details.rate.

queue.totalMessages

Recuento del total de mensajes en la cola. En RabbitMQ esto se ve como messages.

queue.totalMessagesPerSecond

Tasa de mensajes totales en cola. En RabbitMQ esto se ve como messages_details.rate.

Metadatos del sistema

Otros metadatos incluyen:

Nombre

Descripción

version.rabbitmq

La versión del servidor RabbitMQ. Ejemplo: 3.6.7.

version.management

La versión del complemento de administración RabbitMQ. Por ejemplo: 3.6.7.

Datos de inventario

La integración captura el parámetro de configuración de RabbitMQ en el archivo /etc/rabbitmq/rabbitmq.conf . los datos de inventario solo se capturan en RabbitMQ versión 3.7 o superior; Los datos de inventario aparecerán en la páginaInventory de la UI de infraestructura, bajo la fuente config/rabbitmq.

Advertencia

Tenga en cuenta que cualquier información confidencial que ingrese en el archivo rabbit.conf aparecerá en la página Inventory en la UI de infraestructura. Esto incluye elementos como los siguientes de AWS:

cluster_formation.aws.secret_key,
cluster_formation.aws.access_key_id

Resolución de problemas

Consejos para la resolución de problemas:

Comprueba el código fuente

Esta integración es software de código abierto. Eso significa que puedes explorar su código fuente y enviar mejoras, o crear tu propia bifurcación y compilarla.

Copyright © 2024 New Relic Inc.

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