Skip to content

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

Merged
andrewlock merged 1 commit intomasterfrom
andrew/revert-debugger-refactoring
Aug 18, 2025
Merged

Disable debugger initialization if it's not enabled initially#7398
andrewlock merged 1 commit intomasterfrom
andrew/revert-debugger-refactoring

Conversation

@andrewlock
Copy link
Member

@andrewlock andrewlock commented Aug 18, 2025

Summary of changes

Disables the debugger initialization if it's not explicitly enabled

Reason for change

We have been seeing some hangs in CI which seem to be caused by the debugger (based on log messages) and I suspect are due to this refactoring. Rather than revert that large piece of refactoring (and causing massive conflicts for the remote-enablement PR), for now we primarily want to ensure customers not using the debugger are not impacted.

Implementation details

Check the debugger and exception replay settings to see if the debugger is required. If not, bail out of initialization immediately.

Test coverage

This is the test

@datadog-datadog-prod-us1
Copy link

datadog-datadog-prod-us1 bot commented Aug 18, 2025

✅ Tests

🎉 All green!

❄️ No new flaky tests detected
🧪 All tests passed

This comment will be updated automatically if new data arrives.
🔗 Commit SHA: c919c13 | Docs | Was this helpful? Give us feedback!

@pr-commenter
Copy link

pr-commenter bot commented Aug 18, 2025

Benchmarks

Benchmarks Report for benchmark platform 🐌

Benchmarks for #7398 compared to master:

  • 2 benchmarks are slower, with geometric mean 1.158
  • 7 benchmarks have fewer allocations
  • 6 benchmarks have more allocations

The following thresholds were used for comparing the benchmark speeds:

  • Mann–Whitney U test with statistical test for significance of 5%
  • Only results indicating a difference greater than 10% and 0.3 ns are considered.

Allocation changes below 0.5% are ignored.

Benchmark details

Benchmarks.Trace.ActivityBenchmark - Same speed ✔️ More allocations ⚠️

More allocations ⚠️ in #7398

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.ActivityBenchmark.StartStopWithChild‑net472 6.01 KB 6.11 KB 103 B 1.72%

