Skip to content

Brave 2.0

Compare
Choose a tag to compare
@kristofa kristofa released this 21 Feb 11:50
· 1842 commits to master since this release

Brave 1.0 was an alternative implementation of Dapper with integration with the Zipkin backend components.
Brave 2.0 has the Zipkin core thrift classes as part of its api. This has as consequence that it will be easier to share components or extensions between Zipkin/Brave. It is compatible with Zipkin 1.1

Implemented changes:

  • Use Zipkin-core thrift generated classes as part of api.
  • Binary annotation support.
  • Cut dependencies with Twitter specific libraries. Only rely on Thrift.
  • Performance and through-put optimizations for zipkin-span-collector. It uses queue to store spans and separate thread for submitting spans to span collector / scribe.
    It tries to buffer spans to send them in batches to avoid communication overhead.
  • Make sampling / trace filtering work properly. See here for details.
  • Add flume support for transporting spans. See flume-zipkin-collector-sink.
  • Add TraceFilter implementation that uses Zookeeper for globally adjusting sample rate or enable/disable tracing all together. See brave-tracefilters
  • Extend threading support by introducing BraveExecutorService, BraveCallable and BraveRunnable.