This is an automated email from the ASF dual-hosted git repository.
dinglei pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/rocketmq-client-go.git
The following commit(s) were added to refs/heads/master by this push:
new 99c4336 feat: support multi unit in trace config (#1233)
99c4336 is described below
commit 99c433634e09f72fa2778ca04411de29d4fc9cff
Author: AnnaYue <[email protected]>
AuthorDate: Mon Jan 12 10:50:18 2026 +0800
feat: support multi unit in trace config (#1233)
---
consumer/interceptor.go | 3 ++-
internal/trace.go | 1 +
primitive/trace.go | 1 +
3 files changed, 4 insertions(+), 1 deletion(-)
diff --git a/consumer/interceptor.go b/consumer/interceptor.go
index 7878809..08f6b6a 100644
--- a/consumer/interceptor.go
+++ b/consumer/interceptor.go
@@ -20,6 +20,7 @@ package consumer
import (
"context"
"fmt"
+ "reflect"
"time"
"github.com/apache/rocketmq-client-go/v2/internal"
@@ -40,7 +41,7 @@ func WithTrace(traceCfg *primitive.TraceConfig) Option {
}
func newTraceInterceptor(dispatcher internal.TraceDispatcher)
primitive.Interceptor {
- if dispatcher != nil {
+ if dispatcher != nil && !reflect.ValueOf(dispatcher).IsNil() {
dispatcher.Start()
}
diff --git a/internal/trace.go b/internal/trace.go
index ecc903e..55bc71d 100644
--- a/internal/trace.go
+++ b/internal/trace.go
@@ -275,6 +275,7 @@ func NewTraceDispatcher(traceCfg *primitive.TraceConfig)
*traceDispatcher {
cliOp := DefaultClientOptions()
cliOp.GroupName = traceCfg.GroupName
+ cliOp.UnitName = traceCfg.UnitName
cliOp.NameServerAddrs = traceCfg.NamesrvAddrs
cliOp.InstanceName = "INNER_TRACE_CLIENT_DEFAULT"
cliOp.RetryTimes = 0
diff --git a/primitive/trace.go b/primitive/trace.go
index 53a13f0..4ddb2df 100644
--- a/primitive/trace.go
+++ b/primitive/trace.go
@@ -21,6 +21,7 @@ package primitive
type TraceConfig struct {
TraceTopic string
GroupName string
+ UnitName string
Access AccessChannel
NamesrvAddrs []string
Resolver NsResolver