Skip to content

Releases: DataDog/dd-trace-dotnet

3.45.0

01 Jun 13:39
35eb88b

Choose a tag to compare

Summary

  • [Tracing] Add experimental http/protobuf support for OTLP traces export (#8645)
  • [AppSec] APPSEC-65483 Collect Datadog security-testing headers on entry spans (#8682)
  • [Code Origin] DEBUG-4174 - Make Code Origin on by default (#8272)

Changes

Tracer

  • [Tracing] Add experimental http/protobuf support for OTLP traces export (#8645)
  • Handle invalid timestamps in Kafka consume integration (#8653)
  • [Tracer] Tolerate clock skew when reparenting Activities to active Span (#8674)
  • [Opentelemetry] Prevent OTLP array attribute stack overflow on cyclic/deep arrays (#8707)

CI Visibility

  • [CI Visibility] propagate tests skipping enabled tag (#8582)
  • Fix race condition in IpcTests (#8657)
  • [CI Visibility] Fix coverage resolver assembly file locks (#8666)

ASM

  • Fix ASM accessing HttpRequest.Headers on .NET Framework without guarding (#8611)
  • Fix WAF Encoder child miscount bug (#8617)
  • Refactor remote config for ASM to fix missing config (#8630)
  • Fix off-by-one error in ASM Encoder (#8637)
  • [AppSec] APPSEC-65483 Collect Datadog security-testing headers on entry spans (#8682)

Continuous Profiler

  • [Profiler] Fix flacky tests possibly due to network errors (#8574)
  • Load native loader in profiler via absolute path on Windows (#8646)
  • [Profiler] Add Flaky attribute (#8648)
  • [Profiler] Stop unwinding when unsafe (#8671)
  • [Profiler] Add more context to timer_create call failure (#8686)

Debugger

  • [SymDB] Increase SymDB upload batch default to 1MB (#8193)
  • [Code Origin] DEBUG-4174 - Make Code Origin on by default (#8272)
  • [Debugger] Add global rate limiter (#8480)
  • [Dynamic Instrumentation] DEBUG-5101 line probe two segment fallback (#8543)
  • [Debugger] Report retryable line probe resolution errors (#8603)
  • fix(debugger): apply redaction to dictionary iterator key/value (#8641)
  • [Debugger] Preserve EMITTING diagnostics across probe change (#8654)
  • [SymDB] Stream SymDB payload (#8691)

Serverless

  • [Serverless] Bump Datadog.Serverless.Compat to 1.6.0 (#8660)
  • Prevent invalid JSON in AWS Lambda payloads (#8662)
  • [Serverless] Bump Datadog.Serverless.Compat to 1.7.0 (#8692)

Build / Test

  • Refactor DiscoveryService polling loop to allow less-flaky testing (#8601)
  • Introduce Datadog.Trace.Build.g.sln to reduce size of artifacts copied between stages (#8610)
  • Tag gitlab include refs as migration touchpoints (#8624)
  • Fix kafka flakiness (#8629)
  • Use ArtifactsOutput in more places in the tracer build (#8636)
  • Serialize RuntimeIdTests and HttpHeaderHelperTests to remove telemetry header flake (#8638)
  • [Test Package Versions Bump] Updating package versions (#8649)
  • [Smoke Test Docker Image Bump] Updating docker image tags (#8650)
  • Add some more owners to the nullability file (#8656)
  • [Code Origin] Fix smoke test path mismatches on macOS and Windows IIS (#8659)
  • [Test Package Versions Bump] Updating package versions (#8661)
  • Allocate 2 CPUs per microbenchmark item (#8663)
  • Exclude OpenTelemetry.Api from baseline files in PR comment (#8664)
  • [Test Package Versions Bump] Updating package versions (#8683)
  • [Build] Retry git clone in exploration tests setup (#8685)
  • Increase integration_tests_linux Test job timeout to 90 minutes (#8699)
  • [Test Package Versions Bump] Updating package versions (#8700)
  • use https to download authanywhere binary (#8704)

Miscellaneous

  • Ensure we wrap the process path in quotes before running it (#8613)
  • chore(ci) update one-pipeline (#8687)
  • Tweak BatchingSink to remove flake (#8696)
  • [DBM] Add dynamic_service propagation mode (#8701)

Data Streams Monitoring

  • [DSM] Guard against future timestamps when extracting pathway context (#8672)

Changes since 3.44.0

3.44.0

18 May 10:36
ee13f56

Choose a tag to compare

Summary

  • [Continuous Profiler] Add experimental support for Linux ARM64
  • [AAP] Fix body analysis on downstream requests causing stream-closed issues
  • [Serverless] Add support for running multiple Azure Functions in the same Windows hosting plan
  • [Data Streams Monitoring] Add produce-side checkpoints for Azure Service Bus
  • [FFE] Update minimum required version of OpenFeature for Datadog.FeatureFlags.OpenFeature
  • [Dynamic Instrumentation] Many fixes and performance improvements

Changes

Tracer

  • Fix metrics for baggage extract (#8561)
  • Skip sending errors to instrumentation telemetry for performance counter initialization (#8598)
  • Add handling of OutOfMemoryException to runtime metrics polyfill (#8609)
  • Switch Activity handling to use WeakReference<T> (#8549)
  • Add a fixed cutoff for the activity handler reconcilliation loop for OTel (#8576)

CI Visibility

  • Add Jenkins custom parent ID bypass (#8608)

ASM

  • Fix IAST strings deferred enumerable (#8556)
  • [AAP] Trace tagging rules (#8581)

Continuous Profiler

  • [Profiler] Add support for ARM64 (#8338)
  • [Profiler] Ensure valid json format for information json (#8578)
  • [Profiler] Add guard-rails when creating a profile (#8579)

Debugger

  • [SymDB] Defer SymDB startup work (#8548)
  • Reapply "[SymDB] DEBUG-5086 SymDB upload enable when DI is disabled" (#8565)
  • [Dynamic Instrumentation] Skip arg/local when byref-like check fails (#8566)
  • [Debugger] Harden SnapshotPruner fallback handling (#8567)
  • [Debugger] Treat Nullable as safe for snapshot ToString (#8568)
  • [Debugger] Handle open generic types in probe expressions (#8569)
  • [Debugger] Reuse singleton no-op symbol uploader (#8570)
  • [Debugger Tests] Surface sample exit diagnostics during /stop cleanup (#8571)
  • [Debugger] Fix flaky DI probe file test (#8575)
  • [Debugger] Fix ConcurrentAdaptiveCache.GetOrAdd race that returned stale value (#8584)
  • Remove allocation and delay in startup due to JSON parsing in Symbol uploader (#8589)
  • Debugger: add upload metadata fields to SymDB upload event message (#8590)
  • [Debugger] Reduce noisy Info logs to debug in native code (#8618)
  • [Debugger] Fix Timer leaks and missing rate updates in probe rate limiter (#8619)
  • [Debugger] DEBUG-4260 Add capture expression to log probe (#8621)
  • fix(debugger): redact nullable wrappers of configured types (#8642)
  • [Dynamic Instrumentation] Fix Equals/GetHashCode contract on Dynamic Instrumentation configuration models (#8615)
  • [Code Origin] Reduce endpoint detector allocations (#8588)
  • [Code Origin] Improve ASP.NET Core code origin endpoint detection (#8595)
  • [Code Origin] Optimize per-assembly PDB cache (#8631)
  • [Code Origin] Treat Microsoft.Azure.Functions.Worker.Extensions.Http.AspNetCore as 3rd party (#8628)
  • [Code Origin] Skip exit-span hook in Tracer.StartSpan (#8635)

Serverless

  • Add Multi-Azure Function Unique Named Pipe Configuration (#8164)
  • [Azure Functions] Update Datadog.Serverless.Compat version to 1.4.0 (#8563)
  • [Serverless] Bump Datadog.Serverless.Compat to 1.5.0 (#8602)

Miscellaneous

  • [Feature Flags] Add flag evaluation metrics via OpenFeature hook (#8367)
  • [Runtime Metrics] Support for OTLP Runtime Metrics (#8457)

Data Streams Monitoring

  • [DSM] Fix missing produce-side checkpoints for Azure Service Bus (#8433)

Build / Test

  • Improve agents.md (#8554)
  • Fix azure-functions skill YAML frontmatter parsing (#8583)
  • AGENTS.md cleanup, round 2 (#8596)
  • [SINT-5051] Update CI identities client version and Windows code signer to latest release (#8474)
  • Allow building the Gitlab docker image in Gitlab (#8507)
  • Ensure we always run all smoke tests on Docker tag bump PRs (#8514)
  • Reduce warnings in test-applications samples (#8519)
  • Add smoke tests for Ubuntu 26.04 (Resolute Racoon) (#8522)
  • Decrease warnings part 3 (#8546)
  • [SERVERLESS CI] use serverless-tools tags (#8551)
  • Bump the gh-actions-packages group across 1 directory with 2 updates (#8552)
  • [Test Package Versions Bump] Updating package versions (#8553)
  • Retry microbenchmarks on non-compliant CPUs (#8558)
  • Enable OpenTelemetry microbenchmarks (#8559)
  • Don't run benchmark trigger on tag pushes (#8560)
  • [Test Package Versions Bump] Updating package versions (#8564)
  • [Libdatadog] Bump libdatadog + add SKILL.md to do it (#8580)
  • [Test Package Versions Bump] Updating package versions (#8593)
  • [Smoke Test Docker Image Bump] Updating docker image tags (#8594)
  • [ASM Test] Add IIS CI coverage for WebApi null-action ASM test (#8597)
  • Decrease warnings part 4 (#8599)
  • chore(ci) update one-pipeline (#8600)
  • Exclude OpenTelemetry.Api from benchmark PR comments (#8606)
  • Use latest benchmark tooling image for macrobenchmark AMI build (#8625)
  • [SINT-5051] Upgrade CI Identities GitLab Job Client version to v0.6.3 (#8627)
  • [ASM Test] Mark WebApi null-action test as end-to-end (#8604)

Changes since 3.43.0

3.43.0

04 May 18:37
38092e0

Choose a tag to compare

Summary

  • Implement Client-Side Stats (CSS) 1.2.0 (#8420)
  • [Azure Functions] Fix span parenting in ASP.NET Core integration (#7628)
  • Performance improvements and bug fixes.

Changes

Tracer

  • Bump Fody from 6.8.1 to 6.9.3 (#7764)
  • Implement Client-Side Stats (CSS) 1.2.0 (#8420)
  • Extract ContainsSpanId to SpanCollection (#8435)
  • Fix processing pipeline for client-side-stats (#8436)
  • Improve peer-tag calculation fast-path performance (#8445)
  • Fix .NET Framework startup deadlock from configBuilder sync-over-async (#8498)
  • Fix race condition in Client Side Stats enablement (#8509)
  • Apply .cctor deadlock defense on .NET Core (follow-up to #8498) (#8517)
  • Apply baggage limits on extract (#8555)

Continuous Profiler

  • fix(profiler): five native profiler bug fixes (#8533)

Debugger

  • [Dynamic Instrumentation] DEBUG-4089 Support file-based debugger probes (#7833)
  • [SymDB] DEBUG-5086 SymDB upload enable when DI is disabled (#8510)
  • [Dynamic instrumentation] DEBUG-3374 support @key and @value in EL hash iteration (#8511)
  • [Dynamic Instrumentation] DEBUG-2387 Sample evaluation error snapshots (#8515)
  • [Dynamic instrumentation] DEBUG-3321 Fix malformed local var sig parsing in PDB reader (#8532)
  • [Dynamic Instrumentation] DEBUG-5104 support case-insensitive line probe source paths (#8542)
  • [SymDB] DEBUG-5382 Add injectable line ranges to method scopes (#8544)
  • Revert "[SymDB] DEBUG-5086 SymDB upload enable when DI is disabled" (#8550)

Serverless

  • [Azure Functions] Fix span parenting in ASP.NET Core integration (#7628)

Fixes

  • Fix broken parenting when Ocelot API Gateway is used (#8128)
  • Fix OTLP HTTP/protobuf export failures and improve OTLP integration test reliability (#8449)
  • Stop vendoring resx for vendored microsoft code (#8461)
  • Fix warnings native (#8534)
  • Do not send DD_GIT_COMMIT_SHA error to telemetry (#8537)
  • Normalize CosmosDB resource URI IDs to reduce resource cardinality (#8541)

Build / Test

  • Extract Datadog.AutoInstrumentation.Generator.Core shared library (#8312)
  • Update vendored System.Collections.Immutable (#8391)
  • Docker run retry (#8447)
  • Use the built-in System.Reflection.Metadata types for .NET Core (#8454)
  • Update vendored System.Reflection.Metadata (#8455)
  • Update vendored System.Memory (#8459)
  • Update vendored System.Runtime.CompilerServices.Unsafe (#8469)
  • Move vendored ReadOnlySpan<T>, Span<T> et. al. to System namespace (#8476)
  • Cleanup and fix the GeneratePackageVersions (#8478)
  • [Test Package Versions Bump] Updating package versions (#8481)
  • fix(microbenchmarks): restore CI Visibility reporting to Datadog (#8483)
  • Skip SubmitsOtlpLogs and SubmitsOtlpMetrics (#8488)
  • Add .NET service names to macrobenchmarks (#8490)
  • Remove unused references to System.ServiceModelHttp (#8496)
  • Update System.Text.Json to latest in source generators project (#8497)
  • [Test Package Versions Bump] Updating package versions (#8502)
  • Run the docker-compose version tagging update manually instead of using Dependabot (#8506)
  • Try fix flake in OTLP logs tests (#8508)
  • fix(ci): avoid branch-name command injection in image dispatch (#8513)
  • Bump softprops/action-gh-release from 2.6.1 to 2.6.2 in the gh-actions-packages group across 1 directory (#8516)
  • List the versions that changed in package-version-bump PRs (#8518)
  • [Test Package Versions Bump] Updating package versions (#8520)
  • [Smoke Test Docker Image Bump] Updating docker image tags (#8521)
  • Bump check-azure-pipeline benchmark job timeout from 1h to 2h (#8523)
  • Add Environment.Version to the banned API list (#8524)
  • chore(ci) update one-pipeline (#8527)
  • Update UpdateVendors tool to allow vendoring non-C# code (#8529)
  • Update vendored spdlog library to 1.17.0 (latest) (#8530)
  • unify the target to build integration tests across platforms (#8535)
  • [Test Package Versions Bump] Updating package versions (#8540)
  • Manually bump macrobenchmark SLOs and disable notifications (#8545)

Data Streams Monitoring

  • [DSM] Expose TrackTransaction as a public manual API (#8440)
  • DSM overhead optimizations (#8450)

Miscellaneous

  • Take advantage of the Span<T> namespace changes (#8477)
  • Update TagListGenerator to always useReadOnlySpan<byte> properties (#8486)
  • Convert Encoding.Utf8.GetBytes calls to static constants using UTF8 string literals (#8487)
  • Remove agent check in client-side-stats (#8503)
  • Remove dependabot for instrumentations (#8504)

Changes since 3.42.0

3.42.0

20 Apr 11:21
dc15c79

Choose a tag to compare

Summary

  • [CI Visibility] Add support for MSTest.Framework 4.2.1
  • [DSM] Add support for transaction tracking
  • [AAP] Add downstream request RASP analysis

Changes

CI Visibility

  • [SDTEST-2993] Switch to paginated endpoint for retrieving known tests (#8380)
  • fix(mstest): add 4.2.1 adapter signatures (#8475)

ASM

  • [AAP] API10 downstream request analysis (#8232)

Continuous Profiler

  • [Profiler] Bump to libunwind 1.8.3 (#8387)
  • [Profiler] Prevent profiler from interrupted thread while executing handler SIGSEGV handler (#8465)
  • [Profiler] Fix bug in ManagedCodeCache (#8467)
  • [Profiler] Fix UB in DebugInfoStore::Get(): re-acquire iterator after map insertion (#8468)

Debugger

  • [Dynamic Instrumentation] clarify unbound line probe diagnostics (#8415)
  • [Dynamic Instrumentation] Improve line probe source path resolution (#8422)

Fixes

  • fix user & host parsing in SQL connection string (#8431)
  • Set resource name after exception in OnEndRequest method (#8439)
  • Fix excessive allocation in vendored SharedArrayPool (#8442)
  • Fix ServiceStack not calling EndRequest method (#8466)

Data Streams Monitoring

  • [DSM] Initial transaction tracking implementation (#7949)

Build / Test

  • Update microbenchmark design to reduce flakiness (#8300)
  • Harden Linux Docker retries in CI (#8358)
  • [Test Package Versions Bump] Updating package versions (#8414)
  • Add managed-by:bp-infra tag and skip PR comments on master on benchmarking jobs (#8416)
  • Enable performance quality gates on microbenchmarks and macrobenchmarks (#8424)
  • Parametrize gitlab org (#8426)
  • Update base image used in download stages (#8437)
  • [Test Package Versions Bump] Updating package versions (#8441)
  • [Coding Agents] Add HTTP REST API fallbacks for AzDO build analysis (#8448)
  • Make microbenchmark post-processing steps non-fatal (#8452)
  • Fix benchmark reporting (#8453)
  • Move microbench AMI provision file into this repo, stop cloning benchmarking-platform (#8458)
  • add new set of benchmarks (#8464)

Miscellaneous

  • Add static char helpers like IsAsciiHexDigit (#8417)
  • Fix EH clause sort to handle try-in-handler nesting (#8428)
  • Add srv_src field to client stats payload (#8339)
  • Add IpAddressObfuscationUtil for use with client-side-stats (#8418)

Changes since 3.41.0

3.41.0

07 Apr 15:36
84efe2b

Choose a tag to compare

Summary

  • Switch Process tags on by default (#8296)
  • [Tracing] Add support for DiagnosticSource (and Quartz) in .NET Framework (#7687)
  • [Tracing] Add experimental support for exporting traces as OTLP (.NET 6+) (#8211)
  • [Tracing] Update mapping from Datadog to OTLP spans (#8385)
  • [DBM] Add container tags hash to queries (if enabled) (#8061)

Changes

Tracer

  • Fix CA1872 - Prefer Convert.ToHexString over BitConverter.ToString (#8333)
  • [Tracing] Add experimental support for exporting traces as OTLP (.NET 6+) (#8211)
  • [Tracing] Update mapping from Datadog to OTLP spans (#8385)
  • Revert YARP exclusion (#8407)

Serverless

  • [Serverless] Cache serverless platform detection results (#8231)
  • Add smoke tests for Datadog.AzureFunctions NuGet package (#8336)

Fixes

  • Fix the integration name for several IAST Sqlite bytecode instrumentations (#8361)
  • Set DD_TRACE_OTEL_ENABLED=true by default for all integration tests (#8370)
  • Fix multiple termination signals on .NET 10+ (#8374)
  • Move TracerSettings helper methods to TestHelpers project (#8375)
  • Add potential fix for duck typing derived types (#8410)

Miscellaneous

  • [Tracing] add support for DiagnosticSource (and Quartz) in .NET Framework (#7687)
  • Skip some errors from being sent to telemetry (#8003)
  • [DBM] Add container tags hash to queries (if enabled) (#8061)
  • bump libdatadog version to v30 (#8282)
  • Add _dd.p.ksr propagated tag for Knuth sampling rate (#8287)
  • switch process tags on by default (#8296)
  • Fix InvalidCastException in DefaultModelBindingContext (#8334)
  • Enable CA1851 - Avoid multiple enumeration of collections (#8341)
  • Use SpanCharSplitter for parsing source link URLs (#8349)
  • feat: Stable Session ID headers for telemetry (#8352)
  • Specify AGENTS.md to not edit generated files (#8359)
  • Fix exception in Kafka on .NET Framework (#8366)
  • Fix swapped SpanKinds and missing tags in IbmMqHelper (#8369)
  • Configure GeneratePackageVersions to support a "cooldown" on dependencies (#8371)
  • Add OTEL_RESOURCE_ATTRIBUTES to claude settings (#8378)
  • chore(ci) update one-pipeline (#8403)

Build / Test

  • Increase endpoint telemetry wait timeout (#8294)
  • Enable CA1859 - Use concrete types when possible (#8335)
  • chore(ci) update one-pipeline (#8351)
  • Fix dd_dotnet.ArtifactTests.CreatedumpTests.DisableTelemetry flakiness (#8354)
  • Fix dd-octo-sts trust policy for create-draft-release workflow (#8356)
  • chore: disable automated dependency updater config [incident-51602] (#8364)
  • Stabilize test-agent readiness in smoke tests (#8368)
  • chore: re-enable dependabot with 2-day cooldown (#8377)
  • Bump the gh-actions-packages group across 3 directories with 10 updates (#8381)
  • Add hardcoded limits for OCI and libinjection packages (#8382)
  • [Tests] Use [EnvironmentRestorer] to prevent env var leaks in tests (#8388)
  • Pin floating pre-release versions of SQLitePCLRaw.* dependencies in samples (#8390)
  • Delete the static analysis workflow (#8393)
  • Bump the gh-actions-packages group across 2 directories with 5 updates (#8404)
  • scrub process tags from debugger snapshots (#8406)
  • [CI Tools] Add prerequisite validation to AzureDevOps helper scripts (#8409)
  • maybe fix macos smoketests (#8413)

Changes since 3.40.0

3.40.0

23 Mar 17:08
6f4edac

Choose a tag to compare

Summary

  • [Runtime Metrics] Enables Runtime Metrics by Default for .NET 6+ (#8267)
  • [Tracing] Add interoperability between the Datadog Baggage API and the OpenTelemetry Baggage API (#7921)
  • Add support for Microsoft.Data.SqlClient 7.x.x (#8346)

Changes

Tracer

  • Refactor log directory resolution into smaller methods, add tests (#7255)
  • Adjust Log levels in OltpExporter (#8133)
  • [Metrics] Fixing sync-over-async patterns in DogStatsD Client Fork (#8265)
  • Add _dd.svc_src meta tag to track service name source (#8274)
  • Add process tags to service discovery (#8295)
  • Add "manual" service source (#8302)
  • ServiceNameSource for inferred proxy (#8309)

CI Visibility

  • [CI Visibility] honor EFD retry mode over ATR (#8288)

Continuous Profiler

  • [Profiler] Add unit tests for ManagedCodeCache (#8307)

Debugger

  • [Dynamic Instrumentation] DEBUG-5317 fix snapshot stackoverflow in collection (#8310)
  • [Dynamic Instrumentation] Add detailed diagnostics for line probe resolution (#8316)

Fixes

  • More remote config performance improvements (#8241)
  • WCF cleanup and trace context extraction (#8263)

Data Streams Monitoring

  • Support adding kafka_cluster_id for Confluent.Kafka (#7702)
  • [DSM] Include container tags hash in node hash calculation (#8163)

Miscellaneous

  • [Tracing] Add interoperability between the Datadog Baggage API and the OpenTelemetry Baggage API (#7921)
  • [Process Tags] Explicit whether the service name is the default one (#8106)
  • Add an IArrayPool<char> implementation for vendored Newtonsoft.JSON (#8228)
  • Use IArrayPool in more places for JSON (#8236)
  • Remote configuration tests and performance improvements (#8237)
  • Reduce payload size sent by agent in remote config (#8238)
  • [Agent Skill] Rename to analyze-azdo-build, add retry support, and more (#8247)
  • [Metrics] Send Diagnostics GC Pause Time as Counter instead of Timer (#8266)
  • [Runtime Metrics] Enables Runtime Metrics by Default for .NET 6+ (#8267)
  • Rename telemetry GetData methods to GetIncrementalData (#8269)
  • Remove unnecessary use of duck typing in HTTP integrations (#8275)
  • Exclude Otel for MongoDb 3.7 (#8279)
  • Detect whether an app has been trimmed (#8281)
  • [Agent Docs] Clean up AGENTS.md: fix stale reference, consolidate structure (#8290)
  • Add some documentation on running system-tests (#8298)
  • Update local smoke testing docs (#8311)
  • [Tracer] Add Component Tag to Quartz Instrumentation (#8315)
  • [AI Agents] Remove plugin settings from shared Claude Code config (#8343)
  • Add support for Microsoft.Data.SqlClient 7.x.x (#8346)
  • Attempt to fix macOS runner native build (#8348)

Build / Test

  • (CI) Migrating benchmark-serverless CI job to short-lived tokens (#8219)
  • Update Wix to 5.x.x (#8268)
  • Allow generating a snapshot of the MSI contents (#8270)
  • Move running of smoke tests to Nuke (#8271)
  • Enable performance analyzers for Datadog.Trace (#8276)
  • [Test Package Versions Bump] Updating package versions (#8278)
  • Retry ChromeDriver startup in Selenium tests (#8284)
  • Fix Datadog.Trace.Annotations dependency version in Datadog.AzureFunctions nuspec (#8285)
  • Ban SetVersion/SetVersionPrefix/SetVersionSuffix in Nuke Build (#8289)
  • Only allow creating hotfix branches from a tag (#8297)
  • Bump test dependencies and add test.final_status to benchmark exporter (#8301)
  • Update FeatureFlagsEvaluator and Debugger ToUUID to not violate CA1850 (#8303)
  • [Test Package Versions Bump] Updating package versions (#8306)
  • Relax concurrent TagsList stress test (#8317)
  • Replace our custom GitHub App Token with dd-octo-sts (#8318)
  • Fix GeneratePackageVersions so that it correctly respects IncludePackages and ExcludePackages (#8340)

Changes since 3.39.0

3.39.0

09 Mar 14:38
e7ebff0

Choose a tag to compare

Summary

  • [Serverless] Create and reparent span for Azure API Management (#7806)
  • [CI Visibility] Support NUnit v4.5.0
  • [Profiler] Support Windows pdb format (#8096)
  • [Profiler] Measure memory consumption (#8134)

Changes

Tracer

  • Termination signals fix (#8168)
  • [Code Origin] DEBUG-5199 Reduce per-span allocations and locks (#8197)
  • Add Base64DecodingStream (#8226)

CI Visibility

  • Add support for latest NUnit (#8246)

ASM

  • [ASM] Ruggerize waf GetKnownAddresses call to try to stop it crashing (#8239)

Continuous Profiler

  • [Profiler] Support Windows pdb format (#8096)
  • [Profiler] Measure memory consumption (#8134)

Serverless

  • [tracing] Create and reparent span for Azure API Management (#7806)

Miscellaneous

  • [Claude][Azure Functions] Add dev/test workflow skill and scripts (#8173)
  • [Claude] Improve troubleshoot-ci-build skill with scripts and heuristics (#8181)
  • [crashtracker] Improve crashtracker message (#8182)
  • [Config registry] Add release step for v2 (#8200)
  • [Config registry] Only one yaml for all (#8206)
  • Implement app-extended-heartbeat telemetry event (#8227)
  • Attempt to prevent crash when enumerating integration_definitions (#8230)
  • Re-write /analyze-error Claude skill (#8240)
  • Add support for ducktyping private fields and properties from a base type (#8248)
  • Add more Claude Code files to .gitignore (#8249)

Build / Test

  • Disable Ryuk images (#8208)
  • [CI] Upload system-tests results to Test Optimization (#8214)
  • [Test Package Versions Bump] Updating package versions (#8233)
  • Ensure we publish all nuget packages during release (#8234)
  • Add additional TFMs to benchmarks project (#8243)
  • Ensure docker ready (#8245)
  • Bump the gh-actions-packages group across 3 directories with 3 updates (#8251)

Changes since 3.38.0

3.38.0

23 Feb 11:12
7ff6b28

Choose a tag to compare

Summary

  • [Test Optimization] Add test.final_status tag
  • [Profiler] Improve thread names and IDs
  • [Dynamic Instrumentation] Remove the 100-probe limit
  • [Feature Flags] Update Datadog.FeatureFlags.OpenFeature .NET Framework minimum version to 4.6.2, to match OpenFeature
  • [Tracing] Performance improvements

Changes

Tracer

  • Refactoring and improvements to HttpHeaderHelpers (#8153)
  • Improve performance of AspNetCoreResourceNameHelper.SimplifyRouteTemplate (#8170)
  • Improve performance of AspNetCoreResourceNameHelper.SimplifyRoutePattern (#8180)
  • Catch FileNotFoundException when accessing assemblies (#8185)
  • [Logging] Add tag and span information to warning log (#8191)
  • Fix broken build in Rider (#8195)
  • Remove allocations for operation name/service name versioning code (#8196)
  • Improve performance for UriHelpers.CleanUri (#8199)
  • Remove the RedisObfuscationUtil.Obfuscate() method as it's never used (#8202)
  • Reduce allocations in HttpRequestUtils.GetUrl() (#8203)
  • Minor aspnetcore perf improvements (#8210)

CI Visibility

  • [Test Optimization] Add test.final_status tag (#8091)
  • NUnit: emit test.final_status on terminal executions (#8216)

Continuous Profiler

  • [Profiler] cleanup thread names and IDs (#8169)
  • [Profiler] Fix bug in managed code cache (#8177)

Debugger

  • [Dynamic Instrumentation] DEBUG-4689 Remove the 100-probe limit for Dynamic Instrumentation (#7848)
  • [SymDB] Fixed SymDB multipart event.json (#8194)

Serverless

  • [Azure Functions] Improve local NuGet build script (#8174)
  • [Azure Functions] Improve local NuGet build script, follow-up (#8188)

Fixes

  • Use built-in .NET runtime types instead of vendored types when possible (#6726)
  • Add #nullable enable to UriHelpers (#8166)

Miscellaneous

  • [Tracing] Instrument static methods defined in non-generic value types (#7920)
  • Make ValueStringBuilder available in .NET Core 3.1 (#8167)
  • Add Claude skill for CI build troubleshooting (#8172)
  • [docs for ai] Add configuration reference docs to AGENTS.md (#8201)

Build / Test

  • [Test Package Versions Bump] Updating package versions (#8176)
  • Fix dd-octo-sts policy used in SLO checks (#8179)
  • [Config Registry] feat: migrate supported-configurations to V2 format (#8183)
  • Add artifacts for SLO checks to enable notifications (#8184)
  • chore(ci) update one-pipeline (#8187)
  • [Build] Support glob patterns in CI build pipeline exclude paths (#8190)
  • Fix incorrect use of namespace breaking the build (#8192)
  • [Test Package Versions Bump] Updating package versions (#8204)
  • Assign area:builds to version bump PRs (#8205)
  • Add retry for IIS ASM tests (#8207)
  • Update nuget.org publishing to use trusted publishing (#8209)
  • Skip NUnitTests.SubmitTraces (#8212)
  • Enable Datadog Claude Marketplace plugins (#8218)

Changes since 3.37.0

3.37.0

09 Feb 13:16
71d86ec

Choose a tag to compare

Summary

Performance improvements and minor fixes.

Changes

Tracer

  • Skip telemetry for span sampling rules (#8161)

CI Visibility

  • [Test Optimization] perf: logging/timing helpers (#8070)
  • [Test Optimization] ci: add run id + config keys (#8071)
  • [Test Optimization] ci: git caching + env improvements (#8072)
  • [Test Optimization] ci: client caching + feature tweaks (#8073)
  • [Test Optimization] Improve GitHub Actions @ci.job.url format (#8098)

ASM

  • [ASM] Added missing appsec.waf.request telemetry metric tags (#8113)
  • [ASM] Custom data classification (#8155)
  • [ASM] Remove unused telemetry tag from waf.request metric (#8160)

Continuous Profiler

  • [Profiler] Add managed code cache (#7956)
  • Do not mark empty frame crashes as complete (#8119)
  • [Profiler] Disable a test on x86 with Managed Code Cache (#8147)

Debugger

  • [SymDB] DEBUG-4512 Sanitize hoisted 'this' name in symbol upload (#8100)

Serverless

  • Refactor Azure Functions instrumentation before #7628 (#8079)
  • [Azure Functions] Update Datadog.Serverless.Compat version to 1.2.0 (#8108)

Fixes

  • Fix ProcessTags.GetLastPathSegment for some edge cases, add tests (#8103)
  • Quick fix: write process tags as array instead of string in DSM payloads (#8114)
  • Fix TypeLoadException exception error (#8157)
  • Fix flaky test metrics tag values (#8099)

Miscellaneous

  • Read container tags hash from agent (#7893)
  • [Config Registry] 7/8 Integration names to keys (#7937)
  • chore(ci) update one-pipeline (#8088)
  • Filter more dynamic assemblies (#8120)
  • Add a few nitpicks in agents.md (#8125)
  • chore(ci) update one-pipeline (#8130)
  • Update /analyze-error and AGENTS.md (#8152)
  • Convert Claude commands to skills format (#8158)

Build / Test

  • Add non-blocking SLO check jobs (#7976)
  • [Test Package Versions Bump] Updating package versions (#8032)
  • reorder CODEOWNERS so debugger lines override serverless (#8102)
  • Check for labels in PRs. (#8107)
  • Fix compilation issues under VS 2022 (#8111)
  • Fetch Windows macrobenchmark artifacts from S3 (#8112)
  • [Test Package Versions Bump] Updating package versions (#8116)
  • Increase timeout DiscoveryService Tests (#8118)
  • [Test Package Versions Bump] Updating package versions (#8121)
  • Bump the gh-actions-packages group across 2 directories with 7 updates (#8122)
  • Add a review-pr command (#8126)
  • [CI] Add CultureInvariant to a test that was failing locally (#8127)
  • [FFE] Ruggerize integration tests Remote Config retrieval (#8129)
  • [Tests] Remove empty metastruct info from snapshots (#8150)

Changes since 3.36.0

3.36.0

26 Jan 13:42
e62315b

Choose a tag to compare

Summary

  • [Tracer] Add Cosmos DB CRUD instrumentation (#7837)
  • [Profiler] Fix crash when calling GetAppDomainInfo (#8076)
  • Performance improvements and minor fixes.

Changes

Tracer

  • [Tracer] Add Cosmos DB CRUD instrumentation (#7837)
  • [Config Registry] 6/8 Forbid use of System.Environment methods and adapt everywhere (#7932)
  • LifetimeManager .NET10 fix (#7969)
  • [SymDB] DEBUG-4881 Fix type name in TypeProvider (#7990)
  • Various optimizations for Activity handling (#8040)
  • Reduce allocation in ExposureApi by serializing to stream (#8051)
  • Fix ASP.NET Core Diagnostic Observer's incorrect Activity copying (#8054)
  • Add a new single-span diagnostic observer for ASP.NET Core (#7964)
  • Don't do DynamicMethod based allocation-free enumeration on .NET 10 (#8058)
  • Replace remaining usages of Environment.Version (#8069)

ASM

  • [ASM] Fix RC configs apply order (#8066)
  • [Iast] Fix GetModuleInfo freezes (#7947)

Continuous Profiler

  • [Profiler] Provide more settings in Runtime Info (#7933)
  • [Profiler] Update benchmarks definitions (#7970)
  • [Profiler] Fix crash when calling GetAppDomainInfo (#8076)

Debugger

  • Add process tags to runtime metrics & dynamic instrumentation metric probes (#7871)
  • [Dynamic Instrumentation] Add NullByRefArgAndLocal test (#7987)
  • [Dynamic Instrumentation] DEBUG-4142 Subscribe to settings change in the debugger manager (#8048)
  • [Symbol Database] DEBUG-5045 DEBUG-5046 Fix trailing bytes in symbol uploader and performance improvements (#8097)
  • [SymDB] DEBUG-4760 Fix "Not enough space for all closure methods" (#8101)
  • [Dynamic Instrumentation] DEBUG-4871 Added a managed guard in LogLocal and LogArg to detect null byrefs (#7986)
  • [Dynamic Instrumentation] DEBUG-4786 Explicitly track open nodes (#7988)
  • [Dynamic Instrumentation] DEBUG-4877 Stabilize snapshot serializer (#7989)
  • [EL] DEBUG-4878 Fix null equality in expression language (#7991)
  • [EL] DEBUG-4884 Fix null expression when type is struct (#7993)
  • [EL] DEBUG-4879 Support multiple expression compilations (#7994)
  • [Dynamic Instrumentation] DEBUG-5018 Send logs to debugger intake (#8092)

Serverless

  • [Azure Functions] Update Datadog.Serverless.Compat version (#8085)
  • [SVLS-7360] Fix Exception Replay in Lambda (#8043)

Fixes

  • Remove unused properties from MockTelemetryAgent (#8020)

Feature Flags

  • [FFE] Change fee integration tests codeowner (#8075)
  • [FFE] Fix asserts being ignored in release builds (#8093)
  • [FFE] Cache the condition regexes (#8087)
  • [FFE] Add feature-flagging-and-experimentation-sdk as code owners for FFE code (#8095)
  • [FFE] Feature Flags SDK (#7896)
  • [FFE] Fix exposures url (#8074)
  • [FFE] OpenFeature 2.x shim package (#8077)
  • [FFE] Added support for Value evaluation type in OpenFeature (#8086)
  • [Feature Flags] Fix ISO 8601 date parsing to support variable precision (#8094)

Miscellaneous

  • Create a more optimized AspNetCoreResourceNameHelper (#7966)
  • Don't poll discovery service if we've received an update from the agent recently (#7979)
  • Switch to allocation-free enumeration of Activity objects (#8041)
  • Improve OpenTelemetryTags population to reduce allocation and work (#8042)
  • chore(ci) update one-pipeline (#8053)

Build / Test

  • Add benchmarks for single-span diagnostic observer for ASP.NET Core (#7965)
  • Automatic retry ASM integration tests under failure (#8011)
  • [SINT-4550] Use CI Identities in Windows CI Jobs (#8033)
  • Fix build by splitting FleetInstaller integration tests into their own test project (#8044)
  • Add missing permissions to release process (#8046)
  • Try disable the pull-request-freshness feature (#8049)
  • AzureServiceBusAPMTests flakiness fix. (#8050)
  • Fix benchmark projects (#8056)
  • Collect logs in arm64 macrobenchmark tests (#8057)
  • fix(tests): make sure we include the codeowners tag on all tests (#8060)
  • Update CODEOWNERS for feature flagging work (#8063)
  • [Build] Clean up SuppressTfmSupportBuildWarnings usage (#8078)
  • Fix Batching sink tests flakiness. (#8081)
  • Fix Benchmark tests (#8082)
  • fix benchmark code (#8104)

Data Streams Monitoring

  • [IBM MQ] Fix queue naming by removing URI prefix (#8080)

Changes since 3.35.0