Disable debugger initialization if it's not enabled initially#7398
Disable debugger initialization if it's not enabled initially#7398andrewlock merged 1 commit intomasterfrom
Conversation
BenchmarksBenchmarks Report for benchmark platform 🐌Benchmarks for #7398 compared to master:
The following thresholds were used for comparing the benchmark speeds:
Allocation changes below 0.5% are ignored. Benchmark detailsBenchmarks.Trace.ActivityBenchmark - Same speed ✔️ More allocations
|
| Benchmark | Base Allocated | Diff Allocated | Change | Change % |
|---|---|---|---|---|
| Benchmarks.Trace.ActivityBenchmark.StartStopWithChild‑net472 | 6.01 KB | 6.11 KB | 103 B | 1.72% |
| 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%
| Benchmark | diff/base | Base Median (ns) | Diff Median (ns) | Modality |
|---|---|---|---|---|
| Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑net6.0 | 1.154 | 798,607.62 | 921,313.96 |
| Benchmark | Base Allocated | Diff Allocated | Change | Change % |
|---|---|---|---|---|
| Benchmarks.Trace.CharSliceBenchmark.OptimizedCharSliceWithPool‑netcoreapp3.1 | 0 b | 1 B | 1 B | ∞ |
| 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%
| Benchmark | diff/base | Base Median (ns) | Diff Median (ns) | Modality |
|---|---|---|---|---|
| Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark.WriteAndFlushEnrichedTraces‑netcoreapp3.1 | 1.163 | 659,623.36 | 766,980.80 |
| 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%
| 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% |
| 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 |
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:
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,
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,
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,
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,
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,
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,
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,
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,
|
4ce22f2 to
c919c13
Compare
## 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. -->
## 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
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