Class KafkaSender

java.lang.Object
zipkin2.Component
zipkin2.reporter.Sender
zipkin2.reporter.kafka.KafkaSender
All Implemented Interfaces:
Closeable, AutoCloseable

public final class KafkaSender
extends Sender
This sends (usually json v2) encoded spans to a Kafka topic.

Usage

This type is designed for the async reporter.

Here's a simple configuration, configured for json:


 sender = KafkaSender.create("localhost:9092");
 

Here's an example that overrides properties and protocol buffers encoding:


 Properties overrides = new Properties();
 overrides.put(ProducerConfig.MAX_BLOCK_MS_CONFIG, 5000);
 sender = KafkaSender.newBuilder()
   .bootstrapServers("host1:9092,host2:9092")
   .overrides(overrides)
   .encoding(Encoding.PROTO3)
   .build();
 

Compatibility with Zipkin Server

Zipkin server should be v1.26 or higher.

Implementation Notes

This sender is thread-safe. This sender is linked against Kafka 0.10.2+, which allows it to work with Kafka 0.10+ brokers