Skip to content

Releases: DataDog/dd-trace-dotnet

3.29.0

21 Oct 13:32
0b73bff

Choose a tag to compare

Summary

  • [OTEL] Metrics API Support - Metrics Reader & OTLP Exporter (#7514)
  • [Azure Functions] Add aas.site.kind tag to agentless logs (#7623)
  • [Azure Functions] Skip instrumenting orchestrator functions (#7640)
  • Various other fixes and improvements

Changes

Tracer

  • Rebuild MutableSettings on dynamic config changes (#7525)
  • Move DefaultServiceName to MutableSettings (#7530)
  • Simplify PerTraceSettings.GetServiceName() (#7532)
  • [PDB] Handle exception during opening a pdb file (#7573)

CI Visibility

  • [TestOptimization] Catch IOException on the Git folder discovery (#7658)

Continuous Profiler

  • [crashtracker/profiler] Notify profiler the application is crashing (#7657)

Debugger

  • [Dynamic Instrumentation] DEBUG-3695 Return correct RC apply details (#6890)
  • [Dynamic Instrumentation] Skip some debugger tests on .NET 8 or greater (#7631)
  • Minor fix in DynamicConfigurationManager update process (#7664)
  • [Dynamic Instrumentation] DEBUG 3794 Stabilize snapshot enumerable serializing (#6910)
  • [Dynamic Instrumentation] DEBUG-3959 Guard against undefined value expression (#7008)
  • [Debugger Default-On] DEBUG-4341 Forward snapshots to debugger intake (#7388)
  • [Dynamic Instrumentation] Ensure DI metric probe does not send automatic telemetry (#7621)
  • [Dynamic Instrumentation] Remove reference types value property from snapshot (#7635)

Serverless

  • [Azure Functions] Add aas.site.kind tag to agentless logs (#7623)
  • [Azure Functions] Skip instrumenting orchestrator functions (#7640)

Miscellaneous

  • [OTEL] Metrics API Support - Metrics Reader & OTLP Exporter (#7514)
  • [internal docs] Add CI troubleshooting documentation (#7634)
  • [OTEL] Moves OTelMetrics Under OpenTelemetry.Metrics (#7638)
  • Minor refactor and added tests for DynamicConfigurationManager (#7652)
  • [OTEL] Vendoring OtlpGrpcExportClient And Enabling OTLP Metrics gRPC Tests (#7666)
  • [Code Origin] Add debug logs to code origin for entry span (#7612)
  • [Code Origin] Performance: Add Assembly Filter Caching for Code Origin (#7667)
  • Small OpenTelemetry Metrics fixes and optimizations (#7632)

Build / Test

  • Optimize AGENTS.md with contextual load guidance (#7625)
  • Bump timeit to v0.4.6 (#7647)
  • Improve and simplify the microbenchmarks CI setup (#7613)
  • Capture Exception when sending metrics (#7614)
  • [Test Package Versions Bump] Updating package versions (#7617)
  • Fix profiler_execution_benchmarks flakiness (#7622)
  • Fix the code freeze action (#7626)
  • Revert "[SINT-4157] sanitise ultimate-pipeline.yml" (#7627)
  • Increase Docker run step resiliency for Profiler integration tests (#7629)
  • [SINT-4157] sanitise ultimate-pipeline.yml (#7630)
  • [Azure Functions] Add Build-AzureFunctionsNuget.ps1 helper script for local developement (#7633)
  • Update CODEOWNERS for consistent ownership of managed loader files (#7643)
  • [Test Package Versions Bump] Updating package versions (#7644)
  • Clone the prod dd-trace-dotnet microbenchmark branch for microbenchmarks (#7646)
  • Fix CleanObjFiles job (#7648)
  • [Test Package Versions Bump] Updating package versions (#7655)
  • [OTEL] Switches OTLP Tests To dd-apm-test-agent Instead of MockTracerAgent (#7656)
  • Fix nuget installer smoke tests (#7619)

Changes since 3.28.0

3.28.0

06 Oct 17:38
6d68aad

Choose a tag to compare

Summary

  • [Tracer] Add Azure Service Bus instrumentation (#7413)
  • [Tracer] add OTEL quartz autoinstrumentation (#7192)
  • [Tracer] Add Azure Service Bus batching support (#7553)
  • [Test Optimization] Failed Test Replay (#7102)
  • [AAP] Enable by default API Security Endpoints collection when appsec enabled (#7569)
  • [Tracer] Fix for sending duplicate logs when using Agentless Logging in Azure Function host (#7383)
  • [Code Origin] Disable code origin for exit spans (#7610)
  • [Profiler] Make timer_create-based CPU profiler default (#7578)

Changes

Tracer

  • No longer forgive spans.Array from being null (#6878)
  • Update Datadog.Sketches vendored code (#7299)
  • [Debugger Default-On] DEBUG-3322 Debugger in-product enablement (#7366)
  • Extract MutableSettings from TracerSettings (#7522)
  • Protect against UriFormatException (#7550)
  • Update the ProfilerSettings enablement to ignore SSI (#7557)
  • [DI-EL] Add debug log in case evaluation result is null and it shouldn't be null (#7558)
  • [SymbDB] Ignore canceled exception (#7572)
  • [ER]- Fix ER system tests (#7576)

CI Visibility

  • [Test Optimization] Failed Test Replay (#7102)
  • fix(ci): recycle stale ServicePoint connections (#7593)

ASM

  • [AAP] Enable by default API Security Endpoints collection when appsec enabled (#7569)

Continuous Profiler

  • [Profiler] Leverage new .NET 10 allocation sampling (#6930)
  • [Profiler] Support Stable Config (#7287)
  • Update profiler availability helper to assume Windows always sets the env var (#7555)
  • [Profiler] Add Index to samples and build index vector for libdatadog (#7559)
  • Revert "Revert "[Profiler] Make timer_create-based CPU profiler default (#7322)"" (#7578)

Debugger

  • [Debugger Default-On] DEBUG-4406 Support multi-config merging with priorities (#7536)
  • [Debugger Default-On] Add debuger dynamic configurations keys (#7595)
  • [Dynamic Instrumentation] Skip dynamic config test net8 (#7608)
  • [Code Origin] Disable code origin for exit spans (#7610)

Serverless

  • [Azure Functions] Add Nuke targets to build local nuget for testing (#7537)

Fixes

  • Set "component" tag for ASP.NET (#6010)
  • Fix for sending duplicate logs when using Agentless Logging in Azure Function host (#7383)
  • Remove duplicate "public" APIs and Internal prefix/suffixes (#7546)
  • Fix log directory location for managed code in Windows nano server (#7561)

Miscellaneous

  • Fallback to OperationName instead of string.Empty for ElasticSearch ResourceName (#5610)
  • [tracing] add OTEL quartz autoinstrumentation (#7192)
  • [Tracer] Add Azure Service Bus instrumentation (#7413)
  • Add a code fix provider for invalid DuckType null checks (#7448)
  • [OTEL] Metrics API Support - Collection Implementation (#7511)
  • [Tracer] Add Azure Service Bus batching support (#7553)
  • [crashtracking] Change Crashtracking filtering default value (#7598)
  • add CLAUDE.md, updates to AGENTS.md (#7602)
  • Add performance, testing, logging, Azure Functions, and glossary to AGENTS.md (#7609)

Build / Test

  • Replace code-freeze/action.yml with pr-status-updater/action.yml (#6702)
  • Build and run tests against .NET 10 RC 1 (#7499)
  • [Test Package Versions Bump] Updating package versions (#7515)
  • Remove the guards around M.D.SqlClient V4 in tests (#7541)
  • Skip failing TraceAnnotationsTests in .NET 6.0 (#7551)
  • Skip failing TraceAnnotationsTests in .NET 6.0 (#7552)
  • Fix flakiness in the TraceAnnotation tests (#7554)
  • Update CODEOWNERS (rename apm-sdk-api to apm-sdk-capabilities) (#7563)
  • Fix smoke tests for nuget tool (#7564)
  • Output MSBuild errors when publishing (#7566)
  • Improve and simplify the microbenchmarks CI setup (#7571)
  • [SINT-2273] update workflow steps (#7579)
  • [SINT-4157] sanitise ultimate-pipeline.yml (#7582)
  • Escape all paths in DownloadLibDatadog (#7583)
  • exclude api keys from sample app logs (#7592)
  • [SINT-4157] improve workflow (#7599)
  • Bump the gh-actions-packages group across 2 directories with 5 updates (#7600)
  • Mark FlakyRetriesWithExceptionReplay as flaky (#7603)
  • Increase the Gitlab Build timeout (#7604)
  • Update .gitlab/one-pipeline.locked.yaml (#7605)
  • Revert "Improve and simplify the microbenchmarks CI setup" (#7606)

Changes since 3.27.0

3.27.0

22 Sep 18:05
b9a2c0e

Choose a tag to compare

Summary

Various bug fixes and optimizations. Includes fix for Runtime Metrics that could be missing and more accurate telemetry reporting.

Changes

Tracer

  • Remove unused dynamic settings (#7487)
  • Fix incorrect usages of TracerManager PerTraceSettings (#7488)
  • Add additional compiler flags to allow required (#7501)
  • Fix .NET 10 RC1 bugs (#7506)
  • fix(telemetry): correct heartbeat interval calculation (#7507)
  • Fix ManualInstrumentationConfigSource and introduce base type (#7508)
  • Allow optimized creating of composite configuration source (#7509)
  • Move partial flush settings from ExporterSettings to TracerSettings (#7516)
  • fix: change Language value from '.NET' to 'dotnet' in trace headers (#7523)
  • Hide problematic public APIs using [EditorBrowsable] (#7531)
  • Add a Continuous Profiler availability check (#7534)

ASM

  • [AAP] Update waf version to v1.28.0 (#7494)
  • [AAP] Update waf to v1.28.1 (#7524)
  • [AAP] Test endpoint collection with APM tracing disabled (#7535)

Debugger

  • [Dynamic Instrumentation] Added native hot standby mode to support Remote Enablement and Stable Config (#7441)
  • [Dynamic Instrumentation] Avoid async instrumentation if the type AsyncMethodDebuggerInvokerV2 does not exist (#7513)

Serverless

  • [Azure Functions] bump Datadog.Serverless.Compat nuget package reference (#7497)

Fixes

  • More cleanup in native loader code (#7475)
  • Fix dependabot again by allowing private feed access (#7480)
  • [Tracer] Updating Statsd in RuntimeEventListener (#7512)

Miscellaneous

  • [OTEL] Metrics API Support - Configurations & Telemetry (#7420)
    • This feature is incomplete and still in development
  • Simplify Windows benchmarks credential setup (#7498)
  • Allow passing fallback values to IntegrationSettingsCollection (#7510)
  • Add AGENTS.md file (#7539)

Build / Test

  • Timeout error installer_smoke_tests (#7468)
  • Attempt to improve Kafka timeout flake in tests (#7474)
  • Try fixing ASAN job crashes (#7476)
  • Update Windows macrobenchmark tooling (#7481)
  • Update Windows microbenchmark tooling (#7482)
  • [Hands-off config] add integration test (#7483)
  • [Test Package Versions Bump] Updating package versions (#7484)
  • Check for errors when signing (#7490)
  • Sign artifacts using 0.3.5 of the dd wcs tool (#7492)
  • Decrease Nuke restore verbosity job (#7493)
  • Decrease log level when uncompressing files in Nuke (#7496)
  • Fix macos build (#7503)
  • Mark kafkatests as flaky (#7505)
  • Upload execution benchmark log files and cleanup (#7521)
  • chore(CI): add ForceDebugRun variable for debug control system tests (#7528)
  • Ensure execution_benchmarks download the profiler (#7529)
  • Capture timeout exceptions in IAST tests (#7533)
  • Fix the verify_app_trimming_changes_are_persisted job (#7542)

Changes since 3.26.3

3.26.3

16 Sep 20:04
7b9e362

Choose a tag to compare

Summary

Fixes authenticode signing for artifacts by updating our CI images to use the appropriate Windows signing tools.

Changes

Build / Test

  • Check for errors when signing (#7490)
  • Sign artifacts using 0.3.5 of the dd wcs tool (#7492)
  • Decrease Nuke restore verbosity job (#7493)
  • Decrease log level when uncompressing files in Nuke (#7496)

Changes since 3.26.2

3.26.2

15 Sep 23:00
aec1d6c

Choose a tag to compare

Summary

Includes fix for Runtime Metrics that could be missing and more accurate telemetry reporting.

  • Fix incorrect heartbeat interval calculation (#7507)
  • Fix Statsd usage in RuntimeEventListener (#7512)

Changes since 3.26.1

3.26.1

09 Sep 10:38

Choose a tag to compare

Warning

Versions 3.25.0-3.26.1 include a bug related to Runtime Metrics, in which metrics are no longer reported after a configuration update. If you are affected, please update your library to version 3.26.2 or above.

Summary

Fixes authenticode signing for artifacts

Changes since 3.26.0

3.26.0

08 Sep 12:25
85d10ad

Choose a tag to compare

Warning

Versions 3.25.0-3.26.1 include a bug related to Runtime Metrics, in which metrics are no longer reported after a configuration update. If you are affected, please update your library to version 3.26.2 or above.

Summary

Various bug fixes and optimizations.

Changes

Tracer

  • Update build and testing to use .NET 10 preview 7 (#7170)
  • add logging for data pipeline status in TracerSettings (#7436)
  • Use P/Invoke to call lstat instead of shelling out to stat to retrieve the inode (#7453)
  • [Native] Convert Rejitters vector to a fixed array (#7460)
  • [Phase 1] chore(configuration): enable DataPipelineEnabled on the AAS Site Extension (#7464)

ASM

  • [AAP] Add Forwarded header as IP source (#7438)
  • [AAP] Add "100.65.0.0/10" as a private IP range (#7461)
  • [IAST] Fix GRPC IAST tests (#7485)
  • [IAST] Delay dataflow creation (#7440, #7451, #7465)

Continuous Profiler

  • [Profiler] Make sure we generate a build-id using SHA-1 (#7449)
  • [Profiler] Try fixing TSAN job (#7452)

Serverless

  • [Azure Functions] Restore files moved by in-process Azure Functions SDK (#7419)

Fixes

  • Support final="true" in NLog Logging rules for direct log submission (#7445)
  • Extract the Managed DevOps pools names to variables (#7447)
  • Update language used in native log messages (#7467)
  • Remove Samples.TraceAnnotations.VersionMismatch.NewerNuget (#7469)
  • Remove Samples.CIVisibilityVersionMismatch (#7471)
  • Add parameter names to MongoDb IBsonSerializerProxy.Serialize() method (#7443)
  • Fix GRPC instrumentation for BuildHttpErrorResponse. Enable integration tests. (#7457)

Build / Test

  • Use mock agent in exploration tests (#7431)
  • [Test Package Versions Bump] Updating package versions (#7435)
  • Use the global.json file to specify the .NET SDK version in GitHub Actions (#7442)
  • Update Managed DevOps pools images (#7446)
  • Remove smoke test image that won't work (#7450)
  • [Test Package Versions Bump] Updating package versions (#7455)
  • Bump the gh-actions-packages group across 2 directories with 2 updates (#7456)
  • [Test Package Versions Bump] Updating package versions (#7458)
  • Split dependabot files into separate projects (#7459)
  • Bump actions/setup-dotnet from 4.3.1 to 5.0.0 in the gh-actions-packages group across 1 directory (#7463)
  • Try to fix dependabot (#7466)
  • Improve logging for InstrumentationTests and update dynamic code scenario (#7472)
  • Fix typo in dependabot yaml (#7477)
  • Fix dependabot again (#7478)

Miscellaneous

  • Consolidate bailout checks into native loader (#7462)
  • [Native] Safer rejitter iterations (#7473)

Changes since 3.25.0

3.25.0

26 Aug 12:37
170fb0a

Choose a tag to compare

Warning

Versions 3.25.0-3.26.1 include a bug related to Runtime Metrics, in which metrics are no longer reported after a configuration update. If you are affected, please update your library to version 3.26.2 or above.

Summary

  • Various bug fixes and optimisations

Changes

Tracer

  • Implement "enahanced telemetry reporting" (#7360)
  • Don't call ToUpperInvariant if we don't need to (#7393)
  • Handle TypeLoadException when retrieving HostingEnvironment (#7417)
  • Add missing GetDictionary() method to ConfigurationBuilder (#7421)
  • More ConfigurationBuilder refactoring to avoid incorrect usages (#7422)
  • [Tracer] fix: Re-use runtime metrics writer resources to limit memory growth (#7434)

Continuous Profiler

  • [Profiler] Make timer_create-based CPU profiler default (#7322)
  • Revert "[Profiler] Make timer_create-based CPU profiler default (#7322)" (#7427)

Debugger

  • Disable debugger initialization if it's not enabled initially (#7398)

Serverless

  • [Azure Functions] Remove all Serverless Mini-Agent (SMA) code (#7389)

ASM

  • [IAST] Fix NRE in Native IAST ModuleInfo->GetFullName() (#7404)

Fixes

  • fix: Clean up small C# and C++ build warnings (#7363)
  • chore: update malformed telemetry name (#7402)
  • Get process start info variables safely (#7423)
  • Fix null reference exception in proxy spans (#7428)

Build / Test

  • [CI] Creates PR Label Based Docker Image (#7337)
  • [Test Package Versions Bump] Updating package versions (#7315)
  • Include the target framework in our InstrumentationTests (#7347)
  • Ignore rejit timeout errors in smoke tests and report a metric (#7370)
  • fix: Make OTLP metrics snapshot testing more stable (#7374)
  • Add final job for blocking merges of PRs (#7376)
  • Fix debug symbol upload in release job (#7377)
  • Fix Windows SSI release (#7379)
  • Fix null ref type warning in Nuke (#7382)
  • Fix creation of label-based artifacts for system tests (#7385)
  • Filter our exit span from Azure Functions tests (#7391)
  • Fix variable generation for linux-arm64 unit tests (#7394)
  • Add more alpine checks for native library (#7395)
  • [Test Package Versions Bump] Updating package versions (#7396)
  • Fix ASM WAF unit tests (#7397)
  • [SINT-3848] 🔒 Pin GitHub Actions to specific SHA versions for enhanced security (#7400)
  • Improve PR labelling and release note generation (#7401)
  • [Native] Add native string unit tests (#7407)
  • Add Os, OsVersion, and Tfm to CI flaky-smoke-test metrics (#7409)
  • Scrape native tracer stats from logs in smoke tests and track in Datadog (#7410)
  • Update tracer_home_smoke_tests stage to use MS hosted windows images (#7412)
  • Enable runtime metrics for macrobenchmarks (#7414)
  • Try to fix dynamic instrumentation tests (#7415)
  • Make the Instrumentation.cs file owned by everyone (#7416)
  • Try to fix more flake in fleet installer IIS tests (#7418)
  • Bump the gh-actions-packages group across 1 directory with 5 updates (#7429)
  • [Test Package Versions Bump] Updating package versions (#7430)

Miscellaneous

  • Fix minor warnings and issues and improvements (#7390)
  • refactor(libdatadog): namespaces and file organization, error code and typo (#7405)
  • Don't write debug logs to console for hands off config (#7392)
  • chore(trace-exporter): disable data pipeline when SSI is enabled (#7386)
  • [Service Disc] Change type layout to make it x86 safe (#7387)
  • [HandsOff Config] Read sources from libdatadog (#7282)
  • Refactor telemetry in ConfigurationBuilder (#7354)
  • [Native] Added DBG macro that checks for IsDebugEnabled before logging a debug trace (#7406)
  • refactor(libdatadog): error handling and trace exporter response management (#7411)

Changes since 3.24.1

3.24.1

12 Aug 10:53
d5266d0

Choose a tag to compare

Summary

  • Fixes the SSI artifact publishing, which were not published in 3.24.0

Changes

Misc

  • Fix Windows SSI release (#7379)

Changes since 3.24.0

3.24.0

12 Aug 09:11
543c80f

Choose a tag to compare

Summary

  • [Tracer] Logs injection for connecting logs with traces is enabled by default. To disable, set DD_LOGS_INJECTION=0
  • [Tracer] Add support for latest S3 and MSTest packages
  • [AAP] Add resource name to the collected endpoints
  • [DSM] Flush DSM stats on Lambda Stop

Changes

Tracer

  • Refactor the profiling configuration reading (#7303)
  • Minor IConfigurationSource clean up (#7327)
  • chore: clean up baggage span tags implementation (#7335)
  • Update default value of DD_LOGS_INJECTION to true (#7336)
  • Fix broken S3 integration (#7368)

CI Visibility

  • [Test Optimization] Support for MSTest v3.10 (#7343)

ASM

  • [AAP] Add resource name to the collected endpoints (#7317)
  • [AAP] Add latest supported waf capabilities to RC (#7332)
  • [AAP] Added WAF metrics. Reorganized other metrics to match RFC (#7356)
  • [AAP] Update WAF ruleset to v1.15.0 (#7331)

Debugger

  • [Dynamic Instrumentation] DEBUG-3514 Refactor debugger code (#7304)
  • Removes exception throwing during shutdown of dynamic instrumentation (#7375)

Serverless

  • DSMS-90: Flush DSM stats on Lambda Stop (#7054)

Data Streams Monitoring

  • Do not inject DSM legacy headers by default in "default enabled" mode (#7351)

Build / Test

  • Update xunit to latest, fix analyzer warnings, and update analyzer tests (#7280)
  • Send Warm-up request in iisexpress integration tests (#7321)
  • Update CODEOWNERS with SDK capabilities team as owners (#7328)
  • Pre pull aerospike image (#7333)
  • Remove CMake warning: jobserver unavailable: using -j1. Add `+' to parent make rule. (#7334)
  • Fix typo in create_draft_release (#7338)
  • Fix the signing of the fleet installer exe (#7341)
  • Elaborate on Run failed description (#7344)
  • Work around flake in the Couchbase 3 integration tests (#7357)
  • Try to fix flake by using unique keys in StackExchange sample tests (#7359)
  • Mark the OTLP metrics test as [Flaky] (#7369)
  • Fix more flake in the IIS fleet smoke tests (#7372)
  • Don't test Aerospike.Client 8.1.0 on .NET 6 or 7 (#7349)

Miscellaneous

  • Cache response in order to avoid unnecessary deserializations (#7320)

  • Add Stats on EnqueueRequestRejitForLoadedModules (#7340)

  • Include telemetry_forwarder.exe in the Windows SSI OCI images (#7342)

  • Update the configuration key for controlling managed activation (#7350)

  • Update libdatadog to 20.0.0 (#7358)

Changes since 3.23.0