Shared libraries that provide Zipkin integration with AWS Kinesis, SQS, and X-Ray. Requires JRE 8 or later.
These components provide Zipkin Reporters and Senders, which build off interfaces provided by the zipkin-reporters-java, and and Collectors, which are used in a Zipkin server.
We also have tracing libraries that extend Brave.
Tracing libraries extend Brave and ensure Amazon libraries are visible in your traces.
Instrumentation | Description |
---|---|
AWS SDK | Traces AmazonWebServiceClient |
AWS SDK V2 | Traces SdkClient |
AWS SQS Messaging | Traces AmazonSQS |
We also have a library to read Amazon's trace header.
The component in a traced application that sends timing data (spans) out of process is called a Reporter. It is responsible for handling the queueing and encoding of outbound spans.
Reporters that are sending Zipkin data to Zipkin typically make use of a Sender, which implements the wire protocol to a particular technology used to send the encoded spans. Typically Senders are called on interval by an async reporter.
NOTE: Applications can be written in any language. While we currently only have Reporters and Senders in Java, senders in other languages are welcome.
Reporter | Description |
---|---|
X-Ray UDP | Reports spans to X-Ray, AWS's alternative to Zipkin. |
Sender | Description |
---|---|
SQS | Sends tracing data to Zipkin using SQS, a message queue service. |
SQS v2 | Sends tracing data to Zipkin using SQS, a message queue service. |
Kinesis | Sends tracing data to Zipkin using Kinesis, an alternative similar to Kafka. |
The component in a zipkin server that receives trace data is called a collector. This decodes spans reported by applications and persists them to a configured storage component.
Collector | Description |
---|---|
SQS | An alternative to Kafka. |
Kinesis | An alternative to Kafka. |
Integration with Zipkin server is done for you in [Docker][docker]. If you cannot use Docker, you can integrate a Java module instead.
Configuration layered over Zipkin server is documented here.
All artifacts publish to the group ID "io.zipkin.aws". We use a common release version for all components.
Releases are at Sonatype and Maven Central
Snapshots are uploaded to Sonatype after commits to master.
Released versions of zipkin-aws are published to Docker Hub as openzipkin/zipkin-aws
and GitHub Container Registry as ghcr.io/openzipkin/zipkin-aws
.
See docker for details.