分布式追踪版本兼容性
本节列出了 PubSub+ 事件代理的版本以及对应的最小和推荐 OpenTelemetry 收集器和 PubSub+ 消息 API 版本。
OpenTelemetry接收器
Solace OpenTelemetry 接收器是 opentelemetry-collector-contrib 存储库的一部分。有关此存储库中收集器版本的详细信息,请参阅 https://github.com/open-telemetry/opentelemetry-collector-contrib/releases。要获取收集器的容器包,请运行以下 Docker 命令:
docker pull ghcr.io/open-telemetry/opentelemetry-collector-releases/opentelemetry-collector-contrib:<version>
其中 <version>
是收集器的版本,例如 0.79.0
。
Solace 建议您使用最新的 OpenTelemetry 收集器版本。
事件代理版本兼容性
以下表格列出了事件代理版本与 OpenTelemetry 收集器的最小版本兼容性。
PubSub+ 事件代理版本 | OpenTelemetry 收集器最小版本 |
---|---|
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 及以后 | 0.79 |
-
您必须在升级收集 OpenTelemetry 数据的 PubSub+ 事件代理之前,将您的 OpenTelemetry 收集器升级到上述列出的最小版本。
-
PubSub+ 事件代理版本 10.2.0 包含了分布式追踪功能的初始实现,需要包含 Solace OpenTelemetry 接收器的 OpenTelemetry 收集器版本。
-
PubSub+ 事件代理版本 10.2.1 是上下文传播的初始实现,是与任何 PubSub+ 消息 API 上下文传播兼容所需的最小事件代理版本。 要使用上下文传播,您必须拥有 OpenTelemetry 收集器的最小所需版本以及收集器所需的最小 API 版本。
-
PubSub+ 事件代理版本 10.4.0 是分区队列的初始实现。 如果您希望追踪消息包含相关的队列分区,您必须拥有 OpenTelemetry 收集器的最小所需版本以及收集器所需的最小 API 版本。
-
PubSub+ 事件代理版本 10.4.1 增加了对出站跨度的支持,包含向消费者传输和从消费者传输的响应信息,包括结果(ACK/NACK)。
PubSub+ API最小版本
以下表格列出了支持的 PubSub+ 消息 API、PubSub+ OpenTelemetry API 库和 OpenTelemetry 仪器库的版本兼容性。
分布式追踪需要 PubSub+ 事件代理版本 10.2.1 或更高版本。
PubSub+ 消息 API 版本 | PubSub+ OpenTelemetry API 库版本 | OpenTelemetry 仪器库版本 |
---|---|---|
JMS: 10.17 | PubSub+ OpenTelemetry 集成 Solace JMS API: 1.1 提供对 Spring 5.x 和 Spring Boot 2.x 的支持 | OpenTelemetry 仪器 Java: 1.29 |
JCSMP: 10.17 | PubSub+ OpenTelemetry 集成 Solace JCSMP API: 1.1 | OpenTelemetry 仪器 Java: 1.29 |
.NET: 10.21 | PubSub+ OpenTelemetry 集成 Solace .NET API: 1.0 | N/A |
JavaScript, Node.js: 10.15 | PubSub+ OpenTelemetry 集成 Solace JavaScript 和 Node.js API: 1.0 | OpenTelemetry 仪器 JavaScript: 1.7 |
Go: 1.5 | PubSub+ OpenTelemetry 集成 Solace Go API: 1.0 | N/A |
Python: 1.7 | PubSub+ OpenTelemetry 集成 Solace Python API: 1.0 | OpenTelemetry 仪器 Python: 1.22 |
Java: 1.7 | PubSub+ OpenTelemetry 集成 Solace Java API: 1.0 | OpenTelemetry 仪器 Java: 1.36 |
只有 JMS 的 PubSub+ 消息 API 支持自动仪器,所有其他 PubSub+ 消息 API 需要手动仪器。
对于自动仪器,Solace 建议您使用 OpenTelemetry 仪器 Java 库版本 1.29,Solace 已测试与支持自动仪器的 PubSub+ 产品兼容。库的早期版本可能与 PubSub+ 产品不兼容。有关版本详细信息,请参见 https://github.com/open-telemetry/opentelemetry-java-instrumentation/releases。