> ## Documentation Index
> Fetch the complete documentation index at: https://otel.fyi/llms.txt
> Use this file to discover all available pages before exploring further.

# Solace

> OpenTelemetry receiver for Solace

# Solace Receiver

![Status](https://img.shields.io/badge/status-beta-yellow)

**Available in:** `contrib`

**Maintainers:** [@mcardy](https://github.com/mcardy)

**Source:** [opentelemetry-collector-contrib](https://github.com/open-telemetry/opentelemetry-collector-contrib/tree/main/receiver/solacereceiver)

## Supported Telemetry

![Traces](https://img.shields.io/badge/traces-beta-orange)

## Overview

## Getting Started

To get started with the Solace receiver, a telemetry queue and authentication details must be configured. If connecting to a broker other than localhost, the `broker` field should be configured.

```yaml theme={null}
receivers:
  solace:
    broker: [localhost:5671]
    auth:
      sasl_plain:
        username: otel
        password: otel01$
    queue: queue://#telemetry-profile123

service:
  pipelines:
    traces:
      receivers: [solace]
```

## Configuration

The configuration parameters are:

* broker (Solace broker using amqp over tls; optional; default: localhost:5671; format: ip(host):port)
* queue (The name of the Solace queue to get span trace messages from; required; format: `queue://#telemetry-myTelemetryProfile`)
* max\_unacknowledged (The maximum number of unacknowledged messages the Solace broker can transmit; optional; default: 10)
* tls (Advanced tls configuration, secure by default)
  * insecure (The switch from ‘amqps’ to 'amqp’ to disable tls; optional; default: false)
  * server\_name\_override (Server name is the value of the Server Name Indication extension sent by the client; optional; default: empty string)
  * insecure\_skip\_verify (Disables server certificate validation; optional; default: false)
  * ca\_file (Path to the User specified trust-store; used for a client to verify the server certificate; if empty uses system root CA; optional, default: empty string)
  * cert\_file (Path to the TLS cert for client cert authentication, it is required when authentication sasl\_external is chosen; non optional for sasl\_external authentication)
  * key\_file (Path to the TLS key for client cert authentication, it is required when authentication sasl\_external is chosen; non optional for sasl\_external authentication)
* auth (Authentication settings. Permitted sub sub-configurations: sasl\_plain, sasl\_xauth2, sasl\_external)
  * sasl\_plain (Enables SASL PLAIN authentication)
    * username (The username to use, required for sasl\_plain authentication)
    * password (The password to use; required for sasl\_plain authentication)
  * sasl\_xauth2 (SASL XOauth2 authentication)
    * username (The username to use; required for sasl\_xauth2 authentication)
    * bearer (The bearer token in plain text; required for sasl\_xauth2 authentication)
  * sasl\_external (SASL External required to be used for TLS client cert authentication. When this authentication type is chosen then tls cert\_file and key\_file are required)
* flow\_control (Configures the behaviour to use when temporary errors are encountered from the next component)
  * delayed\_retry (Default flow control strategy. Sets the flow control strategy to delayed retry which will wait before trying to push the message to the next component again)
    * delay (The delay, e.g. 10ms, to wait before retrying. Default is 10ms)

### Examples:

Simple single node configuration with SASL plain authentication (TLS enabled by default)

```yaml theme={null}
receivers:
  solace:
    broker: [localhost:5671]
    auth:
      sasl_plain:
        username: otel
        password: otel01$
    queue: queue://#telemetry-profile123

service:
  pipelines:
    traces:
      receivers: [solace]
```

High availability setup with SASL plain authentication (TLS enabled by default)

```yaml theme={null}
receivers:
  solace/primary:
    broker: [myHost-primary:5671]
    auth:
      sasl_plain:
        username: otel
        password: otel01$
    queue: queue://#telemetry-profile123

  solace/backup:
    broker: [myHost-backup:5671]
    auth:
      sasl_plain:
        username: otel
        password: otel01$
    queue: queue://#telemetry-profile123

service:
  pipelines:
    traces/solace:
      receivers: [solace/primary,solace/backup]
```

## Configuration

### Example Configuration

```yaml theme={null}
solace/primary:
  broker: [ myHost:5671 ]
  auth:
    sasl_plain:
      username: otel
      password: otel01$
  queue: queue://#trace-profile123
  max_unacknowledged: 1234
  flow_control:
    delayed_retry:
      delay: 1s

solace/backup:
  auth:
    sasl_xauth2:
      username: otel
      bearer: otel01$
  queue: queue://#trace-profileABC
  tls:
    insecure: true

solace/noqueue:
  broker: [ myHost:5671 ]
  auth:
    sasl_plain:
      username: otel
      password: otel01

solace/noauth:
  broker: [ myHost:5671 ]
  queue: queue://#trace-profile123
```

***

*Last generated: 2026-07-06*
