Zipkin server bundles extension for span collection and storage. By default spans can be collected over http, Kafka or RabbitMQ transports and stored in-memory or in MySQL, Cassandra or Elasticsearch.
The following modules add storage or transport extensions to the default server build. Please refer to their individual documentation for setup and configuration guides.
The following extensions are supported by the OpenZipkin team and are hosted at the OpenZipkin GitHub group. You can reach out to the team on Zipkin Gitter chat.
Type | Module | Related product | Other notes |
---|---|---|---|
Collector | zipkin-aws collector-sqs | AWS SQS | |
Collector | zipkin-aws collector-kinesis | AWS Kinesis | |
Storage | zipkin-aws storage-elasticsearch-aws | AWS Elasticsearch Service | |
Storage | zipkin-aws storage-xray | AWS X-Ray | only supports sending to an XRay UDP daemon |
Storage | zipkin-gcp storage-stackdriver | GCP Stackdriver | only supports sending to an Stackdriver |
Type | Module | Related product | Other notes |
---|---|---|---|
Storage | zipkin-storage-forwarder | Apache kafka (Optional) | Forwards spans to another HTTP or Kafka collector. |
Storage | zipkin-storage-kafka | Apache kafka | Supports aggregation and indexing of tracing data via Kafka Streams State Store. |
Reporter | spring-cloud-sleuth-haystack-reporter | Haystack | Supports sending data to Haystack, a resilient, scalable tracing and analysis system. |
The OpenZipkin team publish apis, data formats, and shared libraries that allow alternate backends to process the same data sent to the default Zipkin server.
Listed below are alternative backends that accept Zipkin format. Some use the same code as Zipkin on the same endpoints while others are on alternative endpoints or partially support features. In any case, the following aim to allow existing zipkin clients to use backends the OpenZipkin team does not support. Hence, direct questions to their respective communities.
/api/v1/spans
(thrift, json) and /api/v2/spans
(json, proto) POST requests.zipkin
topic, and zipkin
group ID accepts v2 spans encoded as a thrift/json/proto list per message./zipkin
is exposed by SkyWalking webapp.COLLECTOR_ZIPKIN_HTTP_PORT=9411
is set, Jaeger exposes a partial implementation of Zipkin’s HTTP POST endpoints
/api/v1/spans
(thrift, json) and /api/v2/spans
(json, proto) POST requests.SPAN_STORAGE_TYPE=kafka
and zipkin-thrift
, Jaeger reads Zipkin v1 thrift encoded span messages from a Kafka topic.
/api/v1/spans
(thrift, json) and /api/v2/spans
(json, proto) POST requests.Did we miss a server extension or alternative? Please open a pull-request to openzipkin.github.io.