Skip to content

Releases: DataDog/dd-trace-dotnet

2.46.0

24 Jan 10:04
29ceca1
Compare
Choose a tag to compare

Summary

  • [Tracing] Add support for matching sampling rules by resource name and span tags, and for using glob patterns
  • [Tracing] Add support for tracer flare for faster support resolution
  • [Tracing] Add support for container tagging over TCP on cgroup v2
  • [CI Visibility] Reduce overhead of intelligent test runner, payload upload, and git unshallow
  • [IAST] Add support for header injection vulnerability
  • [IAST] Fix false-positive related to small-integer string cache
  • [Serverless] Report exception details to Lambda extension

Changes

Tracer

  • Add DD_TRACE_SAMPLING_RULES_FORMAT setting (#4984)
  • [tracer] Match sampling rules by resource name and span tags (#5013)
  • [Tracer] Update signature parsing in the tracer's native library to account for ELEMENT_TYPE_PTR byte (#5042)
  • [Tracer] Send the Datadog-Entity-ID header, containing either the container-id or the cgroup inode if available (AIT-9281) (#5058)
  • NullConfigurationSource should implement ITelemetredConfigurationSource (#5033)

CI Visibility

  • [CI Visibility] - Update Code Coverage percentage reporting (#5032)
  • [CI Visibility] - Improve git upload logic (#5039)
  • [CI Visibility] - Intelligent Test Runner: reduce overhead of the default branch (#5041)
  • [CI Visibility] - Enable AutomaticDecompression on CI Visibility http clients (#5043)
  • [CI Visibility] - Add support for GZip compression in Multipart payloads (#5060)
  • [CI Visibility] - Fix exception when the CodeCoverage environment variable value is null (#5063)
  • [CI Visibility] - TestPlatform AssemblyResolver .ctor integration (#5088)
  • Ignore TestPlatform SDK assembly resolve error from CI CheckBuildLogs (#5084)

ASM

  • [ASM] IAST Header injection vulnerability detection. (#4981)
  • [ASM] Dont catch CallTargetBubbleUpException native side, like on managed side (#5034)
  • [IAST] SourceType refactor (#5037)
  • [ASM] Add max concurrent request setting for api sec (#5048)
  • [IAST] String cache bugfix (#5064)

Dynamic Instrumentation

  • [Dynamic Instrumentation] Upload symbols to SymDB (with System.Reflection.Metadata) (#4782)
  • [Dynamic Instrumentation] Made the captured members size flexible due to IndexOutOfRangeException (#5099)

Serverless

  • Fix AWS Lambda tests (#5050)
  • [SLES-1357] set exception on the aws.lambda span (#5054)

Build / Test

  • [Build] adds a notification on build end (#5008)
  • Add an API to create a suspended process (#5015)
  • Convert integration tests to async (#5018)
  • bump default kafka lib version in sample app to solve a bug with mac (#5028)
  • AutoGenerator bug fixes (#5029)
  • [IAST] Folder casing fix (#5035)
  • Use native debugging for procdump (#5046)
  • [IAST] Removed Activator calls in SourceGenerator for performance reasons (#5052)
  • Minor CI fixes (#5056)
  • Fix BenchmarkTests civisibility reporting (#5069)
  • Fix failing GraphQL tests on .NET Core 2.1 on alpine (#5075)
  • Source generator refactor (#5078)
  • Shorting the symbol extractor tests approval names (#5079)
  • Fix trimming file (#5080)
  • Disable code coverage unless forced (#5090)
  • Suppress build warnings we don't care about (#5096)
  • Skip debugger SymbolExtractorTest tests (#5095)

Miscellaneous

  • Reenable tracer flare and handle debug request (#5040)
  • Fix - Change DelegateInstrumentation set continuations behaviour to copy Calltarget (#5049)
  • Disable remote configuration in Serverless and CI scenarios (#5053)
  • Always log rejit errors (#5061)
  • Include telemetry data in tracer flare (#5062)
  • Update some Github docs (#5077)

Changes since 2.45.0

2.45.0

10 Jan 10:21
02650cd
Compare
Choose a tag to compare

Summary

  • [Tracing] Fix trace context propagation when instrumenting a YARP reverse proxy
  • [dd-dotnet tool] Detect when aspnetcore out-of-process is not initialized
  • [ASM] Update waf 1.15.1 and rules 1.10.0
  • [ASM] Fix incorrect encoding of route data in WAF

Changes

Tracer

  • [Tracing] Fix trace context propagation when instrumenting a YARP reverse proxy (#5025)
  • [Tracer] Update SNS integration (#4712)
  • Add PushStream support to IApiRequest and support chunked-encoding (#4989)
  • Add peer.hostname tag to grpc clients (#4992)
  • Make custom sampling rules case-insensitive (#4999)

ASM

  • [ASM] Update waf 1.15.1 and rules 1.10.0 (#4958)
  • [ASM] Fix path params not being all transformed to waf encodable values (#5011)
  • [ASM] Division by zero could happen if param was 0 and apisecurity is enabled (#4975)

Tools

  • Detect when aspnetcore out-of-process is not initialized (#5012)

Build / Test

  • [ASM][IAST] Fix macOS build for IAST Instrumented tests (#4993)
  • [Build] Fix Tracer Native Build on MacOS ARM64 (#4969)
  • Change the echo output in Samples.Console (#4982)
  • More workarounds for Rider/NuGet bug (#4986)
  • Try to fix the RedirectInput test (#4998)
  • Explicitly sort files before generating missing nullability csv (#5000)
  • speedup CI step verify_files_without_nullability (#5003)
  • Disable inlining on automapper tests (#5004)
  • Remove SA1010 exclusions (#5007)
  • Make sure OsX ITests don't require dd_dotnet stuff (#5009)
  • little quality of life improvements on integration tests (#5016)
  • Fix OSX solution filter (#5027)
  • Small fixes for MockTracerAgent and MockHttpParser parsing (#4988)
  • Refactor MockTracerAgent to allow sending custom responses for any endpoint (#4997)

Miscellaneous

  • Making RCM async (#4996)
  • Add helpers for creating a sentinel file and for zipping debug logs (#4987)
  • Add TracerFlareApi implementation for sending requests to endpoint (#4990)
  • Add remote-configuration + manager support for tracer flare (#4991)
  • Add nullable annotations to the datadog logging files (#4994)
  • Add install signature to app-started telemetry event (#5002)
  • Restore log level after tracer flare (#5017)
  • Temporarily disable the tracer flare functionality (#5036)

Changes since 2.44.0

2.44.0

19 Dec 09:52
620ab8b
Compare
Choose a tag to compare

Summary

  • [Tracer] Add support for NUnit 4.0. and Aersospike 7.0.0+
  • [Tracer] Add workaround for NGEN bug in .NET runtime
  • [Tracer] Add logs inject + agentless logging support for Microsoft.Extensions.Telemetry
  • [ASM] Missing HSTS header and unvalidated redirect vulnerability detection
  • [Dynamic Instrumentation] Added type support for PII redaction

Changes

Tracer

  • Add global tags to dynamic config (#4901)
  • Revert "Add CorProfilerInfo7::ApplyMetadata call" (#4945)
  • Add logs injection + direct log shipping for Microsoft.Extensions.Telemetry (#4951)
  • Add support for NUnit 4 (#4959)
  • Un-skip manual instrumentation tests and fix flake (#4960)
  • Stop caching exceptions in lazy (#4962)
  • Add support for aerospike v7 (#4974)
  • [IAST] Added missing nullable enable (#4977)

ASM

  • [ASM] Hsts header missing vulnerability (#4873)
  • [IAST] Unvalidated redirect vulnerability detection (#4925)
  • Add fix for null key in SecurityCoordinator (#4961)
  • [IAST] Hardcoded Secrets location bugfix (#4965)
  • [ASM] Add client IP feature to the AspNetMvc integration (#4970)

Dynamic Instrumentation

  • [Dynamic Instrumentation] Added type support for PII redaction (#4941)

Build / Test

  • Increase the dd-dotnet artifact tests timeout to 30 seconds. (#4947)
  • Remove test environment variable in Samples.Console (#4948)
  • [Build/Test] Add GitHub Action to track files without nullable reference types (#4954)
  • [Test Package Versions Bump] Updating package versions (#4956)
  • Add workaround for Rider bug (#4976)

Changes since 2.43.0

2.43.0

05 Dec 10:11
d791201
Compare
Choose a tag to compare

Summary

  • [Tracing] Add support for WCF Web HTTP
  • [Tracing] Add support for Npgqsl v8.0.0 and ServiceStack.Redis v8.0.0
  • [Serverless] Remove up to 100ms shutdown latency in AWS Lambda when flushing traces
  • [IAST] Trust boundary violation vulnerability detection

Changes

Tracer

  • Add support for WCF Web HTTP UriTemplates in WCF integration (#4903)
  • [DBM] Don't inject DBM attributes into IDbCommand twice (#4909)
  • Add support for Npgqsl 8.0.0 (#4910)
  • Add support for ServiceStack.Redis 8.0.0 (#4911)
  • Don't send some error logs to telemetry (#4934)
  • Tiny cleanup of static Tracer instance usages (#4936)
  • Set default batch interval in serverless scenarios (#4946)

ASM

  • [ASM] Handle anonymous types when extracting object (#4865)
  • [IAST] Trust Boundary Violation vulnerability implementation (#4896)
  • [ASM] Downgrade middleware log if no current span found (#4932)

Continuous Profiler

  • [Profiler] Update managed projects to net462 (#4683)
  • [Profiler] Bump libdatadog to 5.0.0 (#4719)

Dynamic Instrumentation

  • [Dynamic Instrumentation] Improved snapshot pruning algorithm (#4893)

Fixes

  • Handle exception in MSMQ integration (#4931)
  • Add manual+automatic instrumentation tests + fix SetUser bug (#4938)
  • Fix recheck interval in DiscoveryService (#4907)
  • Add null reference checks to SNS integration (#4917)
  • Add null reference checks to elasticsearch7 integration (#4918)
  • Fix ASP.NET Core DiagnosticObserver bugs (#4920)
  • Add null reference checks to StackExchange.Redis integration (#4921)
  • Add null reference checks to RabbitMq integration (#4922)
  • Fix bugs with DogStatsD when using named pipes or UDS (#4933)
  • Wire up the DD_TRACE_BATCH_INTERVAL setting (#4940)
  • [ASM] Add null check for content body before running security checks (#4950)

Build / Test

  • [Profiler] Adjust profiler tests for .NET 8 (#4908)
  • [IAST] Added StringAspects.Concat() micro benchmark (#4713)
  • Compile native code with C++20 (#4054)
  • Reinstate version mismatch tests (#4879)
  • [Test Package Versions Bump] Updating package versions (#4882)
  • Remove pre-.NET8 workaround for MacOS in CI (#4888)
  • [CI] Make sure all Linux images use Clang 16.0.6 (#4894)
  • Attempt to add ignore various C++ warnings/errors (#4898)
  • Make the agent check less verbose (#4905)
  • Fix memory dumps on artifact tests (#4906)
  • Fix AWS SQS test snapshots (#4913)
  • Increase timeout benchmarks (#4919)
  • Fix dd_dotnet version (#4923)
  • [Tests] Ignore UDS telemetry test on windows (#4926)
  • Sign dd-dotnet.exe that we package in MSI (#4939)
  • Enable diagnostic messages in dd-dotnet artifact tests (#4944)
  • Skip flaky manual instrumentation tests (#4949)

Changes since 2.42.0

2.42.0

21 Nov 12:27
1229d8c
Compare
Choose a tag to compare

Summary

  • [Tracer] Update support for W3C interoperability (default propagation, enable 128-bits by default, improve operation names)
  • [Tracer] Bundle dd-dotnet tool with installers, for easier onboarding and diagnostics
  • [ASM] Support full URL request tainting, HTTP header tainting, X-Content-Type misconfiguration, and hardcoded secret detection
  • [ASM] Fix potential native memory management bug
  • [DSM] - Add support for IBM MQ
  • [Tracer] Add support for .NET 8 GA
  • [Tracer] Add support for .NET Remoting

Changes

Tracer

  • [Tracer] add propagated (_dd.p.*) trace tags to the correct spans (#4332)
  • Create a better OperationName for Activity/OpenTelemetry (#4700)
  • [Tracer] Enable 128 bits by default (#4827)
  • [Tracer] Updates Default W3C tracecontext Propagation AIT-8606 (#4859)
  • [Tracer] .NET Remoting instrumentation (#4829)

CI Visibility

  • Add support for NUnit 3.14.0 (#4825)

ASM

  • [ASM] Api security foundation for dotnet core (#4654)
  • [ASM][IAST] Hardcoded secrets (#4666)
  • [ASM] Taint full url of a request in IAST (#4789)
  • [ASM] Enable IAST coverage tests NET8 (#4801)
  • [ASM] unknown type to encode: log debug instead of warning (#4809)
  • [ASM] Add IAST header tainting integration tests (#4814)
  • [ASM] X-Content-Type header missing vulnerability (#4836)
  • [ASM] Add the vale of the cookie/header name in source (#4856)
  • Revert "[ASM] New marshalling system for Waf.Run calls to improve spe… (#4891)

Continuous Profiler

  • [Profiler] Refactoring to better wrap libdatadog (#4763)
  • [Profiler] Add a scenario with obfuscation (#4788)
  • [Profiler] Skip LinuxOnly Tests in VS Test explorer (#4803)
  • [Profiler] Adjust Linux smoke test to avoid flakiness (#4842)
  • [Profiler/CI] Align Cppcheck commandline linux/windows (#4854)
  • [Profiler] Fix compilation warnings (#4855)
  • [Profiler] Fix code hotspot feature tests (#4890)

Debugger

  • [Dynamic Instrumentation] Instrumentation verification fixes (#4612)
  • [Dynamic Instrumentation] Enriched probe status uploads with version and runtime id (#4853)

Data Streams Monitoring

  • [DSM] - Initial IBM MQ support (#4776)

Fixes

  • Stop pushing to the reliability environment (#4810)
  • Tiny fix for crashing if DD_PROFILER_ENABLED is not set (#4849)
  • Fix NullReferenceException in SQS integration (#4860)

Build / Test

  • Build standalone trimmed version for net7.0 (#4727)
  • [Test Package Versions Bump] Updating package versions (#4806)
  • Fix flaky DSM transport test (#4826)
  • Properly read the installed tracer version in dd-dotnet (#4828)
  • Fix config_norm_rules.json and config_prefix_block_list.json (#4830)
  • [CI] Rerun waf download If it times out (#4838)
  • [Test] Add propagator injection unit tests using 128-bit trace-ids (#4840)
  • Try enabling crash dumps in artifact tests (#4841)
  • Try to fix flake in hardcoded secrets test (#4843)
  • Try to fix the pipeline monitor (#4844)
  • [Test Package Versions Bump] Updating package versions (#4846)
  • [CI] Delete previously generated files on Windows (#4848)
  • Update xunit testing to latest (#4850)
  • [Build] Update deb/rpm packaging with arm64 variant (APMON-377) (#4857)
  • Re-instate the building of the system-test docker images (#4858)
  • Add dd-dotnet to path on Windows (#4863)
  • Handle ctrl+c in dd-dotnet (#4864)
  • Add dd-dotnet to path on Linux (#4866)
  • Update to .NET 8 GA release (#4869)
  • Fix system-test snapshot image creation (#4871)
  • Actually, really, definitely, fix the system-tests docker image (#4874)
  • Run ARM64 integration tests against .NET 8 (#4875)
  • Add testing for Microsoft.Data.Sqlite (#4881)
  • Fix the system-test docker images once and for all (#4883)
  • [ASM] Fix snapshot (#4886)
  • Fix localstack not starting issue (#4895)

Miscellaneous

  • Add full null checking to MongoDB and AWS.SDK integrations (#4815)
  • Update source generator to record the "instrumented assemblies" (#4832)
  • Add redacted-error-log telemetry collector and sinks (#4833)
  • Add redaction of telemetry error logs (#4834)
  • Add de-duplication of telemetry logs (#4835)
  • Stop recording individual integration telemetry (#4872)
  • Record duplicate log count in log-message data (#4885)
  • Improve HostMetadata.OsVersion value (#4819)

Changes since 2.41.0

2.41.0

06 Nov 11:33
b92236e
Compare
Choose a tag to compare

Warning

Due to a bug that can cause applications using ASM to crash under some circumstances, please upgrade to 2.42.0

Summary

  • [Tracer] Improvements to the diagnostic tool
  • [Tracer] Bug fixes for mixed-mode assemblies, ducktyping, and WebRequest handling
  • [Tracer] Provisional support for .NET 8
  • [Continuous Profiler] Workaround for unwinding crash
  • [Dynamic Instrumentation] Added PII redaction support

Changes

Tracer

  • Enabled invariant globalization in dd-trace tool (#4721)
  • Include Datadog.Trace in our root-descriptors file (#4723)
  • Diagnostic tool improvements (#4725)
  • Use dd-dotnet in dd-trace (#4732)
  • Add a better error message when inspecting worker process (#4735)
  • Change the installer message in dd-dotnet (#4746)
  • Add provisional support for .NET 8 (#4731)
  • Add error message when IIS is not found (#4774)
  • [Tracer] Elasticsearch Refactor Part 1 (AIT-8764) (#4767)
  • Remove the check command on OSX (#4769)
  • Update context propagation when using OTEL API is Enabled (#4783)
  • Properly feed the arguments to dd-dotnet (#4775)
  • Add support for NLog 5.2.5 (#4772)

CI Visibility

  • [CI Visibility] - BenchmarkDotNet + Datadog Profiler (#4650)

ASM

  • Improve query string obfuscation regex (#4504, #4764)
  • [ASM] Remove debug mode for unit tests (#4728)
  • [ASM]Cleanup null chars (#4733)
  • [ASM] Update IAST source names (#4755)
  • [ASM] Correct location error (#4780)
  • [ASM] Join with char separator bug fix (#4793)

Continuous Profiler

  • [Profiler] Workaround to avoid unwinding SIGSEGV signal handler (#4753)

Debugger

  • [Dynamic Instrumentation] Fixed a crash caused by improper handling of module unload (#4779)
  • [Dynamic Instrumentation] Added PII redaction support (#4786)
  • [Dynamic Instrumentation] Improved probe status polling mechanism + fixed snapshot issues (#4678)

Serverless

  • [Serverless] Support tracing top-level statements for AWS Lambda (#4535)
  • [serverless][SVLS-579] Add span error metadata to DD Lambda Extension request headers (#4743)
  • [Serverless] [Fix PR-4535] EndInvocationAsync should be awaited. (#4752)

Fixes

  • Handle potential NullReferenceException in DSM (#4744)
  • [Tracing] Fix WebRequest bug with existing distributed tracing headers (#4770)
  • Fix bug when duck typing types with very long names (#4756)
  • Avoid loader injection on (#4760)

Build / Test

  • [SLN file] move new test project into test-applications solution folder (#4798)
  • Bump logger version (#4165)
  • [TESTS] Segregate samples logs (#4698)
  • [TESTS]Added BenchmarkDotNet debug helper (#4717)
  • Update native build to use /FS option (#4718)
  • Tweak CopyNativeFilesForAppSecUnitTests to stop it doing so much work (#4724)
  • [Test Package Versions Bump] Updating package versions (#4734)
  • Make compare_throughput stage more robust (#4739)
  • Merge throughput_appsec into throughput stage (#4740)
  • Fix flaky DSM test (#4741)
  • [Test Package Versions Bump] Updating package versions (#4742)
  • Disable profiling integration tests on non-profiler PRs (#4745)
  • [Test Package Versions Bump] Updating package versions (#4758)
  • [DD Tool] Port message changes to dd tool (#4762)
  • Bump Timeit version to v0.1.14 (#4766)
  • [Test Package Versions Bump] Updating package versions (#4773)
  • Add missing dependencies to dotnet_tool job (#4777)
  • Fix installer smoke tests (#4785)
  • Produce "supported versions" artifacts (#4787)
  • Fix MSBuild location in Nuke (#4790)
  • [Test Package Versions Bump] Updating package versions (#4792)
  • Update python packages and use the new image in gitlab (#4794)
  • Increase timeout for query string obfuscator unit tests (#4802)
  • Try to fix flake in DSM test (#4804)
  • Basic smoke tests for .NET chiseled containers (#4805)
  • Fix compilation errors in CodeQL job (#4768)

Miscellaneous

  • [DSM] - Lag metrics support (original PR #4574) (#4720)
  • Update duck-typing documentation with best-practice recommendations (#4761)
  • Update URLs in README.md (#4778)
  • Delete Telemetry V1 implementation (#4750)
  • Rename TelemetryV2 to Telemetry (#4751)

Changes since 2.40.0

2.40.0

16 Oct 12:51
034fdee
Compare
Choose a tag to compare

Warning

Due to a bug that can cause applications using ASM to crash under some circumstances, please upgrade to 2.42.0

Summary

Fixes a possible application crash when using ASM. This issue was introduced in 2.38.0. If you are using ASM with 2.38.0 or 2.39.0, please upgrade to 2.42.0.

Changes

CI Visibility

  • [CI Visibility] Add support for AWS Code Pipeline (#4714)

Continuous Profiler

  • [Profiler] Add GC benchmarks for Windows (#4708)
  • [Profiler] Add Profiler_Version as exported symbol to allow version check in dumps (#4710)

ASM

  • Fix possible application crash (#4726)

Miscellaneous

  • [Tool] Updating Tool checks for Windows scenarios (#4605)

Build / Test

  • Use dd-dotnet in the nuget smoke tests (#4695)
  • Fix various GitHub Actions (#4716)

Changes since 2.39.0

2.39.0

11 Oct 10:13
7e14cde
Compare
Choose a tag to compare

Warning

Due to a bug that can cause applications to crash under some circumstances, please upgrade to 2.42.0

Summary

  • NLog logs-injection / agentless logging no longer requires configuration changes
  • [CI Visibility] Remove ApplicationKey requirement from Intelligent Test Runner and add Unskippable tests support
  • [ASM] - Weak-randomness vulnerability detection
  • [Profiler] - The profiler takes care of some non-restartable syscalls (ex: select, poll...): restart them if the profiler interrupted them and/or avoid interrupting them whenever it's possible
  • [Profiler] - Fix crash when resolving symbols from unloaded modules (ex: ASP.NET)

Changes

Tracer

  • Make NLog configuration optional for Logs Injection/Agentless Logging (#4616)
  • Introducing the Fault-Tolerant Instrumentation: A Self-Healing Mechanism for .NET Instrumentation Failures (disabled by default) (#4470)
  • Add new dd-dotnet tool (#4623)
  • [Tracer] Use peer.service as dddbs for DBM when available (#4619)
  • [Tracer] add dynamodb integration (#4627)
  • Adjust default log folder when running on AAS (#4656)

CI Visibility

  • [CIVisibility] Enable GZip compression on agentless mode (#4637)
  • [CI Visibility] Intelligent Test Runner - Unskippable tests support (#4645)
  • [CI Visibility] Remove ApplicationKey requirement from Intelligent Test Runner (#4659)
  • [CI Visibility] Ensure Code Coverage percentage is always a valid number for the backend. (#4661)
  • [CI Visibility] Improve unshallowing process with fallback commands (#4663)
  • [CI Visibility] LifeTimeManager handling on VSTest (#4671)
  • [CI Visibility] Simplify CiVisibility Telemetry check (#4679)
  • [CI Visibility] Add dropped payloads Telemetry metric (#4681)
  • [CI Visibility] Fix code coverage reporter (#4689)
  • [CI Visibility] Capture network exceptions for telemetry (#4699)
  • [CI Visibility] Telemetry metrics (#4596)

ASM

  • [ASM] Implementation of the weak randomness vulnerability detection (#4629)
  • [ASM] Fix waf memory tests flakiness (#4636)
  • [ASM] Add IAST throughput tests (#4640)
  • [ASM] Limit number of same warning messages in waf benchmarks (#4643)
  • [ASM] Filter AspNetCore.Correlation.* cookies vulnerabilities (#4652)
  • [ASM] Taint Newtonsoft .net framework request body parameters (#4669)
  • [ASM][IAST] Evidence redaction rules update (#4685)
  • [ASM] Refactor the use of enums for WAF return codes (#4688)

Continuous Profiler

  • [Profiler] Add profiler timeit-based benchmarks (#4408)
  • [Profiler] Wrap socket syscalls to prevent application errors (#4488)
  • [Profiler] Clean up profiler C++ code (#4587)
  • [Profiler] Fix flacky unit test on Alpine (#4647)
  • [Profiler] POC for named pipes based IPC (#4649)
  • [Profiler] Revisit the presence of the wrapping library check (#4655)
  • [Profiler] Check choco exit code and retry if needed (#4665)
  • [All] Run throughput jobs when they should run (#4670)
  • [Profiler] Fix issue with Sentinel One Agent (#4672)
  • [Profiler] Clean up profiler benchmark tests (#4673)
  • [Profiler] Change Garbage Collector frame layout (#4696)
  • [Profiler] Fix unit tests flackyness on Alpine (#4697)
  • [Profiler] Fix Preprocessor variable (#4707)

Debugger

  • [Debugger] Run system tests for debugger scenarios (#4657)

Fixes

  • Delete unused Distribution metric (#4635)
  • Add missing metric in agent writer (#4706)

Miscellaneous

  • [ASM] Move files in incorrect directory (#4687)
  • [DSM] - Lag metrics support (#4574)
  • Revert "[DSM ] - Lag metrics support (#4574)" (#4704)
  • Add support for multiple enums in telemetry source generator (#4631)
  • Store CIVisibility (and shared) metrics separately from APM/ASM (#4634)
  • Add artifact tests for the "run" command (#4639)
  • Source generate the metric collector implementations (#4642)
  • Improve the dd-dotnet.sh error message (#4664)
  • Disable LZMA on Linux (#4668)
  • Publish dd-dotnet symbols with the proper path (#4674)
  • [Tracer][Telemetry] Add incentives to impact the telemetry config when adding an integration (#4701)
  • Record TFM value in telemetry (#4702)
  • Stop using public properties in built-in record methods (#4703)
  • Inject serverless headers in agentless telemetry (#4705)
  • [All] Add build-id to Linux binaries (#4711)

Build / Test

  • Add a dd-dotnet test for named pipes (#4646)
  • Package dd-dotnet with the tracer (#4648)
  • Disable dd_dotnet AOT build in OSX (#4658)
  • Updates to source generators (#4660)
  • Add copyright headers to source generated code (#4662)
  • Add dd-dotnet to bundle nuget package (#4667)
  • Add smoke tests for dd-dotnet.sh and dd-dotnet.cmd (#4675)
  • Fix flake in TracerSettingsTests due to using environment variables (#4677)
  • Try to fix GitLab build (#4684)
  • Move cppcheck calls to separate stage (#4690)
  • Rename intermediate Linux artifacts for consistency (#4692)
  • Re-enable runnign the throughput tests on all PRs (#4693)
  • Bump timeitsharp version (#4694)
  • Try to fix GitLab flake (#4709)

Changes since 2.38.0

2.38.0

20 Sep 12:20
cd4ce84
Compare
Choose a tag to compare

Warning

Due to a bug that can cause applications to crash under some circumstances, please upgrade to 2.42.0

Summary

  • [Tracing] This release mainly contains tracing support for Amazon Kinesis and Azure.Messaging.ServiceBus v7.14.0. For the latter, it builds on top of the built-in OpenTelemetry support so you'll need to set DD_TRACE_OTEL_ENABLED to true to get tracing.
  • [CI Visibility] Support for Code Coverage exclusion filters

Changes

Tracer

  • [Tracer] add Kinesis integration (#4521)
  • [Tracing] Add first-class tracing support for Azure Service Bus (#4575)
  • [DSM] Add datastreams monitoring to Azure Service Bus integration (#4576)
  • Lazy initialize the AggregatedMetrics. (#4602)
  • Fix HeaderTagsNormalizationFixEnabled is not saved in settings (#4604)
  • Fix race-condition in DuckType (#4608)
  • Restrict sending APM-related metrics when running in CI app (#4618)
  • Enable v2 telemetry by default (#4638)

CI Visibility

  • [CIVisibility] Add code coverage exclusion filters (#4507)
  • [CI Visibility] Allow explicitly disabling CI Visibility (#4550)
  • [CI Visibility] dd-trace ci configure improvements (#4572)
  • [CI Visibility] Adds support for System.Diagnostics.CodeAnalysis.ExcludeFromCodeCoverageAttribute (#4590)
  • [CI Visibility] BenchmarkDotNet instrumentation refactor and fixes (#4628)

ASM

  • [ASM] forgotten user blocking capability (#4545)
  • [ASM] Filter azure assemblies in the stack of vulnerabilities (#4577)
  • [ASM] New marshalling system for Waf.Run calls to improve speed and reduce allocations (#4302)
  • [ASM] Waf update to 1.14.0 (#4523)
  • [ASM] IAST fix for the 0 line bug (#4568)
  • [ASM] Add waf benchmark with attack (#4578)
  • [ASM] Iast telemetry metrics: executed instrumentation points (#4586)
  • [ASM] Update IAST instrumented tests scripts for local debugging (#4595)
  • [ASM] Fix IAST MVC telemetry test in Net4 (#4606)
  • [ASM] Improve waf benchmarks (#4609)
  • [ASM] Add request.tainted metric (#4610)
  • [ASM] Update waf ruleset to 1.8 (#4633)

Continuous Profiler

  • [Profiler] Add missing runtime metrics (#4436)
  • [Profiler] Remove unneeded debug logs (to be replaced by frames related metrics) (#4493)
  • [Profiler] Add tests for Wrapper library + pthread_create for alpine (#4560)
  • [Profiler] Improve integration tests output (#4569)
  • [Profiler] Fix log message to have thread id in hexadecimal (#4583)
  • [Profiler] Avoid returning managed thread with invalid handle (#4584)
  • [Profiler] Fix vcxproj and filters (#4585)
  • [Profiler] Add thread start/stop events to timeline (#4597)

Serverless

  • [Serverless][AWS] Fix serialization to use JsonConverter (#4559)
  • Refactor LambdaMetadata settings creation (#4624)
  • Disable telemetry metrics when running in serverless environment (#4625)

Fixes

  • Fix runtime metrics bugs + allow DD_TAGS tagging (#4580)

Build / Test

  • Change Samples.TracingWithoutLimits to use Samples.Shared (#3916)
  • Swap Samples.WebRequest to use Activity (#4101)
  • Assert that we don't timeout for MockTracerAgent (#4486)
  • Add a retry to the macos unit tests (#4571)
  • Try to remove more flake (#4581)
  • Add separate log folder for throughput run (#4594)
  • Crank: add logs as artifacts (#4607)
  • Fix HotChocolate tests and bump version to latest (#4614)
  • Fix flake in smoke tests (#4617)
  • Fix GraphQL integration tests (#4620)
  • Fix flake in telemetry metric unit test (#4622)
  • Fix docker-compose stop related flake (#4626)
  • Update CODEOWNERS for serverless (#4630)
  • Skip flaky Waf Memory Tests (#4641)

Miscellaneous

  • Initial version of the Datadog AutoInstrumentation Generator (#4422)
  • Set the Integration.Enabled telemetry flag for direct log submission (#4552)
  • [Test Package Versions Bump] Updating package versions (#4555)
  • DuckType improvements (#4582)
  • Use alpine base for lib-injection image (#4589)
  • Update native log verbosity (#4591)
  • [Test Package Versions Bump] Updating package versions (#4593)
  • Delete unused helper (#4600)
  • Add support for "missing" tag values in telemetry metrics (#4601)
  • Support for Delegate instrumentation (#4613)
  • Ducktyping ValueWithType struct support (#4621)

Changes since 2.37.0

2.37.0

31 Aug 09:17
1cbf0f9
Compare
Choose a tag to compare

Summary

[DSM] - Report default time in queue and payload size

Changes

Tracer

  • [Tracer] Fix telemetry metrics and add validator (#4543)
  • [Tracer] use 2^64-1 as the modulo in the sampling formula (#4548)
  • [Tracer] Make sure Process is not used concurrently (#4567)

CI Visibility

  • [CI Visibility] ConfigureCiCommand fixes. (#4558)
  • [CI Visibility] Update CI specs (#4565)

ASM

  • [ASM] Create new appsec waf benchmark with benchmark agent (#4534)
  • [ASM] Fix ASM WAF benchmarks (#4547)
  • [ASM] DecompileDelegate lib bugfix (#4554)
  • [ASM] bugfix - stop misreporting RC update failure (#4557)

Continuous Profiler

  • [Profiler] Add Sample value type provider (#4480)
  • [Profiler] Fix race in ManagedThreadList class (#4513)
  • [Profiler] Prevent symbols resolution from crashing on Windows (#4564)

Build / Test

  • Add OpenTelemetry Benchmarks (#4381)
  • Test Package Versions Bump, Updating package versions (#4539)
  • Bump the version of GRPC tested by default (in Windows) (#4542)
  • Validate that we only use known configuration keys in telemetry (#4546)
  • Fix flake in StackExchange.Redis integration tests (#4549)
  • Fix warning in sample (#4551)
  • Add a GH action for forcing required checks for version-bump PR to success (#4556)
  • Fix version-bump PR forcer action (#4563)

Miscellaneous

  • [DSM] - Default time in queue + payload size (#4520)
  • Migrate from Spectre.Console.Cli to System.CommandLine (#4395)

Changes since 2.36.0