Skip to content

Releases: DataDog/dd-trace-cpp

v2.0.0

14 Oct 15:49
v2.0.0
6e5c32e

Choose a tag to compare

What's Changed

  • fix: Apply "version" tag only when the span service name matches the default service name by @zacharycmontoya in #157
  • feat!: Change default value of DD_TRACE_RATE_LIMIT to 100 by @zacharycmontoya in #159
  • feat!: Set a default service name (DD_SERVICE) when no service is configured by @zacharycmontoya in #158
  • refactor!: expose telemetry module by @dmehala in #166
  • fix: telemetry support for sub-seconds intervals by @dmehala in #168
  • Properly support setting DD_TRACE_TRANSPORT to "none" by @kristjanvalur in #172
  • fix: Remote config service/env validation by @zacharycmontoya in #177
  • perf: parse w3c traceparent using a custom parser by @dmehala in #178
  • fix(telemetry): Handle empty configuration payload properly by @dmehala in #186
  • feat: store tracer configuration in an in-memory file by @dmehala in #184
  • feat: add telemetry logs by @dmehala in #185
  • feat!: default to null logger by @dmehala in #187
  • feat: add baggage API by @dmehala in #179
  • fix(sampling): update condition by @dmehala in #198
  • deps(nlohmann-json): upgrade to 3.12.0 by @dmehala in #210
  • perf: improve mutex contention by @dmehala in #208
  • feat(telemetry): track tracer and telemetry usage by @dmehala in #209
  • feat: support origin detection by @dmehala in #214
  • feat: support additional cgroup formats for container-id parsing by @zacharycmontoya in #222
  • feat: support disablement of APM Tracing (the product) by @dmehala in #224
  • fix(system-tests): set end time when a span is closed by @dmehala in #228
  • deps(nlohmann-json): FetchContent rely on find_package by @dmehala in #231
  • fix: edge cases parsing of DD_TAGS by @dmehala in #233
  • fix(rc): improve trace sampling rules parsing by @dmehala in #232
  • fix(rc): rework remote configuration handling by @dmehala in #234
  • fix(rc): handle null values in RC APM Tracing payloads by @dmehala in #236
  • feat(telemetry): report malformed baggage header by @rachelyangdog in #240
  • Replace Abseil extension with bazel_dep and eliminate source patching by @mmorel-35 in #243
  • chore(cmake): overall improvements by @dmehala in #242

New Contributors

Full Changelog: v1.0.0...v2.0.0

v1.0.0

17 Sep 16:49
85370e7

Choose a tag to compare

This version introduces breaking changes and improvements. There is no special significance behind the version number, the shift to v1.0.0 reflects breaking changes and new feature updates.

Breaking Changes

  • API Update: Major updates to the tracer API. This may require modifications to existing integrations. #131 by @dmehala
  • Separation of public and private headers: Public and private headers have been reorganized, leading to a cleaner structure. Public headers are now located in include/ directory. #144 by @dmehala

What's Changed

  • Bug Fix: Trimmed inspected headers to improve performance and accuracy. #137 by @dmehala
  • New Feature: Ensured that tracecontext headers take precedence over Datadog headers (AIT-10281). #142 by @zacharycmontoya
  • Refactor: Refined Remote Configuration support to enhance stability. #130 by @dmehala
  • Dependency Update: Bumped libcurl to version 8.8.0. #135 by @dmehala

New Contributors

We are thrilled to welcome the following new contributors to the project:

Full Changelog: Compare v0.2.2...v1.0.0

v0.2.2

21 Jun 10:50
26e666f

Choose a tag to compare

This update includes several important fixes

Fixes

  • fix: better handling of invalid headers by @dmehala in #132
  • fix: regression in sampling delegation handling by @dmehala in #133

Full Changelog: v0.2.1...v0.2.2

v0.2.1

28 May 19:15
0d89feb

Choose a tag to compare