Fewer allocations 🎉 in #7398

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.ActivityBenchmark.StartStopWithChild‑netcoreapp3.1 5.7 KB 5.67 KB -32 B -0.56%
Benchmarks.Trace.ActivityBenchmark.StartStopWithChild‑net6.0 5.51 KB 5.48 KB -34 B -0.62%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartStopWithChild net6.0 10.6μs 57.5ns 309ns 0 0 0 5.51 KB
master StartStopWithChild netcoreapp3.1 13.4μs 64.8ns 282ns 0 0 0 5.7 KB
master StartStopWithChild net472 22.5μs 127ns 822ns 1.06 0.317 0.106 6.01 KB
#7398 StartStopWithChild net6.0 10.7μs 55.2ns 271ns 0 0 0 5.48 KB
#7398 StartStopWithChild netcoreapp3.1 14.2μs 71.5ns 312ns 0 0 0 5.67 KB
#7398 StartStopWithChild net472 22.2μs 125ns 851ns 0.958 0.213 0 6.11 KB
Benchmarks.Trace.AgentWriterBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 936μs 239ns 895ns 0 0 0 2.71 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 1.03ms 83.6ns 313ns 0 0 0 2.7 KB
master WriteAndFlushEnrichedTraces net472 1.2ms 563ns 2.18μs 0 0 0 3.31 KB
#7398 WriteAndFlushEnrichedTraces net6.0 923μs 73.4ns 275ns 0 0 0 2.71 KB
#7398 WriteAndFlushEnrichedTraces netcoreapp3.1 1.03ms 671ns 2.51μs 0 0 0 2.7 KB
#7398 WriteAndFlushEnrichedTraces net472 1.2ms 59.6ns 215ns 0 0 0 3.31 KB
Benchmarks.Trace.Asm.AppSecBodyBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master AllCycleSimpleBody net6.0 323μs 233ns 841ns 0 0 0 173.45 KB
master AllCycleSimpleBody netcoreapp3.1 466μs 533ns 2.07μs 0 0 0 175.64 KB
master AllCycleSimpleBody net472 429μs 121ns 438ns 29.2 0 0 195.79 KB
master AllCycleMoreComplexBody net6.0 328μs 570ns 2.05μs 0 0 0 176.96 KB
master AllCycleMoreComplexBody netcoreapp3.1 483μs 1.49μs 5.77μs 0 0 0 179.06 KB
master AllCycleMoreComplexBody net472 439μs 120ns 465ns 30.2 0 0 199.31 KB
master ObjectExtractorSimpleBody net6.0 324ns 0.216ns 0.837ns 0 0 0 280 B
master ObjectExtractorSimpleBody netcoreapp3.1 409ns 2.29ns 13.3ns 0 0 0 272 B
master ObjectExtractorSimpleBody net472 303ns 0.0944ns 0.353ns 0.044 0 0 281 B
master ObjectExtractorMoreComplexBody net6.0 6.2μs 32.4ns 152ns 0 0 0 3.78 KB
master ObjectExtractorMoreComplexBody netcoreapp3.1 7.82μs 23.8ns 92ns 0 0 0 3.69 KB
master ObjectExtractorMoreComplexBody net472 6.67μs 2.21ns 7.97ns 0.602 0 0 3.8 KB
#7398 AllCycleSimpleBody net6.0 316μs 1.52μs 6.25μs 0 0 0 173.45 KB
#7398 AllCycleSimpleBody netcoreapp3.1 457μs 1.66μs 6.43μs 0 0 0 175.64 KB
#7398 AllCycleSimpleBody net472 426μs 121ns 469ns 29.2 0 0 195.79 KB
#7398 AllCycleMoreComplexBody net6.0 327μs 193ns 695ns 0 0 0 176.95 KB
#7398 AllCycleMoreComplexBody netcoreapp3.1 484μs 1.09μs 4.21μs 0 0 0 179.06 KB
#7398 AllCycleMoreComplexBody net472 434μs 112ns 432ns 30.2 0 0 199.31 KB
#7398 ObjectExtractorSimpleBody net6.0 319ns 1.76ns 10.4ns 0 0 0 280 B
#7398 ObjectExtractorSimpleBody netcoreapp3.1 404ns 2.05ns 9.85ns 0 0 0 272 B
#7398 ObjectExtractorSimpleBody net472 305ns 0.0355ns 0.133ns 0.0445 0 0 281 B
#7398 ObjectExtractorMoreComplexBody net6.0 6.34μs 28.8ns 111ns 0 0 0 3.78 KB
#7398 ObjectExtractorMoreComplexBody netcoreapp3.1 7.81μs 32.5ns 126ns 0 0 0 3.69 KB
#7398 ObjectExtractorMoreComplexBody net472 6.68μs 2.28ns 8.53ns 0.57 0 0 3.8 KB
Benchmarks.Trace.Asm.AppSecEncoderBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EncodeArgs net6.0 77.6μs 19.1ns 71.5ns 0 0 0 32.4 KB
master EncodeArgs netcoreapp3.1 96.4μs 201ns 753ns 0 0 0 32.4 KB
master EncodeArgs net472 109μs 55.8ns 216ns 4.92 0 0 32.5 KB
master EncodeLegacyArgs net6.0 142μs 34.2ns 128ns 0 0 0 2.15 KB
master EncodeLegacyArgs netcoreapp3.1 197μs 61.7ns 214ns 0 0 0 2.15 KB
master EncodeLegacyArgs net472 265μs 25.8ns 100ns 0 0 0 2.16 KB
#7398 EncodeArgs net6.0 76.5μs 21.9ns 81.8ns 0 0 0 32.4 KB
#7398 EncodeArgs netcoreapp3.1 98.1μs 301ns 1.17μs 0 0 0 32.4 KB
#7398 EncodeArgs net472 110μs 9.16ns 35.5ns 4.96 0 0 32.51 KB
#7398 EncodeLegacyArgs net6.0 147μs 211ns 816ns 0 0 0 2.15 KB
#7398 EncodeLegacyArgs netcoreapp3.1 199μs 200ns 773ns 0 0 0 2.14 KB
#7398 EncodeLegacyArgs net472 263μs 68.3ns 265ns 0 0 0 2.16 KB
Benchmarks.Trace.Asm.AppSecWafBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunWafRealisticBenchmark net6.0 394μs 95.6ns 370ns 0 0 0 4.55 KB
master RunWafRealisticBenchmark netcoreapp3.1 422μs 631ns 2.28μs 0 0 0 4.48 KB
master RunWafRealisticBenchmark net472 431μs 70.2ns 272ns 0 0 0 4.66 KB
master RunWafRealisticBenchmarkWithAttack net6.0 292μs 57.8ns 224ns 0 0 0 2.24 KB
master RunWafRealisticBenchmarkWithAttack netcoreapp3.1 691μs 13.8μs 138μs 0 0 0 2.22 KB
master RunWafRealisticBenchmarkWithAttack net472 314μs 82.1ns 318ns 0 0 0 2.29 KB
#7398 RunWafRealisticBenchmark net6.0 399μs 140ns 505ns 0 0 0 4.56 KB
#7398 RunWafRealisticBenchmark netcoreapp3.1 420μs 249ns 933ns 0 0 0 4.48 KB
#7398 RunWafRealisticBenchmark net472 442μs 119ns 461ns 0 0 0 4.66 KB
#7398 RunWafRealisticBenchmarkWithAttack net6.0 289μs 39.6ns 153ns 0 0 0 2.24 KB
#7398 RunWafRealisticBenchmarkWithAttack netcoreapp3.1 681μs 13.9μs 139μs 0 0 0 2.22 KB
#7398 RunWafRealisticBenchmarkWithAttack net472 312μs 56ns 217ns 0 0 0 2.29 KB
Benchmarks.Trace.AspNetCoreBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendRequest net6.0 61.4μs 63.9ns 230ns 0 0 0 14.52 KB
master SendRequest netcoreapp3.1 71.6μs 40.2ns 151ns 0 0 0 17.42 KB
master SendRequest net472 0.0114ns 0.00161ns 0.00603ns 0 0 0 0 b
#7398 SendRequest net6.0 62.3μs 53.6ns 201ns 0 0 0 14.52 KB
#7398 SendRequest netcoreapp3.1 70.6μs 86.7ns 336ns 0 0 0 17.42 KB
#7398 SendRequest net472 0.0125ns 0.00152ns 0.0059ns 0 0 0 0 b
Benchmarks.Trace.CharSliceBenchmark - Slower ⚠️ More allocations ⚠️

