Distributed Tracing Version Compatibility

This section lists the releases of the PubSub+ event broker with the corresponding minimum and recommended OpenTelemetry Collector and PubSub+ Messaging API versions.

OpenTelemetry Receiver

The Solace Open Telemetry Receiver is part of the opentelemetry-collector-contrib repository. For details about releases of the collector from this repository, see https://github.com/open-telemetry/opentelemetry-collector-contrib/releases. To get a container package of the collector, run the following Docker command:

docker pull ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector-contrib:<version>

Where <version> is the version of the collector, for example 0.79.0.

Solace recommends that you use the latest OpenTelemetry Collector version.

Event Broker Version Compatibility

The following table lists the version compatibility of event broker versions and OpenTelemetry Collector minimum versions.

PubSub+ Event Broker Version OpenTelemetry Collector Minimum Version
10.2.0 0.63.1
10.2.1 - 10.3.1 0.67
10.4.0 0.75
10.4.1 0.79
10.5.1 and later 0.79
  • You must upgrade your OpenTelemetry Collectors to the minimum version listed above before you upgrade the PubSub+ event brokers from which the Collectors are receiving OpenTelemetry data.
  • Version 10.2.0 of the PubSub+ event broker includes the initial implementation of the distributed tracing feature and requires versions of the OpenTelemetry Collector that include the Solace OpenTelemetry receiver.
  • Version 10.2.1 of the PubSub+ event broker is the initial implementation of context propagation and is the minimum event broker release required to work with context propagation on any PubSub+ Messaging API.

    To use context propagation, you must have the minimum required versions of the OpenTelemetry Collector as well as the minimum API release the Collector requires.

  • Version 10.4.0 of the PubSub+ event broker is the initial implementation of partitioned queues.

    If you want your trace messages to include the associated queue partition, you must have the minimum required versions of the OpenTelemetry Collector as well as the minimum API release the Collector requires.

  • Version 10.4.1 of the PubSub+ event broker adds support for an egress span containing information on the transmission to and response from the consumer, including the outcome (ACK/NACK).

PubSub+ APIs Minimum Versions

The following table lists the version compatibility of the supported PubSub+ Messaging APIs, PubSub+ OpenTelemtry API libraries, and OpenTelemetry Instrumentation libraries.

Distributed Tracing requires version 10.2.1 or later of the PubSub+ Event Broker.

PubSub+ Messaging API Version PubSub+ OpenTelemetry API Library Version OpenTelemetry Instrumentation Library Version
JMS: 10.17 PubSub+ OpenTelemetry Integration for Solace JMS API: 1.1

 

provides support for Spring 5.x and Spring Boot 2.x
OpenTelemetry Instrumentation for Java: 1.29
JCSMP: 10.17 PubSub+ OpenTelemetry Integration for Solace JCSMP API: 1.1 OpenTelemetry Instrumentation for Java: 1.29
.NET: 10.21 PubSub+ OpenTelemetry Integration for Solace .NET API: 1.0 N/A
JavaScript, Node.js: 10.15 PubSub+ OpenTelemetry Integration for Solace JavaScript and Node.js APIs: 1.0 OpenTelemetry Instrumentation for JavaScript: 1.7
Go: 1.5 PubSub+ OpenTelemetry Integration for Solace Go API: 1.0 N/A
Python: 1.7 PubSub+ OpenTelemetry Integration for Solace Python API: 1.0 OpenTelemetry Instrumentation for Python: 1.22
Java: 1.7 PubSub+ OpenTelemetry Integration for Solace Java API: 1.0 OpenTelemetry Instrumentation for Java: 1.36

Only the PubSub+ Messaging API for JMS supports auto-instrumentation, all other PubSub+ Messaging APIs require manual instrumentation.

For auto-instrumentation, Solace recommends that you use the OpenTelemetry Instrumentation for Java library, version 1.29, which Solace has tested to work with PubSub+ products that support auto-instrumentation. Earlier versions of the library may not be compatible with PubSub+ products. For version details, see https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases.