Open
Description
The purpose and use-cases of the new component
The RabbitMQ Receiver for the OpenTelemetry Collector is designed to consume telemetry data (traces, metrics, and logs) from RabbitMQ queues. It enables organizations using RabbitMQ for message-driven architectures to seamlessly integrate telemetry data into their OpenTelemetry pipelines, improving observability and operational insights.
Example configuration for the component
RabbitMQ Receiver Configuration
Example Configuration
receivers:
rabbitmq:
host: "localhost" # RabbitMQ server hostname or IP address
port: 5672 # RabbitMQ server port (default: 5672)
username: "user" # Username for RabbitMQ authentication (default: guest)
password: "secret" # Password for RabbitMQ authentication (default: guest)
virtual_host: "/" # RabbitMQ virtual host (default: /)
queue: "telemetry-queue" # Name of the RabbitMQ queue to consume messages from
exchange: # Optional exchange configuration
name: "telemetry-exchange" # Name of the exchange to bind to
type: "direct" # Type of exchange (direct, topic, fanout, headers)
routing_key: "telemetry-key" # Routing key for message filtering (optional for fanout exchanges)
encoding: "otlp_proto" # Encoding format for payloads (otlp_proto, otlp_json, raw, json, text)
telemetry_types: # Enables or disables specific telemetry types (traces, metrics, logs)
traces: true # Process messages as traces
metrics: true # Process messages as metrics
logs: false # Disable logs processing
prefetch_count: 10 # Maximum number of unacknowledged messages (default: 1)
connection_timeout: 30s # Timeout for establishing a connection (default: 10s)
message_marking: # Configures message acknowledgment behavior
after: true # Mark messages after pipeline processing
on_error: false # Skip marking messages if an error occurs
header_extraction: # Extracts RabbitMQ message headers as resource attributes
extract_headers: true # Enable header extraction
headers: # List of headers to extract (exact match, no regex)
- "header1"
- "header2"
Telemetry data types supported
Traces, Metrics and Logs
Code Owner(s)
Sponsor (optional)
No response
Additional context
I will be working on this receiver.