Slower ⚠️ in #7398

Benchmark diff/base Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑net6.0 1.154 798,607.62 921,313.96

More allocations ⚠️ in #7398

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑netcoreapp3.1 0 b 1 B 1 B

Fewer allocations 🎉 in #7398

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑net6.0 4 B 1 B -3 B -75.00%
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSlice‑net472 73 B 0 b -73 B -100.00%
Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑net472 47 B 0 b -47 B -100.00%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master OriginalCharSlice net6.0 2.05ms 7.98μs 29.9μs 0 0 0 640 KB
master OriginalCharSlice netcoreapp3.1 2.1ms 2.98μs 10.7μs 0 0 0 640 KB
master OriginalCharSlice net472 2.59ms 110ns 425ns 100 0 0 641.95 KB
master OptimizedCharSlice net6.0 1.39ms 475ns 1.78μs 0 0 0 4 B
master OptimizedCharSlice netcoreapp3.1 1.74ms 429ns 1.66μs 0 0 0 1 B
master OptimizedCharSlice net472 1.95ms 354ns 1.33μs 0 0 0 73 B
master OptimizedCharSliceWithPool net6.0 799μs 32.4ns 125ns 0 0 0 4 B
master OptimizedCharSliceWithPool netcoreapp3.1 884μs 94.6ns 366ns 0 0 0 0 b
master OptimizedCharSliceWithPool net472 1.14ms 57ns 205ns 0 0 0 47 B
#7398 OriginalCharSlice net6.0 1.97ms 6.09μs 23.6μs 0 0 0 640.01 KB
#7398 OriginalCharSlice netcoreapp3.1 2.12ms 6.66μs 23.1μs 0 0 0 640 KB
#7398 OriginalCharSlice net472 2.61ms 435ns 1.63μs 100 0 0 641.95 KB
#7398 OptimizedCharSlice net6.0 1.36ms 283ns 982ns 0 0 0 4 B
#7398 OptimizedCharSlice netcoreapp3.1 1.68ms 402ns 1.56μs 0 0 0 1 B
#7398 OptimizedCharSlice net472 1.98ms 461ns 1.79μs 0 0 0 0 b
#7398 OptimizedCharSliceWithPool net6.0 922μs 183ns 708ns 0 0 0 1 B
#7398 OptimizedCharSliceWithPool netcoreapp3.1 839μs 353ns 1.37μs 0 0 0 1 B
#7398 OptimizedCharSliceWithPool net472 1.13ms 40.6ns 157ns 0 0 0 0 b
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark - Slower ⚠️ More allocations ⚠️

