1.6.1 - 2022-11-16
- Limit
redis
version support to less than 5
- [redis]: Fix frozen input for
Redis.new(...)
1.6.0 - 2022-11-15
- Trace level tags propagation in distributed tracing (#2260)
- [hanami]: Hanami 1.x instrumentation (#2230)
- [pg, mysql2]: option
comment_propagation
for SQL comment propagation, default isdisabled
(#2339)(#2324)
- [rack, sinatra]: Squash nested spans and improve patching mechanism.
No need toregister Datadog::Tracing::Contrib::Sinatra::Tracer
(#2217) - [rails, rack]: Fix Non-GET request method with rails exception controller (#2317)
- Upgrade to libdatadog 0.9.0.1.0 (#2302)
- Remove legacy profiling transport (#2062)
- [redis]: Fix redis instance configuration, not on
client
(#2363)
# Change your code from
Datadog.configure_onto(redis.client, service_name: '...')
# to
Datadog.configure_onto(redis, service_name: '...')
- Allow
DD_TAGS
values to have the colon character (#2292) - Ensure that
TraceSegment
can be reported correctly when they are dropped (#2335) - Docs: Fixes upgrade guide on configure_onto (#2307)
- Fix environment logger with IO transport (#2313)
1.5.2 - 2022-10-27
DD_TRACE_CLIENT_IP_HEADER_DISABLED
was changed toDD_TRACE_CLIENT_IP_ENABLED
. Although the former still works we encourage usage of the latter instead.
http.client_ip
tag collection is made opt-in for APM. Note thathttp.client_ip
is always collected when ASM is enabled as part of the security service provided (#2321, #2331)
1.5.1 - 2022-10-19
- Fix
URI::InvalidURIError
(#2310, #2318) (@yujideveloper) - Handle URLs with invalid characters (#2311, #2319)
- Fix missing appsec.event tag (#2306)
- Fix missing Rack and Rails request body parsing for AppSec analysis (#2306)
- Fix unneeded AppSec call in a Rack context when AppSec is disabled (#2306)
- Fix spurious AppSec instrumentation (#2306)
1.5.0 - 2022-09-29
c.tracing.instrument :rack, { quantize: { base: ... } }
will change its default from:exclude
to:show
in a future version. Voluntarily moving to:show
is recommended.c.tracing.instrument :rack, { quantize: { query: { show: ... } }
will change its default to:all
in a future version, together withquantize.query.obfuscate
changing to:internal
. Voluntarily moving to these future values is recommended.
- Feature: Single Span Sampling (#2128)
- Add query string automatic redaction (#2283)
- Use full URL in
http.url
tag (#2265) - Add
http.useragent
tag (#2252) - Add
http.client_ip
tag for Rack-based frameworks (#2248) - Ci-app: CI: Fetch committer and author in Bitrise (#2258)
- Bump allowed version of debase-ruby_core_source to include v0.10.17 (#2267)
- Bug: Fix
service_nam
typo toservice_name
(#2296) - Bug: Check AppSec Rails for railties instead of rails meta gem (#2293) (@seuros)
- Ci-app: Correctly extract commit message from AppVeyor (#2257)
OpenTracing context propagation (#2191, #2289)
1.4.1 - 2022-09-15
- Missing distributed traces when trace is dropped by priority sampling (#2101, #2279)
- Profiling support when Ruby is compiled without a shared library (#2250)
1.4.0 - 2022-08-25
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.4.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v1.3.0...v1.4.0
- Bump
libdatadog
dependency version (#2229)
- Fix CI instrumentation configuration (#2219)
1.3.0 - 2022-08-04
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.3.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v1.2.0...v1.3.0
- Top-level span being tagged to avoid duplicate computation (#2138)
- ActiveSupport: Optionally disable tracing with Rails (@marcotc)
- Rack: Resource overwritten by nested application (#2180)
- Rake: Explicit task instrumentation to prevent memory bloat (#2174)
- Sidekiq and DelayedJob: Add spans to improve tracing (#2170)
- Drop Profiling support for Ruby 2.1 (#2140)
- Migrate
libddprof
dependency tolibdatadog
(#2061)
- Fix OpenTracing propagation with TraceDigest (#2201)
- Fix SpanFilter dropping descendant spans (#2074)
- Redis: Fix Empty pipelined span being dropped (#757) (@sponomarev)
- Fix profiler not restarting on
Process.daemon
(#2150) - Fix setting service from Rails configuration (#2118) (@agrobbin)
- Some document and development improvement (@marocchino) (@yukimurasawa)
1.2.0 - 2022-07-11
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.2.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v1.1.0...v1.2.0
Special thanks go to @miketheman for gifting Datadog access to the datadog
gem a few days ago.
- Add Postgres (
pg
gem) instrumentation (#2054) (@jennchenn) - Add env var for debugging profiling native extension compilation issues (#2069)
- Teach Rest Client integration the
:split_by_domain
option (#2079) (@agrobbin) - Allow passing request_queuing option to Rack through Rails tracer (#2082) (@KieranP)
- Add Utility to Collect Platform Information (#2097) (@jennchenn)
- Add convenient interface for getting and setting tags using
[]
and[]=
respectively (#2076) (@ioquatix) - Add b3 metadata in grpc (#2110) (@henrich-m)
- Profiler now reports profiling data using the libddprof gem (#2059)
- Rename
Kernel#at_fork_blocks
monkey patch toKernel#ddtrace_at_fork_blocks
(#2070) - Improved error message for enabling profiling when
pkg-config
system tool is not installed (#2134)
- Prevent errors in
action_controller
integration when tracing is disabled (#2027) (@ahorner) - Fix profiler not building on ruby-head (3.2) due to VM refactoring (#2066)
- Span and trace IDs should not be zero (#2113) (@albertvaka)
- Fix object_id usage as thread local key (#2096)
- Fix profiling not working on Heroku and AWS Elastic Beanstalk due to linking issues (#2125)
1.1.0 - 2022-05-25
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.1.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v1.0.0...v1.1.0
- Application Security Monitoring
- Elasticsearch: v8.0 support (#1985)
- Sidekiq: Quantize args (#1972) (@dudo)
- Profiling: Add libddprof dependency to power the new Ruby profiler (#2028)
- Helper to easily enable core dumps (#2010)
- Support spaces in environment variable DD_TAGS (#2011)
- Fix "circular require considered harmful" warnings (#1998)
- Logging: Change ddsource to a scalar value (#2022)
- Improve exception logging (#1992)
1.0.0 - 2022-04-28
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.0.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v1.0.0.beta2...v1.0.0
Diff since last stable release: https://github.com/DataDog/dd-trace-rb/compare/v0.54.2...v1.0.0
- GraphQL 2.0 support (#1982)
- AppSec: Update libddwaf to 1.3.0 (#1981)
- Rails log correlation (#1989) (@cwoodcox)
- Resource not inherited from lazily annotated spans (#1983)
- AppSec: Query address for libddwaf (#1990)
- Docs: Add undocumented Rake option (#1980) (@ecdemis123)
- Improvements to test suite & CI (#1970, #1974, #1991)
- Improvements to documentation (#1984)
1.0.0.beta2 - 2022-04-14
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.0.0.beta2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v1.0.0.beta1...v1.0.0.beta2
- Access to configuration settings is namespaced (#1922)
- AWS provides metrics by default (#1976) (@dudo)
- Update
debase-ruby_core_source
version (#1964) - Profiling: Hide symbols/functions in native extension (#1968)
- Profiling: Renamed code_provenance.json to code-provenance.json (#1919)
- AppSec: Update libddwaf to v1.2.1 (#1942)
- AppSec: Update rulesets to v1.3.1 (#1965, #1961, #1937)
- AppSec: Avoid exception on missing ruleset file (#1948)
- AppSec: Env var consistency (#1938)
- Rake instrumenting while disabled (#1940, #1945)
- Grape instrumenting while disabled (#1940, #1943)
- CI: require 'datadog/ci' not loading dependencies (#1911)
- CI: RSpec shared example file names (#1816) (@Drowze)
- General documentation improvements (#1958, #1933, #1927)
- Documentation fixes & improvements to 1.0 upgrade guide (#1956, #1973, #1939, #1914)
1.0.0.beta1 - 2022-02-15
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v1.0.0.beta1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.54.2...v1.0.0.beta1
See https://github.com/DataDog/dd-trace-rb/blob/v1.0.0.beta1/docs/UpgradeGuide.md.
0.54.2 - 2022-01-18
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.54.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.54.1...v0.54.2
- Bump
debase-ruby_core_source
dependency version; also allow older versions to be used (#1798, #1829) - Profiler: Reduce impact of reporting data in multi-process applications (#1807)
- Profiler: Update API used to report data to backend (#1820)
- Gracefully handle installation on environments where Ruby JIT seems to be available but is actually broken (#1801)
0.54.1 - 2021-11-30
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.54.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.54.0...v0.54.1
0.54.0 - 2021-11-17
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.54.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.53.0...v0.54.0
- MongoDB service name resolver when using multi cluster (#1423) (@skcc321)
- Service name override for ActiveJob in Rails configuration (#1703, #1770) (@hatstand)
- Profiler: Expose profile duration and start to the UI (#1709)
- Profiler: Gather CPU time without monkey patching Thread (#1735, #1740)
- Profiler: Link profiler samples to individual web requests (#1688)
- Profiler: Capture threads with empty backtrace (#1719)
- CI-App: Memoize environment tags to improve performance (#1762)
- CI-App:
test.framework_version
tag for rspec and cucumber (#1713)
- Set minimum version of dogstatsd-ruby 5 series to 5.3 (#1717)
- Use USER_KEEP/USER_REJECT for RuleSampler decisions (#1769)
- "private method `ruby2_keywords' called" errors (#1712, #1714)
- Configuration warning when Agent port is a String (#1720)
- Ensure internal trace buffer respects its maximum size (#1715)
- Remove erroneous maximum resque version support (#1761)
- CI-App: Environment variables parsing precedence (#1745, #1763)
- CI-App: GitHub Metadata Extraction (#1771)
- Profiler: Missing thread id for natively created threads (#1718)
- Docs: Active Job integration example code (#1721) (@y-yagi)
- Redis client patch to use prepend (#1743) (@justinhoward)
0.53.0 - 2021-10-06
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.53.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.52.0...v0.53.0
- ActiveJob integration (#1639) (@bensheldon)
- Instrument Action Cable subscribe/unsubscribe hooks (#1674) (@agrobbin)
- Instrument Sidekiq server internal events (heartbeat, job fetch, and scheduled push) (#1685) (@agrobbin)
- Correlate Active Job logs to the active DataDog trace (#1694) (@agrobbin)
- Runtime Metrics: Global VM cache statistics (#1680)
- Automatically send traces to agent Unix socket if present (#1700)
- CI-App: User Provided Git Metadata (#1662)
- ActionMailer integration (#1280)
- Profiler: Set Sinatra resource setting at beginning of request and delay setting fallback resource (#1628)
- Profiler: Use most recent event for trace resource name (#1695)
- Profiler: Limit number of threads per sample (#1699)
- Profiler: Rename
extract_trace_resource
toendpoint.collection.enabled
(#1702)
- Capture Rails exception before default error page is rendered (#1684)
NoMethodError
in sinatra integration when Tracer middleware is missing (#1643, #1644) (@mscrivo)- CI-App: Require
rspec-core
for RSpec integration (#1654) (@elliterate) - CI-App: Use the merge request branch on merge requests (#1687) (@carlallen)
- Remove circular dependencies. (#1668) (@saturnflyer)
- Links in the Table of Contents (#1661) (@chychkan)
- CI-App: Fix CI Visibility Spec Tests (#1706)
- Profiler: pprof encoding benchmark and improvements (#1511)
0.52.0 - 2021-08-09
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.52.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.51.1...v0.52.0
-
Add Sorbet typechecker to dd-trace-rb (#1607)
Note that no inline type signatures were added, to avoid a hard dependency on sorbet.
-
Profiler: Add support for annotating profiler stacks with the resource of the active web trace, if any (#1623)
Note that this data is not yet visible on the profiling interface.
-
Add error_handler option to GRPC tracer configuration (#1583) (@fteem)
-
User-friendly handling of slow submissions on shutdown (#1601)
-
Profiler: Add experimental toggle to disable the profiling native extension (#1594)
-
Profiler: Bootstrap profiling native extension (#1584)
- Profiler: Profiling data is no longer reported when there's less than 1 second of data to report (#1630)
- Move Grape span resource setting to beginning of request (#1629)
- Set resource in Sinatra spans at the beginning of requests, and delay setting fallback resource to end of requests (#1628)
- Move Rails span resource setting to beginning of request (#1626)
- Make registry a global constant repository (#1572)
- Profiler: Remove automatic agentless support (#1590)
- Profiler: Fix CPU-time accounting in Profiling when fibers are used (#1636)
- Don't set peer.service tag on grpc.server spans (#1632)
- CI-App: Fix GitHub actions environment variable extraction (#1622)
- Additional Faraday 1.4+ cgroup parsing formats (#1595)
- Avoid shipping development cruft files in gem releases (#1585)
0.51.1 - 2021-07-13
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.51.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.51.0...v0.51.1
- AWS-SDK instrumentation without
aws-sdk-s3
(#1592)
0.51.0 - 2021-07-12
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.51.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.50.0...v0.51.0
- Semantic Logger trace correlation injection (#1566)
- New and improved Lograge trace correlation injection (#1555)
- Profiler: Start profiler on
ddtrace/auto_instrument
- CI-App: Add runtime and OS information (#1587)
- CI-App: Read metadata from local git repository (#1561)
-
Rename
Datadog::Runtime
toDatadog::Core::Environment
(#1570)As we prepare the
Datadog
Ruby namespace to better accommodate new products, we are moving a few internal modules to a different location to avoid conflicts.None of the affected files are exposed publicly in our documentation, and they are only expected to be used internally and may change at any time, even between patch releases.
- The following modules have been moved:
Datadog::Runtime::Cgroup -> Datadog::Core::Environment::Cgroup Datadog::Runtime::ClassCount -> Datadog::Core::Environment::ClassCount Datadog::Runtime::Container -> Datadog::Core::Environment::Container Datadog::Runtime::GC -> Datadog::Core::Environment::GC Datadog::Runtime::Identity -> Datadog::Core::Environment::Identity Datadog::Runtime::ObjectSpace -> Datadog::Core::Environment::ObjectSpace Datadog::Runtime::Socket -> Datadog::Core::Environment::Socket Datadog::Runtime::ThreadCount -> Datadog::Core::Environment::ThreadCount
- Most constants from
Datadog::Ext::Runtime
have been moved to a new module:Datadog::Core::Environment::Ext
.
-
Skip CPU time instrumentation if logging gem is detected (#1557)
-
Initialize
dogstatsd-ruby
in single threaded mode (#1576)This should alleviate any existing issues with
dogstatsd-ruby
resource leaks. -
Do not use configured
dogstatsd-ruby
instance when it's an incompatible version (#1560) -
Ensure tags with special Datadog processing are consistently serialized (#1556)
-
Profiler: NameError during initialization (#1552)
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.50.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.49.0...v0.50.0
- Add warning, update documentation, for incompatible dogstastd-ruby version (#1544#1533)
- Add CI mode and Test mode feature (#1504)
- Add Gem.loaded_specs fallback behavior if protobuf or dogstatsd-ruby already loaded(#1506#1510)
- Declare EOL for Ruby 2.0 support (#1534)
- Rename Thread#native_thread_id to #pthread_thread_id to avoid conflict with Ruby 3.1 (#1537)
- Fix tracer ignoring value for service tag (service.name) in DD_TAGS (#1543)
- Fix nested error reporting to correctly walk clause chain (#1535)
- Fix AWS integration to prevent S3 URL presigning from generating a remote request span (#1494)
- Fix backtrace handling of exception classes that return nil message (#1500) (@masato-hi)
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.49.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.48.0...v0.49.0
- Add cause to error stack trace (#1472)
- Prevent double initialization when auto instrumenting non-Rails applications (#1497)
- Support kwargs in Ruby 3.0 for sucker_punch (#1495) (@lloeki)
- Fargate fixes and Container parsing for CGroups (#1487#1480#1475)
- Fix ActionPack instrumentation
#starts_with?
error(#1489) - Doc fixes (#1473) (@kexoth)
0.48.0 - 2021-04-19
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.48.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.47.0...v0.48.0
-
Add deprecation warning for Ruby 2.0 support (#1441)
Support for Ruby 2.0 will be available up to release
0.49.x
, and dropped from release0.50.0
and greater. Users are welcome to continue using version< 0.50.0
for their Ruby 2.0 deployments going forward. -
Auto instrument Resque workers by default (#1400)
- Ensure DD_TRACE_SAMPLE_RATE enables full RuleSampler (#1416)
- Fix Fargate 1.4 container ID not being read (#1457)
- Correctly close all StatsD clients (#1429)
- Improvements to test suite & CI (#1421, #1435, #1445, #1453, #1456, #1461)
- Improvements to documentation (#1455)
0.47.0 - 2021-03-29
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.47.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.46.0...v0.47.0
- Document support for httpx integration (#1396) (@HoneyryderChuck)
- Schemas to list of supported AWS services (#1415) (@tomgi)
- Branch test coverage report (#1343)
-
BREAKING Separate Resolver configuration and resolution steps (#1319)
Partial matching of connection fields (adapter, username, host, port, database) is now allowed. Previously, only an exact match of connections fields would be considered matching. This should help greatly simplify database configuration matching, as you will only need to provide enough fields to correctly separate your distinct database connections.
If you have a
c.use active_record, describe:
statement in your application that is currently not matching any connections, you might start seeing them match after this release.c.use active_record, describe:
statements that are currently matching a connection will continue to match that same connection.You can refer to the expanded ActiveSupport documentation for details on how to use the new partial matchers and configuration code examples.
The interface for
Datadog::Contrib::Configuration::Resolver
has changed: custom configuration resolvers that inherit fromDatadog::Contrib::Configuration::Resolver
will need be changed to fulfill the new interface. See code documentation forDatadog::Contrib::Configuration::Resolver
for specific API requirements. -
Remove type check from ThreadLocalContext#local. (#1399) (@orekyuu)
- Support for JRuby 9.2.0.0 (#1409)
- Failed integration message (#1394) (@e1senh0rn)
- Addressed "warning: instance variable @components not initialized" (#1419)
- Close /proc/self/cgroup file after reading (#1414)
- Improve internal "only once" behavior across the tracer (#1398)
- Increase thread-safety during tracer initialization (#1418)
- Use MINIMUM_VERSION in resque compatible? check (#1426) (@mriddle)
- Lint fixes for Rubocop 1.12.0 release (#1430)
- Internal tracer improvements (#1403)
- Improvements to test suite & CI (#1334, #1379, #1393, #1406, #1408, #1412, #1417, #1420, #1422, #1427, #1428, #1431, #1432)
0.46.0 - 2021-03-03
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.46.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.45.0...v0.46.0
- Add EventBridge to supported AWS services (#1368) (@tomgi)
- Add
time_now_provider
configuration option (#1224)- This new option allows the span
start_time
andend_time
to be configured in environments that change the default time provider, like with Timecop. More information in the official documentation.
- This new option allows the span
- Add name to background threads created by ddtrace (#1366)
- Rework RSpec instrumentation as separate traces for each test (#1381)
- ArgumentError: wrong number of arguments (given 2, expected 0) due to concurrent
require
(#1306, #1354) (@EvNomad) - Fix Rails' deprecation warnings (#1352)
- Fully populate Rake span fields on exceptions (#1377)
- Fix a typo in
httpclient
integration (#1365) (@y-yagi) - Add missing license files for vendor'd code (#1346)
- Improvements to test suite & CI (#1277, #1305, #1336, #1350, #1353, #1357, #1367, #1369, #1370, #1371, #1374, #1380)
- Improvements to documentation (#1332)
- Remove deprecated Datadog::Monkey (#1341)
- Remove deprecated Datadog::DeprecatedPin (#1342)
- Remove unused Shim/MethodWrapper/MethodWrapping (#1347)
- Remove APP_ANALYTICS from tests instrumentation (#1378) (@AdrianLC)
0.45.0 - 2021-01-26
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.45.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.44.0...v0.45.0
- Promote request_queuing out of experimental (#1320)
- Safeguards around distributed HTTP propagator (#1304)
- Improvements to test integrations (#1291, #1303, #1307)
- Direct object_id lookup for ActiveRecord connections (#1317)
- Avoid multiple parsing of Ethon URIs (#1302) (@callumj)
- Improvements to test suite & CI (#1309, #1318, #1321, #1323, #1325, #1331)
- Improvements to documentation (#1326)
0.44.0 - 2021-01-06
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.44.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.43.0...v0.44.0
- Ruby 3.0 support (#1281, #1296, #1298)
- Rails 6.1 support (#1295)
- Qless integration (#1237) (@sco11morgan)
- AWS Textract service to AWS integration (#1270) (@Sticksword)
- Ability to disable Redis argument capture (#1276) (@callumj)
- Upload coverage report to Codecov (#1289)
- Reduce Runtime Metrics frequency to every 10 seconds (#1269)
- Disambiguate resource names for Grape endpoints with shared paths (#1279) (@pzaich)
- Remove invalid Jenkins URL from CI integration (#1283)
- Reduce memory allocation when unnecessary (#1273, #1275) (@callumj)
- Improvements to test suite & CI (#847, #1256, #1257, #1266, #1272, #1277, #1278, #1284, #1286, #1287, #1293, #1299)
- Improvements to documentation (#1262, #1263, #1264, #1267, #1268, #1297)
0.43.0 - 2020-11-18
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.43.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.42.0...v0.43.0
- Background job custom error handlers (#1212) (@norbertnytko)
- Add "multi" methods instrumentation for Rails cache (#1217) (@michaelkl)
- Support custom error status codes for Grape (#1238)
- Cucumber integration (#1216)
- RSpec integration (#1234)
- Validation to
:on_error
argument onDatadog::Tracer#trace
(#1220)
- Update
TokenBucket#effective_rate
calculation (#1236)
- Avoid writer reinitialization during shutdown (#1235, #1248)
- Fix configuration multiplexing (#1204, #1227)
- Fix misnamed B3 distributed headers (#1226, #1229)
- Correct span type for AWS SDK (#1233)
- Correct span type for internal Pin on HTTP clients (#1239)
- Reset trace context after fork (#1225)
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.42.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.41.0...v0.42.0
-
Increase Resque support to include 2.0 (#1213) (@erict-square)
-
Improve gRPC Propagator to support metadata array values (#1203) (@mdehoog)
-
Access active correlation by Thread (#1200)
-
Improve delayed_job instrumentation (#1187) (@norbertnytko)
- Refactor Trace buffer into multiple components (#1195)
0.41.0 - 2020-09-30
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.41.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.40.0...v0.41.0
- Improve duration counting using monotonic clock (#424, #1173) (@soulcutter)
- Add peer.service tag to external services and skip tagging external services with language tag for runtime metrics (#934, #935, #1180)
- This helps support the way runtime metrics are associated with spans in the UI.
- Faster TraceBuffer for CRuby (#1172)
- Reduce memory usage during gem startup (#1090)
- Reduce memory usage of the HTTP transport (#1165)
- Improved prepared statement support for Sequel integrations (#1186)
- Fix Sequel instrumentation when executing literal strings (#1185) (@matchbookmac)
- Remove explicit
Logger
class verification (#1181) (@bartekbsh)- This allows users to pass in a custom logger that does not inherit from
Logger
class.
- This allows users to pass in a custom logger that does not inherit from
- Correct tracer buffer metric counting (#1182)
- Fix Span#pretty_print for empty duration (#1183)
- Improvements to test suite & CI (#1179, #1184, #1177, #1178, #1176)
- Reduce generated Span ID range to fit in Fixnum (#1189)
0.40.0 - 2020-09-08
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.40.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.39.0...v0.40.0
- Rails
log_injection
option to auto enable log correlation (#1157) - Que integration (#1141, #1146) (@hs-bguven)
Components#startup!
hook (#1151)- Code coverage report (#1159)
- Every commit now has a
coverage
CI step that contains the code coverage report. This report can be found in theArtifacts
tab of that CI step, undercoverage/index.html
.
- Every commit now has a
-
Sinatra nested modular applications possibly leaking spans (#1035, #1145)
- BREAKING for nested modular Sinatra applications only:
class Nested < Sinatra::Base end class TopLevel < Sinatra::Base use Nested # Nesting happens here end
- Non-breaking for classic applications nor modular non-nested applications.
Fixes issues introduced by #1015 (in 0.35.0), when we first introduced Sinatra support for modular applications.
The main issue we had to solve for modular support is how to handle nested applications, as only one application is actually responsible for handling the route. A naive implementation would cause the creation of nested
sinatra.request
spans, even for applications that did not handle the request. This is technically correct, as Sinatra is traversing that middleware, accruing overhead, but that does not aligned with our existing behavior of having a singlesinatra.request
span.While trying to achieve backwards-compatibility, we had to resort to a solution that turned out brittle:
sinatra.request
spans had to start in one middleware level and finished it in another. This allowed us to only capture thesinatra.request
for the matching route, and skip the non-matching one. This caused unexpected issues on some user setups, specially around Sinatra middleware that created spans in between the initialization and closure ofsinatra.request
spans.This change now address these implementation issues by creating multiple
sinatra.request
, one for each traversed Sinatra application, even non-matching ones. This instrumentation is more correct, but at the cost of being a breaking change for nested modular applications.Please see #1145 for more information, and example screenshots on how traces for affected applications will look like.
- BREAKING for nested modular Sinatra applications only:
-
Rack/Rails span error propagation with
rescue_from
(#1155, #1162) -
Prevent logger recursion during startup (#1158)
-
Race condition on new worker classes (#1154)
- These classes represent future work, and not being used at the moment.
- Run CI tests in parallel (#1156)
- Migrate minitest tests to RSpec (#1127, #1128, #1133, #1149, #1152, #1153)
- Improvements to test suite (#1134, #1148, #1163)
- Improvements to documentation (#1138)
- Ruby 1.9 support ended, as it transitions from Maintenance to End-Of-Life (#1137)
- GitLab status check when not applicable (#1160)
- Allows for PRs pass all status checks once again. Before this change, a
dd-gitlab/copy_to_s3
check would never leave the "Pending" status. This check tracks the deployment of a commit to an internal testing platform, which currently only happens onmaster
branch or when manually triggered internally.
- Allows for PRs pass all status checks once again. Before this change, a
0.39.0 - 2020-08-05
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.39.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.38.0...v0.39.0
- Consistent environment variables across languages (#1115)
- Default logger level from WARN to INFO (#1120) (@gingerlime)
- This change also reduces the startup environment log message to INFO level (#1104)
- HTTP::StateError on error responses for http.rb (#1116, #1122) (@evan-waters)
- Startup log error when using the test adapter (#1125, #1131) (@benhutton)
- Warning message for Faraday < 1.0 (#1129) (@fledman, @tjwp)
- Propagate Rails error message to Rack span (#1124)
0.38.0 - 2020-07-13
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.38.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.37.0...v0.38.0
- http.rb integration (#529, #853)
- Kafka integration (#1070) (@tjwp)
- Span#set_tags (#1081) (@DocX)
- retry_count tag for Sidekiq jobs (#1089) (@elyalvarado)
- Startup environment log (#1104, #1109)
- DD_SITE and DD_API_KEY configuration (#1107)
- Auto instrument Faraday default connection (#1057)
- Sidekiq client middleware is now the same for client and server (#1099) (@drcapulet)
- Single pass SpanFilter (#1071) (@tjwp)
- Ensure fatal exceptions are propagated (#1100)
- Respect child_of: option in Tracer#trace (#1082) (@DocX)
- Improve Writer thread safety (#1091) (@fledman)
0.37.0 - 2020-06-24
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.37.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.36.0...v0.37.0
- Documentation improvements regarding Datadog Agent defaults (#1074) (@cswatt)
- Improvements to test suite (#1043, #1051, #1062, #1075, #1076, #1086)
-
DEPRECATION: Deprecate Contrib::Configuration::Settings#tracer= (#1072, #1079)
-
The
tracer:
option is no longer supported for integration configuration. A deprecation warning will be issued when this option is used. -
Tracer instances are dynamically created when
ddtrace
is reconfigured (throughDatadog.configure{}
calls).A reference to a tracer instance cannot be stored as it will be replaced by a new instance during reconfiguration.
Retrieving the global tracer instance, by invoking
Datadog.tracer
, is the only safe mechanism to acquire the active tracer instance.Allowing an integration to set its tracer instance is effectively preventing that integration from dynamically retrieving the current active tracer in the future, thus causing it to record spans in a stale tracer instance. Spans recorded in a stale tracer instance will look disconnected from their parent context.
-
-
BREAKING: Remove Pin#tracer= and DeprecatedPin#tracer= (#1073)
- The
Pin
andDeprecatedPin
are internal tools used to provide more granular configuration for integrations. - The APIs being removed are not public nor have been externally documented. The
DeprecatedPin
specifically has been considered deprecated since 0.20.0. - This removal is a continuation of #1079 above, thus carrying the same rationale.
- The
- Remove
tracer
argument provided to integrations (e.g.c.use :rails, tracer: ...
). - Remove
tracer
argument provided toPin
orDeprecatedPin
initializers (e.g.Pin.new(service, tracer: ...)
). - If you require a custom tracer instance, use a global instance configuration:
Datadog.configure do |c| c.tracer.instance = custom_tracer end
0.36.0 - 2020-05-27
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.36.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.35.2...v0.36.0
- Prevent trace components from being re-initialized multiple times during setup (#1037)
- Allow Rails patching if Railties are loaded (#993, #1054) (@mustela, @bheemreddy181, @vramaiah)
- Pin delegates to default tracer unless configured (#1041)
0.35.2 - 2020-05-08
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.35.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.35.1...v0.35.2
- Internal tracer HTTP requests generating traces (#1030, #1033) (@gingerlime)
Datadog.configure
forcing all options to eager load (#1032, #1034) (@kelvin-acosta)
0.35.1 - 2020-05-05
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.35.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.35.0...v0.35.1
0.35.0 - 2020-04-29
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.35.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.34.2...v0.35.0
- Chunk large trace payloads before flushing (#818, #840)
- Support for Sinatra modular apps (#486, #913, #1015) (@jpaulgs, @tomasv, @ZimbiX)
- active_job support for Resque (#991) (@stefanahman, @psycholein)
- JRuby 9.2 to CI test matrix (#995)
TraceWriter
andAsyncTraceWriter
workers (#986)- Runtime metrics worker (#988)
- Populate env, service, and version from tags (#1008)
- Extract components from configuration (#996)
- Extract logger to components (#997)
- Extract runtime metrics worker from
Writer
(#1004) - Improvements to Faraday documentation (#1005)
- Runtime metrics not starting after #write (#1010)
0.34.2 - 2020-04-09
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.34.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.34.1...v0.34.2
- Revert Rails applications setting default
env
if none are configured. (#1000) (@errriclee)
0.34.1 - 2020-04-02
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.34.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.34.0...v0.34.1
- Rails applications set default
service
andenv
if none are configured. (#990)
0.34.0 - 2020-03-31
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.34.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.33.1...v0.34.0
Datadog::Event
for simple pub-sub messaging (#972)Datadog::Workers
for trace writing (#969, #973)_dd.measured
tag to some integrations for more statistics (#974)env
,service
,version
,tags
configuration for auto-tagging (#977, #980, #982, #983, #985)- Multiplexed configuration for Ethon, Excon, Faraday, HTTP integrations (#882, #953) (@stormsilver)
- Runtime metrics configuration dropping with new writer (#967, #968) (@ericmustin)
- Faraday "unexpected middleware" warnings on v0.x (#965, #971)
- Presto configuration (#975)
- Test suite issues (#981)
0.33.1 - 2020-03-09
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.33.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.33.0...v0.33.1
- NoMethodError when activating instrumentation for non-existent library (#964, #966) (@roccoblues, @brafales)
0.33.0 - 2020-03-05
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.33.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.32.0...v0.33.0
- Instrumentation for Presto (#775, #920, #961) (@ahammel, @ericmustin)
- Sidekiq job argument tagging (#933) (@mantrala)
- Support for multiple Redis services (#861, #937, #940) (@mberlanda)
- Support for Sidekiq w/ Delayed extensions (#798, #942) (@joeyAghion)
- Setter/reset behavior for configuration options (#957)
- Priority sampling rate tag (#891)
- Enforced minimum version requirements for instrumentation (#944)
- RubyGems minimum version requirement 2.0.0 (#954) (@Joas1988)
- Relaxed Rack minimum version to 1.1.0 (#952)
- AWS instrumentation patching when AWS is partially loaded (#938, #945) (@letiesperon, @illdelph)
- NoMethodError for RuleSampler with priority sampling (#949, #950) (@BabyGroot)
- Runtime metrics accumulating service names when disabled (#956)
- Sidekiq instrumentation incompatibility with Rails 6.0.2 (#943, #947) (@pj0tr)
- Documentation tweaks (#948, #955) (@mstruve, @link04)
- Various test suite issues (#930, #932, #951, #960)
0.32.0 - 2020-01-22
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.32.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.31.1...v0.32.0
- Improved annotation of
net/http
spans during exception (#888, #907) (@djmb, @ericmustin) - RuleSampler is now the default sampler; no behavior changes by default (#917)
0.31.1 - 2020-01-15
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.31.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.31.0...v0.31.1
- Implement SyncWriter#stop method (#914, #915) (@Yurokle)
- Fix references to Datadog::Tracer.log (#912)
- Ensure http.status_code tag is always a string (#927)
0.31.0 - 2020-01-07
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.31.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.30.1...v0.31.0
- Ruby 2.7 support (#805, #896)
- ActionCable integration (#132, #824) (@renchap, @ericmustin)
- Faraday 1.0 support (#906)
- Set resource for Rails template spans (#855, #881) (@djmb)
- at_exit hook for graceful Tracer shutdown (#884)
- Environment variables to configure RuleSampler defaults (#892)
- Updated partial trace flushing to conform with new back-end requirements (#845)
- Store numeric tags as metrics (#886)
- Moved logging from Datadog::Tracer to Datadog::Logger (#880)
- Changed default RuleSampler rate limit from unlimited to 100/s (#898)
0.30.1 - 2019-12-30
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.30.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.30.0...v0.30.1
- NoMethodError when configuring tracer with SyncWriter (#899, #900) (@Yurokle)
- Spans associated with runtime metrics when disabled (#885)
0.30.0 - 2019-12-04
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.30.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.29.1...v0.30.0
- Additional tracer health metrics (#867)
- Integration patching instrumentation (#871)
- Rule-based trace sampling (#854)
0.29.1 - 2019-11-26
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.29.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.29.0...v0.29.1
- Priority sampling not activating by default (#868)
0.29.0 - 2019-11-20
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.29.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.28.0...v0.29.0
- Default trace buffer size from 100 to 1000 (#865)
- Rack request start headers to accept more values (#832) (@JamesHarker)
- Faraday to apply default instrumentation out-of-the-box (#786, #843) (@mdross95)
- Synthetics trace context being ignored (#856)
- Tracer buffer constants (#851)
0.28.0 - 2019-10-01
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.28.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.27.0...v0.28.0
- Support for Rails 6.0 (#814)
- Multiplexing on hostname/port for Dalli (#823)
- Support for Redis array arguments (#796, #817) (@brafales)
- Encapsulate span resource name in Faraday integration (#811) (@giancarlocosta)
0.27.0 - 2019-09-04
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.27.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.26.0...v0.27.0
Support for Ruby < 2.0 is removed. Plan for timeline is as follows:
- 0.25.0: Support for Ruby < 2.0 is deprecated; retains full feature support.
- 0.26.0: Last version to support Ruby < 2.0; any new features will not support 1.9.
- 0.27.0: Support for Ruby < 2.0 is removed.
Version 0.26.x will receive only critical bugfixes for 1 year following the release of 0.26.0 (August 6th, 2020.)
- Support for Ruby 2.5 & 2.6 (#800, #802)
- Ethon integration (#527, #778) (@al-kudryavtsev)
- Support for Ruby 1.9 (#791)
0.26.0 - 2019-08-06
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.26.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.25.1...v0.26.0
Support for Ruby < 2.0 is deprecated. Plan for timeline is as follows:
- 0.25.0: Support for Ruby < 2.0 is deprecated; retains full feature support.
- 0.26.0: Last version to support Ruby < 2.0; any new features will not support 1.9.
- 0.27.0: Support for Ruby < 2.0 is removed.
Version 0.26.x will receive only critical bugfixes for 1 year following the release of 0.26.0 (August 6th, 2020.)
- Container ID tagging for containerized environments (#784)
- Datadog::Metrics constants (#789)
- Datadog::HTTPTransport and related components (#782)
0.25.1 - 2019-07-16
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.25.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.25.0...v0.25.1
- Redis integration not quantizing AUTH command (#776)
0.25.0 - 2019-06-27
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.25.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.24.0...v0.25.0
Support for Ruby < 2.0 is deprecated. Plan for timeline is as follows:
- 0.25.0: Support for Ruby < 2.0 is deprecated; retains full feature support.
- 0.26.0: Last version to support Ruby < 2.0; any new features will not support 1.9.
- 0.27.0: Support for Ruby < 2.0 is removed.
Version 0.26.x will receive only critical bugfixes for 1 year following the release of 0.26.0.
- Unix socket support for transport layer (#770)
- Renamed 'ForcedTracing' to 'ManualTracing' (#765)
- HTTP headers for distributed tracing sometimes appearing in duplicate (#768)
- Transport layer (#628)
- Ruby < 2.0 support (#771)
- Use of
Datadog::HTTPTransport
(#628) - Use of
Datadog::Ext::ForcedTracing
(#765)
0.24.0 - 2019-05-21
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.24.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.23.3...v0.24.0
0.23.3 - 2019-05-16
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.23.3
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.23.2...v0.23.3
- Integrations initializing tracer at load time (#756)
0.23.2 - 2019-05-10
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.23.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.23.1...v0.23.2
- Span types for HTTP, web, and some datastore integrations (#751)
- AWS integration not patching service-level gems (#707, #752) (@alksl, @tonypinder)
- Rails 6 warning for
parent_name
(#750) (@sinsoku)
0.23.1 - 2019-05-02
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.23.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.23.0...v0.23.1
- NoMethodError runtime_metrics for SyncWriter (#748)
0.23.0 - 2019-04-30
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.23.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.22.0...v0.23.0
- Obsolete service telemetry (#738)
0.22.0 - 2019-04-15
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.22.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.21.2...v0.22.0
In this release we are adding initial support for the beta Runtime metrics collection feature.
- Add warning log if an integration is incompatible (#722) (@ericmustin)
- Initial beta support for Runtime metrics collection (#677)
0.21.2 - 2019-04-10
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.21.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.21.1...v0.21.2
0.21.1 - 2019-03-26
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.21.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.21.0...v0.21.1
- Support
TAG_ENABLED
for custom instrumentation with analytics. (#728)
0.21.0 - 2019-03-20
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.21.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.20.0...v0.21.0
- Distributed traces with IDs in 2^64 range being dropped (#719)
- Custom logger level forced to warning (#681, #721) (@blaines, @ericmustin)
- Global configuration for tracing into configuration API (#714)
0.20.0 - 2019-03-07
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.20.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.19.1...v0.20.0
This release will log deprecation warnings for any usage of Datadog::Pin
.
These changes are backwards compatible, but all integration configuration should be moved away from Pin
and to the configuration API instead.
- Propagate synthetics origin header (#699)
- Enable distributed tracing by default (#701)
- Fix Rack http_server.queue spans missing from distributed traces (#709)
- Refactor MongoDB to use instrumentation module (#704)
- Refactor HTTP to use instrumentation module (#703)
- Deprecate GRPC global pin in favor of configuration API (#702)
- Deprecate Grape pin in favor of configuration API (#700)
- Deprecate Faraday pin in favor of configuration API (#696)
- Deprecate Dalli pin in favor of configuration API (#693)
0.19.1 - 2019-02-07
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.19.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.19.0...v0.19.1
- Priority sampling dropping spans (#686)
0.19.0 - 2019-01-22
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.19.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.18.3...v0.19.0
- Tracer#active_correlation for adding correlation IDs to logs. (#660, #664, #673)
- Opt-in support for
event_sample_rate
tag for some integrations. (#665, #666)
- Priority sampling enabled by default. (#654)
0.18.3 - 2019-01-17
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.18.3
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.18.2...v0.18.3
- Mongo
NoMethodError
when no span available during#failed
. (#674, #675) (@Azure7111) - Rack deprecation warnings firing with some 3rd party libraries present. (#672)
- Shoryuken resource name when used with ActiveJob. (#671) (@aurelian)
0.18.2 - 2019-01-03
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.18.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.18.1...v0.18.2
- Unfinished Mongo spans when SASL configured (#658) (@zachmccormick)
- Possible performance issue with unexpanded Rails cache keys (#630, #635) (@gingerlime)
0.18.1 - 2018-12-20
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.18.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.18.0...v0.18.1
- ActiveRecord
SystemStackError
with some 3rd party libraries (#661, #662) (@EpiFouloux, @tjgrathwell, @guizmaii)
0.18.0 - 2018-12-18
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.18.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.17.3...v0.18.0
- Shoryuken integration (#538, #626, #655) (@steveh, @JustSnow)
- Sidekiq client integration (#602, #650) (@dirk)
- Datadog::Shim for adding instrumentation (#648)
- Use
DD_AGENT_HOST
andDD_TRACE_AGENT_PORT
env vars if available (#631) - Inject
:connection
intosql.active_record
event (#640, #649, #656) (@guizmaii) - Return default configuration instead of
nil
on miss (#651)
0.17.3 - 2018-11-29
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.17.3
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.17.2...v0.17.3
- Bad resource names for Grape::API objects in Grape 1.2.0 (#639)
- RestClient raising NoMethodError when response is
nil
(#636, #642) (@frsantos) - Rack middleware inserted twice in some Rails applications (#641)
0.17.2 - 2018-11-23
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.17.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.17.1...v0.17.2
- Resque integration shutting down tracer when forking is disabled (#637)
0.17.1 - 2018-11-07
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.17.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.17.0...v0.17.1
- RestClient incorrect app type (#583) (@gaborszakacs)
- DelayedJob incorrect job name when used with ActiveJob (#605) (@agirlnamedsophia)
0.17.0 - 2018-10-30
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.17.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.16.1...v0.17.0
- Use Rack Env to update resource in Rails (#580) (@dasch)
- Expand support for Sidekiq to 3.5.4+ (#593)
- Expand support for mysql2 to 0.3.21+ (#578)
0.16.1 - 2018-10-17
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.16.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.16.0...v0.16.1
0.16.0 - 2018-09-18
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.16.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.15.0...v0.16.0
0.15.0 - 2018-09-12
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.15.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.14.2...v0.15.0
- Grape uninitialized constant TraceMiddleware (#525, #533) (@dim)
- Signed integer trace and span IDs being discarded in distributed traces (#530) (@alloy)
0.14.2 - 2018-08-23
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.14.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.14.1...v0.14.2
- Sampling priority from request headers not being used (#521)
0.14.1 - 2018-08-21
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.14.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.14.0...v0.14.1
- Reduce verbosity of connection errors in log (#515)
0.14.0 - 2018-08-14
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.14.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.13.2...v0.14.0
- RestClient integration (#422, #460)
- DelayedJob integration (#393 #444)
- Version information to integrations (#483)
- Tracer#active_root_span helper (#503)
- Resque to flush traces when Job finishes instead of using SyncWriter (#474)
- ActiveRecord to allow configuring multiple databases (#451)
- Integrations configuration settings (#450, #452, #451)
- Context propagation for distributed traces when context is full (#502)
- Rake shutdown tracer after execution (#487) (@kissrobber)
- Deprecation warnings fired using Unicorn (#508)
0.14.0.rc1 - 2018-08-08
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.14.0.rc1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.14.0.beta2...v0.14.0.rc1
- Context propagation for distributed traces when context is full (#502)
0.14.0.beta2 - 2018-07-25
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.14.0.beta2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.14.0.beta1...v0.14.0.beta2
- Rake shutdown tracer after execution (#487) @kissrobber
0.14.0.beta1 - 2018-07-24
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.14.0.beta1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.13.1...v0.14.0.beta1
- Resque to flush traces when Job finishes instead of using SyncWriter (#474)
- ActiveRecord to allow configuring multiple databases (#451)
- Integrations configuration settings (#450, #452, #451)
0.13.2 - 2018-08-07
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.13.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.13.1...v0.13.2
- Context propagation for distributed traces when context is full (#502)
0.13.1 - 2018-07-17
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.13.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.13.0...v0.13.1
- Configuration class variables don't lazy load (#477)
- Default tracer host
localhost
-->127.0.0.1
(#466, #480) (@NobodysNightmare)
- Workers not shutting down quickly in some short running processes (#475)
- Missing documentation for mysql2 and Rails (#476, #488)
- Missing variable in rescue block (#481) (@kitop)
- Unclosed spans in ActiveSupport::Notifications with multithreading (#431, #478) (@senny)
0.13.0 - 2018-06-20
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.13.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.12.1...v0.13.0
- Sequel integration (supporting Ruby 2.0+) (#171, #367) (@randy-girard, @twe4ked, @palin)
- gRPC integration (supporting Ruby 2.2+) (#379, #403) (@Jared-Prime)
- ActiveModelSerializers integration (#340) (@sullimander)
- Excon integration (#211, #426) (@walterking, @jeffjo)
- Rake integration (supporting Ruby 2.0+, Rake 12.0+) (#409)
- Request queuing tracing to Rack (experimental) (#272)
- ActiveSupport::Notifications::Event helper for event tracing (#400)
- Request and response header tags to Rack (#389)
- Request and response header tags to Sinatra (#427, #375)
- MySQL2 integration (#453) (@jamiehodge)
- Sidekiq job delay tag (#443, #418) (@gottfrois)
- Hash quantization into core library (#410)
- MongoDB integration to use Hash quantization library (#463)
- Hash quantization truncates arrays with nested objects (#463)
0.13.0.beta1 - 2018-05-09
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.13.0.beta1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.12.0...v0.13.0.beta1
- Sequel integration (supporting Ruby 2.0+) (#171, #367) (@randy-girard, @twe4ked, @palin)
- gRPC integration (supporting Ruby 2.2+) (#379, #403) (@Jared-Prime)
- ActiveModelSerializers integration (#340) (@sullimander)
- Excon integration (#211) (@walterking)
- Rake integration (supporting Ruby 2.0+, Rake 12.0+) (#409)
- Request queuing tracing to Rack (experimental) (#272)
- ActiveSupport::Notifications::Event helper for event tracing (#400)
- Request and response header tags to Rack (#389)
- Hash quantization into core library (#410)
0.12.1 - 2018-06-12
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.12.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.12.0...v0.12.1
- Cache configuration
Proxy
objects (#446) freeze
more constant strings, to improve memory usage (#446)Utils#truncate
to use slightly less memory (#446)
- Net/HTTP integration not permitting
service_name
to be overridden. (#407, #430) (@undergroundwebdesigns) - Block not being passed through Elasticsearch client initialization. (#421) (@shayonj)
- Devise raising
NoMethodError
when bad login attempts are made. (#419, #420) (@frsantos) - AWS spans using wrong resource name (#374, #377) (@jfrancoist)
- ActionView
NoMethodError
on very long traces. (#445, #447) (@jvalanen)
0.12.0 - 2018-05-08
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.12.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.11.4...v0.12.0
- GraphQL integration (supporting graphql 1.7.9+) (#295)
- ActiveRecord object instantiation tracing (#311, #334)
- Subscriber module for ActiveSupport::Notifications tracing (#324, #380, #390, #395) (@dasch)
- HTTP quantization module (#384)
- Partial flushing option to tracer (#247, #397)
- Rack applies URL quantization by default (#371)
- Elasticsearch applies body quantization by default (#362)
- Context for a single trace now has hard limit of 100,000 spans (#247)
- Tags with
rails.db.x
toactive_record.db.x
instead (#396)
- Loading the ddtrace library after Rails has fully initialized can result in load errors. (#357)
- Some scenarios where
middleware_names
could result in bad resource names (#354) - ActionController instrumentation conflicting with some gems that monkey patch Rails (#391)
- Use of
:datadog_rack_request_span
variable in favor of'datadog.rack_request_span'
in Rack. (#365, #392)
- Racecar to use ActiveSupport::Notifications Subscriber module (#381)
- Rails to use ActiveRecord integration instead of its own implementation (#396)
- ActiveRecord to use ActiveSupport::Notifications Subscriber module (#396)
0.12.0.rc1 - 2018-04-11
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.12.0.rc1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.11.4...v0.12.0.rc1
- GraphQL integration (supporting graphql 1.7.9+) (#295)
- ActiveRecord object instantiation tracing (#311, #334)
- Subscriber module for ActiveSupport::Notifications tracing (#324, #380, #390, #395) (@dasch)
- HTTP quantization module (#384)
- Partial flushing option to tracer (#247, #397)
- Rack applies URL quantization by default (#371)
- Elasticsearch applies body quantization by default (#362)
- Context for a single trace now has hard limit of 100,000 spans (#247)
- Tags with
rails.db.x
toactive_record.db.x
instead (#396)
- Loading the ddtrace library after Rails has fully initialized can result in load errors. (#357)
- Some scenarios where
middleware_names
could result in bad resource names (#354) - ActionController instrumentation conflicting with some gems that monkey patch Rails (#391)
- Use of
:datadog_rack_request_span
variable in favor of'datadog.rack_request_span'
in Rack. (#365, #392)
- Racecar to use ActiveSupport::Notifications Subscriber module (#381)
- Rails to use ActiveRecord integration instead of its own implementation (#396)
- ActiveRecord to use ActiveSupport::Notifications Subscriber module (#396)
0.12.0.beta2 - 2018-02-28
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.12.0.beta2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.12.0.beta1...v0.12.0.beta2
- Loading the ddtrace library after Rails has fully initialized can result in load errors. (#357)
0.12.0.beta1 - 2018-02-09
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.12.0.beta1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.11.2...v0.12.0.beta1
- GraphQL integration (supporting graphql 1.7.9+) (#295)
- ActiveRecord object instantiation tracing (#311, #334)
http.request_id
tag to Rack spans (#335)
0.11.4 - 2018-03-29
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.11.4
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.11.3...v0.11.4
- Transport body parsing when downgrading (#369)
- Transport incorrectly attempting to apply sampling to service metadata (#370)
sql.active_record
traces showing incorrect adapter settings when non-default adapter used (#383)
0.11.3 - 2018-03-06
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.11.3
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.11.2...v0.11.3
- CHANGELOG.md (#350, #363) (@awendt)
http.request_id
tag to Rack spans (#335)- Tracer configuration to README.md (#332) (@noma4i)
- Extra indentation in README.md (#349) (@ck3g)
http.url
when Rails raises exceptions (#351, #353)- Rails from being patched twice (#352)
- 4XX responses from middleware being marked as errors (#345)
- Rails exception middleware sometimes not being inserted at correct position (#345)
- Processing pipeline documentation typo (#355) (@MMartyn)
- Loading the ddtrace library after Rails has fully initialized can result in load errors. (#357)
- Use of block syntax with Rails
render
not working (#359, #360) (@dorner)
0.11.2 - 2018-02-02
Critical update: Datadog::Monkey
removed in version 0.11.1. Adds Datadog::Monkey
back as no-op, deprecated module.
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.11.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.11.1...v0.11.2
Datadog::Monkey
to be no-op and print deprecation warnings.
0.11.1 - 2018-01-29
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.11.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.11.0...v0.11.1
http.base_url
tag for Rack applications (#301, #327)distributed_tracing
option to Sinatra (#325)exception_controller
option to Rails (#320)
- Decoupled Sinatra and ActiveRecord integrations (#328, #330) (@hawknewton)
- Racecar uses preferred ActiveSupport::Notifications strategy (#323)
Datadog::Monkey
in favor of newer configuration API (#322)
- Custom resource names from Rails controllers being overridden (#321)
- Custom Rails exception controllers reporting as the resource (#320)
0.11.0 - 2018-01-17
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.11.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.10.0...v0.11.0
0.11.0.beta2 - 2017-12-27
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.11.0.beta2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.11.0.beta1...v0.11.0.beta2
0.11.0.beta1 - 2017-12-04
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.11.0.beta1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.10.0...v0.11.0.beta1
0.10.0 - 2017-11-30
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.10.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.9.2...v0.10.0
0.9.2 - 2017-11-03
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.9.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.9.1...v0.9.2
0.9.1 - 2017-11-02
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.9.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.9.0...v0.9.1
0.9.0 - 2017-10-06
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.9.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.8.2...v0.9.0
0.8.2 - 2017-09-08
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.8.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.8.1...v0.8.2
0.8.1 - 2017-08-10
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.8.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.8.0...v0.8.1
0.8.0 - 2017-07-24
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.8.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.7.2...v0.8.0
0.7.2 - 2017-05-24
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.7.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.7.1...v0.7.2
0.7.1 - 2017-05-10
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.7.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.7.0...v0.7.1
0.7.0 - 2017-04-24
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.7.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.6.2...v0.7.0
0.6.2 - 2017-04-07
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.6.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.6.1...v0.6.2
0.6.1 - 2017-04-05
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.6.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.6.0...v0.6.1
0.6.0 - 2017-03-28
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.6.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.5.0...v0.6.0
0.5.0 - 2017-03-08
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.5.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.4.3...v0.5.0
0.4.3 - 2017-02-17
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.4.3
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.4.2...v0.4.3
0.4.2 - 2017-02-14
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.4.2
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.4.1...v0.4.2
0.4.1 - 2017-02-14
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.4.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.4.0...v0.4.1
0.4.0 - 2017-01-24
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.4.0
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.1...v0.4.0
0.3.1 - 2017-01-23
Release notes: https://github.com/DataDog/dd-trace-rb/releases/tag/v0.3.1
Git diff: https://github.com/DataDog/dd-trace-rb/compare/v0.3.0...v0.3.1