Prerequisites
- A Bronto account and API key (how to create one)
- RabbitMQ writing logs to a file (default:
/var/log/rabbitmq/rabbit@<hostname>.log) - An OpenTelemetry Collector (recommended) or Fluent Bit installed on the same host
Configure the Collector
RabbitMQ entries begin with a timestamp, and some span multiple lines (crash reports). Usemultiline keyed on the leading timestamp:
/etc/otel/config.yaml
<REGION> to eu or us.
What you will see in Bronto
Open Search and filter byservice.name = rabbitmq. Each line carries a timestamp, log level ([info], [warning], [error]), the Erlang process id, and the message — connection open/close, channel errors, queue declarations, and node lifecycle events. Bronto’s Custom Parser extracts these fields server-side.
Troubleshooting
- Want structured fields at the source? RabbitMQ’s default format is plain text. For JSON logs (RabbitMQ 3.9+), set
log.file.formatter = jsoninrabbitmq.conf, then add ajson_parseroperator to the receiver. - For general issues, see OTel Collector troubleshooting.
Alternative: Fluent Bit
If you already run Fluent Bit, tail the RabbitMQ log file and forward it over HTTP:fluent-bit.conf
json_lines, not json. See Connect Fluent Bit to Bronto for installation.
