Skip to content

0.8.0

Compare
Choose a tag to compare
@ufoot ufoot released this 24 Jul 12:16
· 11651 commits to master since this release
v0.8.0
22557d3

New features

  • Experimental distributed tracing support. Distributed tracing allows you to connect your traces from different applications, and possibly different languages. This feature is disabled by default. Libraries supporting this are Rack and Net/HTTP (#141, #151 - docs, contributed by @whithajess, @ejholmes and @cabello)

Major changes

  • Introduction of a context object, this is a deep refactoring which enables better future support of async behavior, and makes the Ruby library more similar to the Python implementation (#145)

Minor changes

  • Jruby is back in our CI chain (#129)
  • library is now tested against Ruby 2.4.1 (#159)
  • Rails 3.0 support. As this is a deprecated Rails version, our support for this is "best effort". (#154, #157, contributed by @dorner)
  • Adds a PID a as tag to root spans, so that you can know which process the trace belongs to (#147).

Breaking changes

  • Span constructor does not set the start_time any more. The start time is now set when calling start_span from the Tracer. This should not have any impact if you either use Tracer.trace or use out-of-the box integrations. The only side-effect is if you were working on a custom integration.
  • the finish_at method of the Span object, which was marked as deprecated in 0.7.2, has been completely removed. It can be safely replaced with finish, which takes an optional argument.

For example:

span.finish_at(timestamp)

becomes:

span.finish(timestamp)

And if you don't need to give a specific timestamp, this defaults to now:

span.finish()

Bugfixes

Special thanks to all contributors, who made this release possible.

Read the full changeset