Skip to content

Latest commit

 

History

History

rabbitmqexporter

RabbitMQ Exporter

Status
Stability alpha: traces, metrics, logs
Distributions contrib
Issues Open issues Closed issues
Code Owners @swar8080, @atoulme

Exports metrics, traces, and logs to RabbitMQ using the AMQP 0.9.1 protocol.

Messages are published to the default exchange direct exchange, but optionally can be published to a different direct exchange.

This component expects that exchanges, queues, and bindings already exist - they are not currently created by this component.

Getting Started

The following settings can be configured:

  • connection:
    • endpoint (required, ex = amqp://localhost:5672): Endpoint to connect to RabbitMQ
    • vhost (optional): The RabbitMQ virtual host to connect to
    • auth:
      • plain: Configuration if using SASL PLAIN authentication
        • username (required): username for authentication
        • password: password for authentication
    • tls (optional): TLS configuration
    • routing:
      • routing_key (default = otlp_spans for traces, otlp_metrics for metrics, otlp_logs for logs): Routing key used to route exported messages to RabbitMQ consumers
      • exchange: Name of the exchange used to route messages. If omitted, the default exchange is used which routes to a queue with the same as the routing key. Only direct exchanges are currently supported. Note that this component does not handle queue creation or binding.
    • durable (default = true): Whether to instruct RabbitMQ to make messages durable by writing to disk
    • encoding_extension: (defaults to OTLP protobuf format): ID of the encoding extension to use to marshal data
    • retry_on_failure:
      • enabled (default = false)

Example config:

exporters:
  rabbitmq:
      connection:
        endpoint: amqp://localhost:5672
        auth:
          plain:
            username: user
            password: pass
      encoding_extension: otlp_encoding/rabbitmq

extensions:
  otlp_encoding/rabbitmq:
    protocol: otlp_json