Slower ⚠️ in #7398

Benchmark diff/base Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark.WriteAndFlushEnrichedTraces‑netcoreapp3.1 1.163 659,623.36 766,980.80

More allocations ⚠️ in #7398

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark.WriteAndFlushEnrichedTraces‑net472 55.74 KB 56.53 KB 783 B 1.40%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net6.0 724μs 4.01μs 25.7μs 0 0 0 41.8 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 652μs 3.7μs 26.9μs 0 0 0 41.99 KB
master WriteAndFlushEnrichedTraces net472 972μs 5.4μs 36.2μs 4.81 0 0 55.74 KB
#7398 WriteAndFlushEnrichedTraces net6.0 706μs 714ns 2.57μs 0 0 0 41.73 KB
#7398 WriteAndFlushEnrichedTraces netcoreapp3.1 774μs 3.7μs 14.3μs 0 0 0 42.1 KB
#7398 WriteAndFlushEnrichedTraces net472 882μs 4.28μs 21.8μs 8.33 0 0 56.53 KB
Benchmarks.Trace.DbCommandBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteNonQuery net6.0 1.83μs 8ns 31ns 0 0 0 1.02 KB
master ExecuteNonQuery netcoreapp3.1 2.48μs 11.2ns 43.3ns 0 0 0 1.02 KB
master ExecuteNonQuery net472 2.84μs 6.48ns 25.1ns 0.153 0.0139 0 987 B
#7398 ExecuteNonQuery net6.0 1.86μs 6.54ns 25.3ns 0 0 0 1.02 KB
#7398 ExecuteNonQuery netcoreapp3.1 2.48μs 7.22ns 26ns 0 0 0 1.02 KB
#7398 ExecuteNonQuery net472 2.73μs 6.7ns 26ns 0.149 0.0136 0 987 B
Benchmarks.Trace.ElasticsearchBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master CallElasticsearch net6.0 1.77μs 3.11ns 12ns 0 0 0 1.03 KB
master CallElasticsearch netcoreapp3.1 2.24μs 8.49ns 31.8ns 0 0 0 1.03 KB
master CallElasticsearch net472 3.56μs 2.65ns 9.92ns 0.16 0 0 1.04 KB
master CallElasticsearchAsync net6.0 1.77μs 1.23ns 4.76ns 0 0 0 1.01 KB
master CallElasticsearchAsync netcoreapp3.1 2.45μs 6.24ns 24.2ns 0 0 0 1.08 KB
master CallElasticsearchAsync net472 3.85μs 5.05ns 19.6ns 0.172 0 0 1.1 KB
#7398 CallElasticsearch net6.0 1.76μs 8.62ns 34.5ns 0 0 0 1.03 KB
#7398 CallElasticsearch netcoreapp3.1 2.29μs 9.86ns 38.2ns 0 0 0 1.03 KB
#7398 CallElasticsearch net472 3.59μs 6.88ns 26.6ns 0.159 0 0 1.04 KB
#7398 CallElasticsearchAsync net6.0 1.93μs 8.2ns 31.8ns 0 0 0 1.01 KB
#7398 CallElasticsearchAsync netcoreapp3.1 2.48μs 10.1ns 39ns 0 0 0 1.08 KB
#7398 CallElasticsearchAsync net472 3.87μs 3.46ns 13.4ns 0.156 0 0 1.1 KB
Benchmarks.Trace.GraphQLBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteAsync net6.0 1.84μs 8.96ns 40.1ns 0 0 0 952 B
master ExecuteAsync netcoreapp3.1 2.29μs 5.96ns 23.1ns 0 0 0 952 B
master ExecuteAsync net472 2.5μs 2.64ns 10.2ns 0.136 0 0 915 B
#7398 ExecuteAsync net6.0 1.83μs 0.588ns 2.2ns 0 0 0 952 B
#7398 ExecuteAsync netcoreapp3.1 2.27μs 7.59ns 29.4ns 0 0 0 952 B
#7398 ExecuteAsync net472 2.65μs 2.42ns 9.06ns 0.133 0 0 915 B
Benchmarks.Trace.HttpClientBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendAsync net6.0 6.89μs 7.09ns 25.5ns 0 0 0 2.36 KB
master SendAsync netcoreapp3.1 8.62μs 20.4ns 76.3ns 0 0 0 2.9 KB
master SendAsync net472 12.1μs 11.6ns 45.1ns 0.483 0 0 3.18 KB
#7398 SendAsync net6.0 7.03μs 14.5ns 54.1ns 0 0 0 2.36 KB
#7398 SendAsync netcoreapp3.1 8.14μs 27.6ns 103ns 0 0 0 2.9 KB
#7398 SendAsync net472 12.1μs 7.2ns 27.9ns 0.481 0 0 3.18 KB
Benchmarks.Trace.Iast.StringAspectsBenchmark - Same speed ✔️ More allocations ⚠️

