Skip to content

0.4.0

Compare
Choose a tag to compare
@palazzem palazzem released this 24 Jan 01:10
· 10511 commits to master since this release

Improvements

  • The gem is available in the rubygems.org repository
  • Extended support to Ruby 2.4.0
  • Extended support to Passenger 5.0+
  • Sinatra web application library is supported; requests and templates
    rendering are instrumented. See Sinatra documentation for more details.
  • Ruby net/http module is instrumented so that HTTP calls are traced when
    the built-in module is used. See HTTP documentation for more details.

Bugfixes

  • Use alias_method in Redis instrumentation to prevent recursion when
    other libraries are patching the same class (#56)
  • Prevent conditional requires when ActiveRecord is not used (#62)
  • Adding Passenger support for the underlying cache system. Now traces are
    properly generated when Rails.cache is used (#64)
  • Reducing logs verbosity (#65) when Rails is auto instrumented

Breaking changes

  • Rails auto-instrumentation is disabled by default. You have to manually
    activate the Rails instrumentation in your initializer. See Rails documentation
    for more details (#55)

Read the full changeset

Migrate from 0.3.1 to 0.4.0

  • The official rubygems.org repository should be used and new versions will not be available in the previous repository. To receive new updates, change your Gemfile as follows:
source 'https://rubygems.org'

# tracing gem
gem 'ddtrace', '0.4.0'

# ...other gems...
  • If you're using the Rails integration, update your config/initializers/datadog-tracer.rb so that the
    auto_instrument and auto_instrument_redis are both enabled (or
    disabled according to your choice). You can find an example in the following
    code:
# config/initializers/datadog-tracer.rb

# this condition activates or deactivates the Rails auto instrumentation
# according to your environment; change it so that it reflects your
# application requirements
tracer_status = Rails.env.staging? || Rails.env.production?

Rails.configuration.datadog_trace = {
  auto_instrument: tracer_status,
  auto_instrument_redis: tracer_status,
  default_service: 'my-rails-app',
  # ...other configurations...
}