tree: 7c3597bd4c06594c2c285fbc9bdee3855fa73b4a [path history] [tgz]
  1. consumer_interceptor.go
  2. consumer_interceptor_test.go
  3. message_carrier_adaptors.go
  4. message_carrier_util.go
  5. message_carrier_util_test.go
  6. producer_interceptor.go
  7. producer_interceptor_test.go
  8. readme.md
  9. span-enrichment.go
pulsar/internal/pulsartracing/readme.md

Usage

Interceptors based solution

// create new tracer
// register tracer with GlobalTracer
opentracing.SetGlobalTracer(tracer)

Producer

tracingInterceptor := &pulsartracing.ProducerInterceptor{}

options := pulsar.ProducerOptions{
Topic:            topicName,
Interceptors:     pulsar.ProducerInterceptors{tracingInterceptor},
}

Consumer

tracingInterceptor := &pulsartracing.ConsumerInterceptor{}

options := pulsar.ConsumerOptions{
Topics:           topicName,
SubscriptionName: subscriptionName,
Type:             pulsar.Shared,
Interceptors:      pulsar.ConsumerInterceptors{tracingInterceptor},
}


// to create span with message as parent span
span := pulsartracing.CreateSpanFromMessage(message, tracer, "child_span")

License

Apache 2.0 License.