More allocations ⚠️ in #7398

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑net472 57.34 KB 65.54 KB 8.19 KB 14.29%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑netcoreapp3.1 42.64 KB 45.63 KB 2.99 KB 7.02%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatBenchmark‑net6.0 43.44 KB 44.05 KB 608 B 1.40%

Fewer allocations 🎉 in #7398

Benchmark Base Allocated Diff Allocated Change Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑net472 286.72 KB 278.53 KB -8.19 KB -2.86%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑net6.0 276.5 KB 259.56 KB -16.94 KB -6.13%

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StringConcatBenchmark net6.0 49.7μs 292ns 2.48μs 0 0 0 43.44 KB
master StringConcatBenchmark netcoreapp3.1 48.8μs 251ns 1.26μs 0 0 0 42.64 KB
master StringConcatBenchmark net472 56.4μs 273ns 1.09μs 0 0 0 57.34 KB
master StringConcatAspectBenchmark net6.0 471μs 1.88μs 6.77μs 0 0 0 276.5 KB
master StringConcatAspectBenchmark netcoreapp3.1 512μs 2.03μs 7.59μs 0 0 0 273.2 KB
master StringConcatAspectBenchmark net472 406μs 2.09μs 9.34μs 0 0 0 286.72 KB
#7398 StringConcatBenchmark net6.0 46.7μs 268ns 2.09μs 0 0 0 44.05 KB
#7398 StringConcatBenchmark netcoreapp3.1 53μs 628ns 6.06μs 0 0 0 45.63 KB
#7398 StringConcatBenchmark net472 57.2μs 118ns 440ns 0 0 0 65.54 KB
#7398 StringConcatAspectBenchmark net6.0 479μs 2.01μs 8.77μs 0 0 0 259.56 KB
#7398 StringConcatAspectBenchmark netcoreapp3.1 510μs 2.63μs 12.1μs 0 0 0 273.63 KB
#7398 StringConcatAspectBenchmark net472 408μs 2.31μs 15.7μs 0 0 0 278.53 KB
Benchmarks.Trace.ILoggerBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 2.5μs 12.1ns 46.7ns 0 0 0 1.7 KB
master EnrichedLog netcoreapp3.1 3.34μs 11.4ns 42.7ns 0 0 0 1.7 KB
master EnrichedLog net472 3.86μs 4.72ns 18.3ns 0.252 0 0 1.64 KB
#7398 EnrichedLog net6.0 2.53μs 12.5ns 51.7ns 0 0 0 1.7 KB
#7398 EnrichedLog netcoreapp3.1 3.42μs 16.1ns 66.5ns 0 0 0 1.7 KB
#7398 EnrichedLog net472 3.89μs 4.01ns 15.5ns 0.252 0 0 1.64 KB
Benchmarks.Trace.Log4netBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 123μs 76.2ns 275ns 0 0 0 4.31 KB
master EnrichedLog netcoreapp3.1 128μs 147ns 551ns 0 0 0 4.31 KB
master EnrichedLog net472 167μs 59ns 221ns 0 0 0 4.52 KB
#7398 EnrichedLog net6.0 123μs 173ns 598ns 0 0 0 4.31 KB
#7398 EnrichedLog netcoreapp3.1 139μs 741ns 3.99μs 0 0 0 4.31 KB
#7398 EnrichedLog net472 167μs 55.8ns 201ns 0 0 0 4.52 KB
Benchmarks.Trace.NLogBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 4.85μs 23.1ns 92.5ns 0 0 0 2.26 KB
master EnrichedLog netcoreapp3.1 6.96μs 23.3ns 90.4ns 0 0 0 2.26 KB
master EnrichedLog net472 7.57μs 5.4ns 20.9ns 0.304 0 0 2.08 KB
#7398 EnrichedLog net6.0 5.08μs 13.2ns 51.1ns 0 0 0 2.26 KB
#7398 EnrichedLog netcoreapp3.1 6.63μs 20.7ns 80.1ns 0 0 0 2.26 KB
#7398 EnrichedLog net472 7.42μs 6.21ns 24ns 0.296 0 0 2.08 KB
Benchmarks.Trace.RedisBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendReceive net6.0 1.93μs 7.43ns 28.8ns 0 0 0 1.2 KB
master SendReceive netcoreapp3.1 2.6μs 9.78ns 37.9ns 0 0 0 1.2 KB
master SendReceive net472 3.1μs 3.39ns 12.7ns 0.186 0 0 1.2 KB
#7398 SendReceive net6.0 2μs 9.27ns 39.3ns 0 0 0 1.2 KB
#7398 SendReceive netcoreapp3.1 2.64μs 12ns 45.1ns 0 0 0 1.2 KB
#7398 SendReceive net472 3.15μs 4.28ns 16ns 0.189 0 0 1.2 KB
Benchmarks.Trace.SerilogBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net6.0 4.12μs 10ns 38.9ns 0 0 0 1.58 KB
master EnrichedLog netcoreapp3.1 5.54μs 9.45ns 35.4ns 0 0 0 1.63 KB
master EnrichedLog net472 6.74μs 7.29ns 28.2ns 0.301 0 0 2.03 KB
#7398 EnrichedLog net6.0 4.24μs 1.17ns 4.05ns 0 0 0 1.58 KB
#7398 EnrichedLog netcoreapp3.1 5.5μs 12.5ns 48.6ns 0 0 0 1.63 KB
#7398 EnrichedLog net472 6.71μs 9.84ns 38.1ns 0.301 0 0 2.03 KB
Benchmarks.Trace.SpanBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartFinishSpan net6.0 744ns 3.69ns 15.2ns 0 0 0 576 B
master StartFinishSpan netcoreapp3.1 918ns 4.89ns 24.4ns 0 0 0 576 B
master StartFinishSpan net472 942ns 0.77ns 2.88ns 0.0903 0 0 578 B
master StartFinishScope net6.0 883ns 4.1ns 14.8ns 0 0 0 696 B
master StartFinishScope netcoreapp3.1 1.12μs 5.32ns 22.6ns 0 0 0 696 B
master StartFinishScope net472 1.1μs 0.487ns 1.88ns 0.0994 0 0 658 B
#7398 StartFinishSpan net6.0 761ns 2.47ns 9.55ns 0 0 0 576 B
#7398 StartFinishSpan netcoreapp3.1 929ns 5.18ns 31.1ns 0 0 0 576 B
#7398 StartFinishSpan net472 904ns 1.75ns 6.78ns 0.0902 0 0 578 B
#7398 StartFinishScope net6.0 895ns 4.09ns 15.9ns 0 0 0 696 B
#7398 StartFinishScope netcoreapp3.1 1.08μs 6ns 35.5ns 0 0 0 696 B
#7398 StartFinishScope net472 1.09μs 0.472ns 1.76ns 0.104 0 0 658 B
Benchmarks.Trace.TraceAnnotationsBenchmark - Same speed ✔️ Same allocations ✔️

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunOnMethodBegin net6.0 1.05μs 5.54ns 27.7ns 0 0 0 697 B
master RunOnMethodBegin netcoreapp3.1 1.37μs 7.21ns 38.8ns 0 0 0 697 B
master RunOnMethodBegin net472 1.37μs 0.829ns 3.21ns 0.103 0 0 658 B
#7398 RunOnMethodBegin net6.0 1.02μs 5.55ns 31.4ns 0 0 0 696 B
#7398 RunOnMethodBegin netcoreapp3.1 1.35μs 7.11ns 36.2ns 0 0 0 696 B
#7398 RunOnMethodBegin net472 1.37μs 0.48ns 1.86ns 0.104 0 0 658 B