This update bring significant improvements to the functionality, compatibility, and flexibility of dd-trace-cpp. We encourage all users to update to the latest version to take advantage of these enhancements and fixes. Below is a comprehensive list of meaningful changes included in this release:

New Features

  • Windows Support: We are pleased to announce that dd-trace-cpp now supports Windows, broadening the range of environments in which it can be used. #119 by @dmehala
  • Datadog/W3C interoperability: This enhancement prepare ground for better interoperability between Datadog and W3C Tracecontext propagation style. #115 by @dmehala
  • Remote Config Sampling Rules: This feature adds support for remote configuration of sampling rules, providing more control over how traces are sampled. #116 by @dmehala
  • Expose Numeric Tags: This enhancement allows users to set numeric tags, providing greater flexibility and insight into your trace data. #111 by @Anilm3
  • Report Host Information: Host informations are now included in telemetry reports, enhancing the granularity and utility of collected data. #118 by @dmehala

Bug Fixes

  • Glob Matching: Fixed an issue with case sensitivity in glob matching, ensuring consistent behavior across tracers. #112 by @dmehala
  • Remote Configuration polling interval: Resolved a bug allowing DD_REMOTE_CONFIG_POLL_INTERVAL_SECONDS to accept floating-point input, allowing sub-second polling interval of remote configuration. #123 by @dmehala

Full Changelog: v0.2.0...v0.2.1

Thank you to all contributors who made this release possible!

New Contributors

v0.2.0

02 Apr 13:15
b553930

Choose a tag to compare

What's Changed

  • Implemented support for APM Remote Configuration by @dmehala (#74).
  • Enhanced telemetry reporting with integration and integration_version by @dmehala (#82).
  • Introduced sampling delegation by @dmehala @dgoffredo (#59).
  • Added support for DD_TAGS via dynamic configuration by @dmehala (#94).
  • Added support for DD_TRACE_ENABLED via dynamic configuration through by @dmehala (#96).
  • Applied SET(CURL_ZLIB OFF) in the build process by @dgoffredo (#99).
  • Integrated active configuration feature by @dmehala (#97).
  • Bazel-related chore: Added MODULE.bazel files for bzlmod by @mmorel-35 (#102).
  • Fixed splitting of DD_TAGS by space or comma by @dmehala (#105).

Breaking Changes

  • Renamed config.defaults.* to config.* e.g config.defaults.service -> config.service

Full Changelog: v0.1.12...v0.2.0

v0.1.12

17 Nov 22:59
5c53143

Choose a tag to compare

This release contains the following changes:

  • The default trace propagation style is now "datadog, tracecontext" instead of "datadog" (#72).
  • When "tracecontext" is among the configured propagation styles, the tracestate header will not be ignored in some cases where previously it would have been ignored (#72).
  • The tracer now generates 128-bit trace IDs by default (#71).
  • Requests made to the Datadog Agent now have a configurable timeout (#66).
  • Internal telemetry sends less data on tracer startup (#68).

v0.1.11

26 Oct 20:18
2ee2a7f

Choose a tag to compare

This release contains the following changes:

  • The default trace context propagation style is now "datadog" instead of "tracecontext, datadog".
  • Telemetry metrics are now published to the Datadog Agent.
  • The library now builds on ARM64 platforms.
  • The library now builds on Darwin.

v0.1.10

14 Jun 19:52
0536a16

Choose a tag to compare

This release contains the following changes:

  • CURL handles can no longer leak on shutdown (#36).
  • A spurious warning produced by GCC 12 no longer halts the build (#39).

v0.1.9

12 May 18:52
ff7bd5a

Choose a tag to compare

This release contains changes that don't affect the behavior of the library:

  • CMake build changes to easier integrate with nginx-datadog, as well as some code refactoring
  • new microbenchmarks under benchmark/
  • a new usage example under examples/http-server/

v0.1.8

31 Mar 12:13
4e490a7

Choose a tag to compare

This release fixes the hard-coded release version.