Package io.vertx.kafka.client.common.tracing

## Class ProducerTracer<S>

- java.lang.Object
- - io.vertx.kafka.client.common.tracing.ProducerTracer<S>

-     public class ProducerTracer<S>
      extends Object

  Tracer for Kafka producer, wrapping the generic tracer.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `class` | `ProducerTracer.StartedSpan` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `static <S> ProducerTracer` | `create​(VertxTracer tracer, KafkaClientOptions opts)` | Creates a ProducerTracer, which provides an opinionated facade for using `VertxTracer` with a Kafka Producer use case.
    `ProducerTracer.StartedSpan` | `prepareSendMessage​(Context context, org.apache.kafka.clients.producer.ProducerRecord record)` |

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Method Detail

    - #### create

          public static <S> ProducerTracer create​(VertxTracer tracer,
                                                  KafkaClientOptions opts)

      Creates a ProducerTracer, which provides an opinionated facade for using `VertxTracer` with a Kafka Producer use case. The method will return `null` if Tracing is not setup in Vert.x, or if `TracingPolicy.IGNORE` is used.
      Type Parameters:
        `S` - the type of spans that is going to be generated, depending on the tracing system (zipkin, opentracing ...)
      Parameters:
        `tracer` - the generic tracer object
        `opts` - Kafka client options
      Returns:
        a new instance of `ProducerTracer`, or `null`

    - #### prepareSendMessage

          public ProducerTracer.StartedSpan prepareSendMessage​(Context context,
                                                               org.apache.kafka.clients.producer.ProducerRecord record)