@dd-trace-dotnet-ci-bot
Copy link

dd-trace-dotnet-ci-bot bot commented Aug 18, 2025

Execution-Time Benchmarks Report ⏱️

Execution-time results for samples comparing the following branches/commits:

Execution-time benchmarks measure the whole time it takes to execute a program. And are intended to measure the one-off costs. Cases where the execution time results for the PR are worse than latest master results are shown in red. The following thresholds were used for comparing the execution times:

  • Welch test with statistical test for significance of 5%
  • Only results indicating a difference greater than 5% and 5 ms are considered.

Note that these results are based on a single point-in-time result for each branch. For full results, see the dashboard.

Graphs show the p99 interval based on the mean and StdDev of the test run, as well as the mean value of the run (shown as a diamond below the graph).

gantt
    title Execution time (ms) FakeDbCommand (.NET Framework 4.8) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7398) - mean (72ms)  : 70, 73
     .   : milestone, 72,
    master - mean (72ms)  : 71, 73
     .   : milestone, 72,

    section Baseline
    This PR (7398) - mean (68ms)  : 65, 72
     .   : milestone, 68,
    master - mean (68ms)  : 65, 71
     .   : milestone, 68,

    section CallTarget+Inlining+NGEN
    This PR (7398) - mean (1,000ms)  : 975, 1026
     .   : milestone, 1000,
    master - mean (996ms)  : 974, 1018
     .   : milestone, 996,

Loading
gantt
    title Execution time (ms) FakeDbCommand (.NET Core 3.1) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7398) - mean (107ms)  : 106, 108
     .   : milestone, 107,
    master - mean (106ms)  : 105, 108
     .   : milestone, 106,

    section Baseline
    This PR (7398) - mean (106ms)  : 103, 110
     .   : milestone, 106,
    master - mean (106ms)  : 103, 108
     .   : milestone, 106,

    section CallTarget+Inlining+NGEN
    This PR (7398) - mean (712ms)  : 699, 726
     .   : milestone, 712,
    master - mean (714ms)  : 700, 727
     .   : milestone, 714,

Loading
gantt
    title Execution time (ms) FakeDbCommand (.NET 6) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7398) - mean (95ms)  : 94, 96
     .   : milestone, 95,
    master - mean (94ms)  : 93, 95
     .   : milestone, 94,

    section Baseline
    This PR (7398) - mean (94ms)  : 91, 96
     .   : milestone, 94,
    master - mean (93ms)  : 91, 95
     .   : milestone, 93,

    section CallTarget+Inlining+NGEN
    This PR (7398) - mean (667ms)  : 649, 685
     .   : milestone, 667,
    master - mean (670ms)  : 659, 681
     .   : milestone, 670,

Loading
gantt
    title Execution time (ms) FakeDbCommand (.NET 8) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7398) - mean (94ms)  : 93, 95
     .   : milestone, 94,
    master - mean (93ms)  : 92, 94
     .   : milestone, 93,

    section Baseline
    This PR (7398) - mean (93ms)  : 91, 95
     .   : milestone, 93,
    master - mean (92ms)  : 90, 94
     .   : milestone, 92,

    section CallTarget+Inlining+NGEN
    This PR (7398) - mean (601ms)  : 591, 611
     .   : milestone, 601,
    master - mean (604ms)  : 592, 615
     .   : milestone, 604,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET Framework 4.8) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7398) - mean (209ms)  : crit, 203, 214
     .   : crit, milestone, 209,
    master - mean (197ms)  : 193, 201
     .   : milestone, 197,

    section Baseline
    This PR (7398) - mean (206ms)  : 201, 210
     .   : milestone, 206,
    master - mean (193ms)  : 188, 198
     .   : milestone, 193,

    section CallTarget+Inlining+NGEN
    This PR (7398) - mean (1,146ms)  : 1108, 1184
     .   : milestone, 1146,
    master - mean (1,114ms)  : 1092, 1136
     .   : milestone, 1114,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET Core 3.1) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7398) - mean (282ms)  : 277, 287
     .   : milestone, 282,
    master - mean (280ms)  : 277, 283
     .   : milestone, 280,

    section Baseline
    This PR (7398) - mean (293ms)  : 286, 300
     .   : milestone, 293,
    master - mean (280ms)  : 273, 287
     .   : milestone, 280,

    section CallTarget+Inlining+NGEN
    This PR (7398) - mean (917ms)  : 898, 937
     .   : milestone, 917,
    master - mean (915ms)  : 894, 935
     .   : milestone, 915,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET 6) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7398) - mean (274ms)  : 270, 277
     .   : milestone, 274,
    master - mean (272ms)  : 268, 276
     .   : milestone, 272,

    section Baseline
    This PR (7398) - mean (275ms)  : 267, 282
     .   : milestone, 275,
    master - mean (271ms)  : 265, 276
     .   : milestone, 271,

    section CallTarget+Inlining+NGEN
    This PR (7398) - mean (901ms)  : 872, 929
     .   : milestone, 901,
    master - mean (903ms)  : 875, 931
     .   : milestone, 903,

Loading
gantt
    title Execution time (ms) HttpMessageHandler (.NET 8) 
    dateFormat  X
    axisFormat %s
    todayMarker off
    section Bailout
    This PR (7398) - mean (278ms)  : 270, 285
     .   : milestone, 278,
    master - mean (274ms)  : 270, 279
     .   : milestone, 274,

    section Baseline
    This PR (7398) - mean (277ms)  : 272, 283
     .   : milestone, 277,
    master - mean (276ms)  : 268, 284
     .   : milestone, 276,

    section CallTarget+Inlining+NGEN
    This PR (7398) - mean (817ms)  : 786, 848
     .   : milestone, 817,
    master - mean (811ms)  : 786, 836
     .   : milestone, 811,

Loading

@GreenMatan GreenMatan marked this pull request as ready for review August 18, 2025 12:31
@GreenMatan GreenMatan requested a review from a team as a code owner August 18, 2025 12:31
@andrewlock andrewlock merged commit 595a4e1 into master Aug 18, 2025
153 checks passed
@andrewlock andrewlock deleted the andrew/revert-debugger-refactoring branch August 18, 2025 15:10
@github-actions github-actions bot added this to the vNext-v3 milestone Aug 18, 2025
andrewlock added a commit that referenced this pull request Aug 19, 2025
## Summary of changes

Make the `Instrumentation.cs` file owned by everyone

## Reason for change

#7398 was a change to
debugger initialization, but it didn't run the debugger tests because
the Instrumentation.cs file wasn't owned by them. So had to run them
manually in #7415.

## Implementation details

Add all the teams to be Instrumentation.cs owners, because it can impact
all products

## Test coverage

N/A

## Other details
<!-- Fixes #{issue} -->


<!--  ⚠️ Note:

Where possible, please obtain 2 approvals prior to merging. Unless
CODEOWNERS specifies otherwise, for external teams it is typically best
to have one review from a team member, and one review from apm-dotnet.
Trivial changes do not require 2 reviews.

MergeQueue is NOT enabled in this repository. If you have write access
to the repo, the PR has 1-2 approvals (see above), and all of the
required checks have passed, you can use the Squash and Merge button to
merge the PR. If you don't have write access, or you need help, reach
out in the #apm-dotnet channel in Slack.
-->
andrewlock added a commit that referenced this pull request Aug 19, 2025
## Summary of changes

Try to fix dynamic instrumentation tests

## Reason for change

The debugger tests are broken in master because #7398 didn't trigger the
debugger tests to run

## Implementation details

Add the log message it expects

## Test coverage

Will trigger a dedicated test run to make sure we test the debugger

## Other details

We should probably update the `Instrumentation` file to be co-owned, to
make sure this kind of thing doesn't happen again
- #7416
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants