-
Notifications
You must be signed in to change notification settings - Fork 146
Product mask support for DSM #6961
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Datadog Summary✅ Code Quality ✅ Code Security ✅ Dependencies Test Optimization ReportAll test runs ❌ 2 Total Test Services: 1 Failed, 1 Passed Test Services
❌ Failed Tests (422)
Was this helpful? Give us feedback! |
BenchmarksBenchmarks Report for benchmark platform 🐌Benchmarks for #6961 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.14 KB | 6.22 KB | 82 B | 1.34% |
Benchmarks.Trace.ActivityBenchmark.StartStopWithChild‑net6.0 | 5.54 KB | 5.6 KB | 52 B | 0.94% |
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | StartStopWithChild |
net6.0 | 11μs | 58.8ns | 322ns | 0 | 0 | 0 | 5.54 KB |
master | StartStopWithChild |
netcoreapp3.1 | 13.9μs | 50.3ns | 195ns | 0 | 0 | 0 | 5.74 KB |
master | StartStopWithChild |
net472 | 22μs | 90.9ns | 328ns | 1.01 | 0.336 | 0.112 | 6.14 KB |
#6961 | StartStopWithChild |
net6.0 | 10.5μs | 59.9ns | 415ns | 0 | 0 | 0 | 5.6 KB |
#6961 | StartStopWithChild |
netcoreapp3.1 | 13.5μs | 60.7ns | 235ns | 0 | 0 | 0 | 5.76 KB |
#6961 | StartStopWithChild |
net472 | 22.1μs | 113ns | 554ns | 0.982 | 0.327 | 0 | 6.22 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 | 937μs | 113ns | 423ns | 0 | 0 | 0 | 2.71 KB |
master | WriteAndFlushEnrichedTraces |
netcoreapp3.1 | 1.02ms | 108ns | 373ns | 0 | 0 | 0 | 2.7 KB |
master | WriteAndFlushEnrichedTraces |
net472 | 1.24ms | 45.9ns | 172ns | 0 | 0 | 0 | 3.31 KB |
#6961 | WriteAndFlushEnrichedTraces |
net6.0 | 928μs | 76ns | 294ns | 0 | 0 | 0 | 2.71 KB |
#6961 | WriteAndFlushEnrichedTraces |
netcoreapp3.1 | 1.03ms | 355ns | 1.38μs | 0 | 0 | 0 | 2.7 KB |
#6961 | WriteAndFlushEnrichedTraces |
net472 | 1.23ms | 58.3ns | 226ns | 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 | 327μs | 1.43μs | 5.53μs | 0 | 0 | 0 | 197.06 KB |
master | AllCycleSimpleBody |
netcoreapp3.1 | 486μs | 277ns | 1.04μs | 0 | 0 | 0 | 204.77 KB |
master | AllCycleSimpleBody |
net472 | 435μs | 103ns | 397ns | 36.6 | 2.16 | 0 | 236.35 KB |
master | AllCycleMoreComplexBody |
net6.0 | 333μs | 790ns | 3.06μs | 0 | 0 | 0 | 200.57 KB |
master | AllCycleMoreComplexBody |
netcoreapp3.1 | 492μs | 1.12μs | 4.33μs | 0 | 0 | 0 | 208.18 KB |
master | AllCycleMoreComplexBody |
net472 | 445μs | 117ns | 438ns | 36.6 | 2.16 | 0 | 239.87 KB |
master | ObjectExtractorSimpleBody |
net6.0 | 312ns | 0.0985ns | 0.369ns | 0 | 0 | 0 | 280 B |
master | ObjectExtractorSimpleBody |
netcoreapp3.1 | 398ns | 2.15ns | 10.9ns | 0 | 0 | 0 | 272 B |
master | ObjectExtractorSimpleBody |
net472 | 310ns | 0.147ns | 0.569ns | 0.0437 | 0 | 0 | 281 B |
master | ObjectExtractorMoreComplexBody |
net6.0 | 6.31μs | 30.6ns | 133ns | 0 | 0 | 0 | 3.78 KB |
master | ObjectExtractorMoreComplexBody |
netcoreapp3.1 | 7.83μs | 32.1ns | 124ns | 0 | 0 | 0 | 3.69 KB |
master | ObjectExtractorMoreComplexBody |
net472 | 6.79μs | 8.01ns | 31ns | 0.574 | 0 | 0 | 3.8 KB |
#6961 | AllCycleSimpleBody |
net6.0 | 330μs | 1.27μs | 4.91μs | 0 | 0 | 0 | 197.06 KB |
#6961 | AllCycleSimpleBody |
netcoreapp3.1 | 505μs | 2.03μs | 7.85μs | 0 | 0 | 0 | 204.77 KB |
#6961 | AllCycleSimpleBody |
net472 | 433μs | 174ns | 628ns | 36.6 | 2.16 | 0 | 236.35 KB |
#6961 | AllCycleMoreComplexBody |
net6.0 | 338μs | 1.64μs | 6.14μs | 0 | 0 | 0 | 200.56 KB |
#6961 | AllCycleMoreComplexBody |
netcoreapp3.1 | 497μs | 1.98μs | 7.68μs | 0 | 0 | 0 | 208.18 KB |
#6961 | AllCycleMoreComplexBody |
net472 | 449μs | 134ns | 519ns | 37.9 | 2.23 | 0 | 239.88 KB |
#6961 | ObjectExtractorSimpleBody |
net6.0 | 313ns | 0.157ns | 0.588ns | 0 | 0 | 0 | 280 B |
#6961 | ObjectExtractorSimpleBody |
netcoreapp3.1 | 392ns | 2.19ns | 13.9ns | 0 | 0 | 0 | 272 B |
#6961 | ObjectExtractorSimpleBody |
net472 | 302ns | 0.0841ns | 0.315ns | 0.0445 | 0 | 0 | 281 B |
#6961 | ObjectExtractorMoreComplexBody |
net6.0 | 6.47μs | 30ns | 116ns | 0 | 0 | 0 | 3.78 KB |
#6961 | ObjectExtractorMoreComplexBody |
netcoreapp3.1 | 7.71μs | 20ns | 77.5ns | 0 | 0 | 0 | 3.69 KB |
#6961 | ObjectExtractorMoreComplexBody |
net472 | 6.69μs | 3.97ns | 14.9ns | 0.603 | 0 | 0 | 3.8 KB |
Benchmarks.Trace.Asm.AppSecEncoderBenchmark - Unknown 🤷 Same allocations ✔️
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | EncodeArgs |
net6.0 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
master | EncodeArgs |
netcoreapp3.1 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
master | EncodeArgs |
net472 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
master | EncodeLegacyArgs |
net6.0 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
master | EncodeLegacyArgs |
netcoreapp3.1 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
master | EncodeLegacyArgs |
net472 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | EncodeArgs |
net6.0 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | EncodeArgs |
netcoreapp3.1 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | EncodeArgs |
net472 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | EncodeLegacyArgs |
net6.0 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | EncodeLegacyArgs |
netcoreapp3.1 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | EncodeLegacyArgs |
net472 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
Benchmarks.Trace.Asm.AppSecWafBenchmark - Unknown 🤷 Same allocations ✔️
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | RunWafRealisticBenchmark |
net6.0 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
master | RunWafRealisticBenchmark |
netcoreapp3.1 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
master | RunWafRealisticBenchmark |
net472 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
master | RunWafRealisticBenchmarkWithAttack |
net6.0 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
master | RunWafRealisticBenchmarkWithAttack |
netcoreapp3.1 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
master | RunWafRealisticBenchmarkWithAttack |
net472 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | RunWafRealisticBenchmark |
net6.0 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | RunWafRealisticBenchmark |
netcoreapp3.1 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | RunWafRealisticBenchmark |
net472 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | RunWafRealisticBenchmarkWithAttack |
net6.0 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | RunWafRealisticBenchmarkWithAttack |
netcoreapp3.1 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
#6961 | RunWafRealisticBenchmarkWithAttack |
net472 | N/A | N/A | N/A | NaN | NaN | NaN | 0 b |
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 | 36.2ns | 135ns | 0 | 0 | 0 | 14.53 KB |
master | SendRequest |
netcoreapp3.1 | 71.8μs | 351ns | 1.45μs | 0 | 0 | 0 | 17.51 KB |
master | SendRequest |
net472 | 0.0268ns | 0.00138ns | 0.00533ns | 0 | 0 | 0 | 0 b |
#6961 | SendRequest |
net6.0 | 60.5μs | 28.2ns | 102ns | 0 | 0 | 0 | 14.53 KB |
#6961 | SendRequest |
netcoreapp3.1 | 72μs | 105ns | 408ns | 0 | 0 | 0 | 17.42 KB |
#6961 | SendRequest |
net472 | 0.00684ns | 0.002ns | 0.00774ns | 0 | 0 | 0 | 0 b |
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark - Same speed ✔️ Fewer allocations 🎉
Fewer allocations 🎉 in #6961
Benchmark
Base Allocated
Diff Allocated
Change
Change %
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark.WriteAndFlushEnrichedTraces‑net472
56.56 KB
56.12 KB
-443 B
-0.78%
Benchmark | Base Allocated | Diff Allocated | Change | Change % |
---|---|---|---|---|
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark.WriteAndFlushEnrichedTraces‑net472 | 56.56 KB | 56.12 KB | -443 B | -0.78% |
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | WriteAndFlushEnrichedTraces |
net6.0 | 616μs | 1.5μs | 5.83μs | 0 | 0 | 0 | 41.67 KB |
master | WriteAndFlushEnrichedTraces |
netcoreapp3.1 | 694μs | 4.06μs | 37.2μs | 0 | 0 | 0 | 41.97 KB |
master | WriteAndFlushEnrichedTraces |
net472 | 898μs | 4.67μs | 22.4μs | 8.33 | 0 | 0 | 56.56 KB |
#6961 | WriteAndFlushEnrichedTraces |
net6.0 | 680μs | 923ns | 3.45μs | 0 | 0 | 0 | 41.74 KB |
#6961 | WriteAndFlushEnrichedTraces |
netcoreapp3.1 | 692μs | 2.25μs | 8.71μs | 0 | 0 | 0 | 42.12 KB |
#6961 | WriteAndFlushEnrichedTraces |
net472 | 905μs | 1.6μs | 6.2μs | 8.33 | 0 | 0 | 56.12 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.96μs | 1.93ns | 7.24ns | 0 | 0 | 0 | 1.03 KB |
master | ExecuteNonQuery |
netcoreapp3.1 | 2.46μs | 5.6ns | 21.7ns | 0 | 0 | 0 | 1.02 KB |
master | ExecuteNonQuery |
net472 | 2.71μs | 2.91ns | 11.3ns | 0.149 | 0.0135 | 0 | 995 B |
#6961 | ExecuteNonQuery |
net6.0 | 1.98μs | 5.46ns | 20.4ns | 0 | 0 | 0 | 1.03 KB |
#6961 | ExecuteNonQuery |
netcoreapp3.1 | 2.39μs | 10.3ns | 39.9ns | 0 | 0 | 0 | 1.02 KB |
#6961 | ExecuteNonQuery |
net472 | 2.8μs | 4.4ns | 17ns | 0.149 | 0.0136 | 0 | 995 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.75μs | 1.57ns | 6.09ns | 0 | 0 | 0 | 1.04 KB |
master | CallElasticsearch |
netcoreapp3.1 | 2.37μs | 4.07ns | 15.7ns | 0 | 0 | 0 | 1.04 KB |
master | CallElasticsearch |
net472 | 3.64μs | 2.64ns | 10.2ns | 0.165 | 0 | 0 | 1.05 KB |
master | CallElasticsearchAsync |
net6.0 | 1.85μs | 8.46ns | 32.8ns | 0 | 0 | 0 | 1.02 KB |
master | CallElasticsearchAsync |
netcoreapp3.1 | 2.35μs | 9.06ns | 35.1ns | 0 | 0 | 0 | 1.09 KB |
master | CallElasticsearchAsync |
net472 | 3.78μs | 3.35ns | 12.1ns | 0.17 | 0 | 0 | 1.11 KB |
#6961 | CallElasticsearch |
net6.0 | 1.78μs | 8.88ns | 36.6ns | 0 | 0 | 0 | 1.04 KB |
#6961 | CallElasticsearch |
netcoreapp3.1 | 2.26μs | 11.7ns | 52.2ns | 0 | 0 | 0 | 1.04 KB |
#6961 | CallElasticsearch |
net472 | 3.47μs | 3.64ns | 14.1ns | 0.156 | 0 | 0 | 1.05 KB |
#6961 | CallElasticsearchAsync |
net6.0 | 1.91μs | 5.87ns | 22.7ns | 0 | 0 | 0 | 1.02 KB |
#6961 | CallElasticsearchAsync |
netcoreapp3.1 | 2.33μs | 8.49ns | 32.9ns | 0 | 0 | 0 | 1.09 KB |
#6961 | CallElasticsearchAsync |
net472 | 4.08μs | 6.5ns | 25.2ns | 0.164 | 0 | 0 | 1.11 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.85μs | 0.824ns | 3.19ns | 0 | 0 | 0 | 960 B |
master | ExecuteAsync |
netcoreapp3.1 | 2.31μs | 6.5ns | 24.3ns | 0 | 0 | 0 | 960 B |
master | ExecuteAsync |
net472 | 2.57μs | 1.62ns | 6.26ns | 0.142 | 0 | 0 | 923 B |
#6961 | ExecuteAsync |
net6.0 | 1.92μs | 2.04ns | 7.91ns | 0 | 0 | 0 | 960 B |
#6961 | ExecuteAsync |
netcoreapp3.1 | 2.42μs | 4ns | 15.5ns | 0 | 0 | 0 | 960 B |
#6961 | ExecuteAsync |
net472 | 2.69μs | 4.05ns | 15.1ns | 0.134 | 0 | 0 | 923 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.97μs | 15.3ns | 59.1ns | 0 | 0 | 0 | 2.37 KB |
master | SendAsync |
netcoreapp3.1 | 8.4μs | 10.5ns | 40.6ns | 0 | 0 | 0 | 2.9 KB |
master | SendAsync |
net472 | 12.3μs | 7.47ns | 28ns | 0.492 | 0 | 0 | 3.19 KB |
#6961 | SendAsync |
net6.0 | 6.78μs | 17.8ns | 68.8ns | 0 | 0 | 0 | 2.37 KB |
#6961 | SendAsync |
netcoreapp3.1 | 8.79μs | 6.14ns | 23ns | 0 | 0 | 0 | 2.9 KB |
#6961 | SendAsync |
net472 | 12.2μs | 7.72ns | 28.9ns | 0.49 | 0 | 0 | 3.19 KB |
Benchmarks.Trace.Iast.StringAspectsBenchmark - Same speed ✔️ More allocations ⚠️
More allocations ⚠️ in #6961
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.StringConcatAspectBenchmark‑net472
279.91 KB
286.72 KB
6.81 KB
2.43%
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑net6.0
247.42 KB
252.46 KB
5.05 KB
2.04%
Fewer allocations 🎉 in #6961
Benchmark
Base Allocated
Diff Allocated
Change
Change %
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑netcoreapp3.1
272.74 KB
258.99 KB
-13.74 KB
-5.04%
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.StringConcatAspectBenchmark‑net472 | 279.91 KB | 286.72 KB | 6.81 KB | 2.43% |
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑net6.0 | 247.42 KB | 252.46 KB | 5.05 KB | 2.04% |
Benchmark | Base Allocated | Diff Allocated | Change | Change % |
---|---|---|---|---|
Benchmarks.Trace.Iast.StringAspectsBenchmark.StringConcatAspectBenchmark‑netcoreapp3.1 | 272.74 KB | 258.99 KB | -13.74 KB | -5.04% |
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | StringConcatBenchmark |
net6.0 | 44.5μs | 223ns | 1.92μs | 0 | 0 | 0 | 43.78 KB |
master | StringConcatBenchmark |
netcoreapp3.1 | 48.6μs | 231ns | 1.41μs | 0 | 0 | 0 | 42.68 KB |
master | StringConcatBenchmark |
net472 | 56.8μs | 103ns | 373ns | 0 | 0 | 0 | 57.34 KB |
master | StringConcatAspectBenchmark |
net6.0 | 437μs | 2.18μs | 9.26μs | 0 | 0 | 0 | 247.42 KB |
master | StringConcatAspectBenchmark |
netcoreapp3.1 | 532μs | 2.41μs | 9.02μs | 0 | 0 | 0 | 272.74 KB |
master | StringConcatAspectBenchmark |
net472 | 402μs | 2.32μs | 18.3μs | 0 | 0 | 0 | 279.91 KB |
#6961 | StringConcatBenchmark |
net6.0 | 41.8μs | 125ns | 449ns | 0 | 0 | 0 | 43.78 KB |
#6961 | StringConcatBenchmark |
netcoreapp3.1 | 50.9μs | 460ns | 4.51μs | 0 | 0 | 0 | 42.78 KB |
#6961 | StringConcatBenchmark |
net472 | 56.1μs | 207ns | 773ns | 0 | 0 | 0 | 65.54 KB |
#6961 | StringConcatAspectBenchmark |
net6.0 | 463μs | 784ns | 2.93μs | 0 | 0 | 0 | 252.46 KB |
#6961 | StringConcatAspectBenchmark |
netcoreapp3.1 | 512μs | 1.59μs | 5.75μs | 0 | 0 | 0 | 258.99 KB |
#6961 | StringConcatAspectBenchmark |
net472 | 408μs | 1.97μs | 10μs | 0 | 0 | 0 | 286.72 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.62μs | 5.8ns | 22.5ns | 0 | 0 | 0 | 1.76 KB |
master | EnrichedLog |
netcoreapp3.1 | 3.48μs | 11.3ns | 43.6ns | 0 | 0 | 0 | 1.76 KB |
master | EnrichedLog |
net472 | 3.91μs | 2.7ns | 10.1ns | 0.254 | 0 | 0 | 1.69 KB |
#6961 | EnrichedLog |
net6.0 | 2.65μs | 3.2ns | 12.4ns | 0 | 0 | 0 | 1.76 KB |
#6961 | EnrichedLog |
netcoreapp3.1 | 3.43μs | 14.9ns | 57.7ns | 0 | 0 | 0 | 1.76 KB |
#6961 | EnrichedLog |
net472 | 3.82μs | 2.64ns | 10.2ns | 0.267 | 0 | 0 | 1.69 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 | 93.5ns | 350ns | 0 | 0 | 0 | 4.37 KB |
master | EnrichedLog |
netcoreapp3.1 | 128μs | 540ns | 1.95μs | 0 | 0 | 0 | 4.37 KB |
master | EnrichedLog |
net472 | 167μs | 90.7ns | 351ns | 0 | 0 | 0 | 4.57 KB |
#6961 | EnrichedLog |
net6.0 | 123μs | 164ns | 615ns | 0 | 0 | 0 | 4.37 KB |
#6961 | EnrichedLog |
netcoreapp3.1 | 127μs | 146ns | 547ns | 0 | 0 | 0 | 4.37 KB |
#6961 | EnrichedLog |
net472 | 165μs | 119ns | 459ns | 0 | 0 | 0 | 4.57 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 | 5.06μs | 3.52ns | 13.6ns | 0 | 0 | 0 | 2.32 KB |
master | EnrichedLog |
netcoreapp3.1 | 6.68μs | 16.1ns | 62.3ns | 0 | 0 | 0 | 2.32 KB |
master | EnrichedLog |
net472 | 7.43μs | 5.66ns | 21.2ns | 0.336 | 0 | 0 | 2.14 KB |
#6961 | EnrichedLog |
net6.0 | 4.81μs | 15.4ns | 55.4ns | 0 | 0 | 0 | 2.32 KB |
#6961 | EnrichedLog |
netcoreapp3.1 | 6.54μs | 28.1ns | 109ns | 0 | 0 | 0 | 2.32 KB |
#6961 | EnrichedLog |
net472 | 7.41μs | 11.2ns | 43.5ns | 0.332 | 0 | 0 | 2.14 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 | 2.01μs | 10.1ns | 42.7ns | 0 | 0 | 0 | 1.21 KB |
master | SendReceive |
netcoreapp3.1 | 2.59μs | 9.98ns | 38.7ns | 0 | 0 | 0 | 1.21 KB |
master | SendReceive |
net472 | 3.13μs | 2.23ns | 8.62ns | 0.188 | 0 | 0 | 1.21 KB |
#6961 | SendReceive |
net6.0 | 2μs | 10.4ns | 50.1ns | 0 | 0 | 0 | 1.21 KB |
#6961 | SendReceive |
netcoreapp3.1 | 2.55μs | 1.89ns | 7.32ns | 0 | 0 | 0 | 1.21 KB |
#6961 | SendReceive |
net472 | 3.18μs | 4.4ns | 17.1ns | 0.191 | 0 | 0 | 1.21 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.26μs | 3.63ns | 13.6ns | 0 | 0 | 0 | 1.64 KB |
master | EnrichedLog |
netcoreapp3.1 | 5.66μs | 10.6ns | 40.9ns | 0 | 0 | 0 | 1.69 KB |
master | EnrichedLog |
net472 | 6.58μs | 5.09ns | 19.7ns | 0.327 | 0 | 0 | 2.08 KB |
#6961 | EnrichedLog |
net6.0 | 4.19μs | 10ns | 38.9ns | 0 | 0 | 0 | 1.64 KB |
#6961 | EnrichedLog |
netcoreapp3.1 | 5.65μs | 19.2ns | 74.4ns | 0 | 0 | 0 | 1.69 KB |
#6961 | EnrichedLog |
net472 | 6.51μs | 5.9ns | 22.9ns | 0.325 | 0 | 0 | 2.08 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 | 746ns | 3.28ns | 12.7ns | 0 | 0 | 0 | 584 B |
master | StartFinishSpan |
netcoreapp3.1 | 945ns | 1ns | 3.88ns | 0 | 0 | 0 | 584 B |
master | StartFinishSpan |
net472 | 941ns | 0.51ns | 1.98ns | 0.0897 | 0 | 0 | 586 B |
master | StartFinishScope |
net6.0 | 896ns | 0.334ns | 1.25ns | 0 | 0 | 0 | 704 B |
master | StartFinishScope |
netcoreapp3.1 | 1.16μs | 5.55ns | 22.2ns | 0 | 0 | 0 | 704 B |
master | StartFinishScope |
net472 | 1.19μs | 0.357ns | 1.29ns | 0.101 | 0 | 0 | 666 B |
#6961 | StartFinishSpan |
net6.0 | 748ns | 3.45ns | 13.8ns | 0 | 0 | 0 | 584 B |
#6961 | StartFinishSpan |
netcoreapp3.1 | 944ns | 4.91ns | 24.5ns | 0 | 0 | 0 | 584 B |
#6961 | StartFinishSpan |
net472 | 919ns | 0.289ns | 1.12ns | 0.0923 | 0 | 0 | 586 B |
#6961 | StartFinishScope |
net6.0 | 892ns | 4.66ns | 21.9ns | 0 | 0 | 0 | 704 B |
#6961 | StartFinishScope |
netcoreapp3.1 | 1.17μs | 5.4ns | 20.9ns | 0 | 0 | 0 | 704 B |
#6961 | StartFinishScope |
net472 | 1.13μs | 0.27ns | 1.04ns | 0.101 | 0 | 0 | 666 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.03μs | 4.9ns | 20.2ns | 0 | 0 | 0 | 704 B |
master | RunOnMethodBegin |
netcoreapp3.1 | 1.41μs | 6.94ns | 28.6ns | 0 | 0 | 0 | 704 B |
master | RunOnMethodBegin |
net472 | 1.39μs | 1.47ns | 5.7ns | 0.105 | 0 | 0 | 666 B |
#6961 | RunOnMethodBegin |
net6.0 | 1μs | 5.22ns | 23.9ns | 0 | 0 | 0 | 704 B |
#6961 | RunOnMethodBegin |
netcoreapp3.1 | 1.35μs | 6.83ns | 29.8ns | 0 | 0 | 0 | 704 B |
#6961 | RunOnMethodBegin |
net472 | 1.38μs | 1.03ns | 3.97ns | 0.103 | 0 | 0 | 666 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 Baseline
This PR (6961) - mean (68ms) : 66, 69
. : milestone, 68,
master - mean (68ms) : 66, 70
. : milestone, 68,
section CallTarget+Inlining+NGEN
This PR (6961) - mean (1,008ms) : 987, 1028
. : milestone, 1008,
master - mean (1,006ms) : 982, 1031
. : milestone, 1006,
gantt
title Execution time (ms) FakeDbCommand (.NET Core 3.1)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6961) - mean (102ms) : 100, 104
. : milestone, 102,
master - mean (102ms) : 100, 105
. : milestone, 102,
section CallTarget+Inlining+NGEN
This PR (6961) - mean (697ms) : 680, 714
. : milestone, 697,
master - mean (692ms) : 676, 709
. : milestone, 692,
gantt
title Execution time (ms) FakeDbCommand (.NET 6)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6961) - mean (88ms) : 86, 91
. : milestone, 88,
master - mean (89ms) : 87, 91
. : milestone, 89,
section CallTarget+Inlining+NGEN
This PR (6961) - mean (652ms) : 632, 672
. : milestone, 652,
master - mean (652ms) : 632, 672
. : milestone, 652,
gantt
title Execution time (ms) HttpMessageHandler (.NET Framework 4.8)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6961) - mean (190ms) : 183, 197
. : milestone, 190,
master - mean (190ms) : 186, 193
. : milestone, 190,
section CallTarget+Inlining+NGEN
This PR (6961) - mean (1,111ms) : 1089, 1134
. : milestone, 1111,
master - mean (1,109ms) : 1083, 1135
. : milestone, 1109,
gantt
title Execution time (ms) HttpMessageHandler (.NET Core 3.1)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6961) - mean (269ms) : 265, 273
. : milestone, 269,
master - mean (269ms) : 264, 274
. : milestone, 269,
section CallTarget+Inlining+NGEN
This PR (6961) - mean (879ms) : 851, 907
. : milestone, 879,
master - mean (877ms) : 849, 905
. : milestone, 877,
gantt
title Execution time (ms) HttpMessageHandler (.NET 6)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6961) - mean (261ms) : 258, 265
. : milestone, 261,
master - mean (260ms) : 257, 264
. : milestone, 260,
section CallTarget+Inlining+NGEN
This PR (6961) - mean (869ms) : 838, 900
. : milestone, 869,
master - mean (869ms) : 832, 906
. : milestone, 869,
|
Snapshots difference summaryThe following differences have been observed in committed snapshots. It is meant to help the reviewer. 13 occurrences of : + ProductMask: 3
|
Datadog ReportAll test runs ✅ 2 Total Test Services: 0 Failed, 2 Passed Test Services
⌛ Performance Regressions vs Default Branch (3) |
private const int ApmProduct = 1; // 00000001 | ||
private const int DsmProduct = 2; // 00000010 | ||
private const int DjmProduct = 4; // 00000100, not used in .NET, but needs to be in sync with other languages, hence the unused constant | ||
private const int ProfilingProduct = 8; // 00001000 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Small C# style comment: this would normally be done as an enum with [Flags]
. Something like
[Flags]
internal enum Products
{
Apm = 1, // 00000001
Dsm = 2, // 00000010
Djm = 4, // 00000100
Profiling = 8, // 00001000
}
internal class DataStreamsMessagePackFormatter
{
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
You can also use this syntax (introduced in C# 7) instead of comments:
Apm = 0b00000001
Dsm = 0b00000010
Djm = 0b00000100
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Or another option (a personal preference):
internal class DataStreamsMessagePackFormatter
{
// note that the enum can still be private and nested to encapsulate it
[Flags]
private enum Products
{
None = 0, // This should be explicit IMO for Flags enums
Apm = 1, // 00000001
Dsm = 1 << 1, // 00000010
Djm = 1 << 2, // 00000100
Profiling = 1 << 3, // 00001000
}
}
Note also you can use separators in the binary version:
Apm = 0b0000_0001
Dsm = 0b0000_0010
Djm = 0b0000_0100
tracer/src/Datadog.Trace/DataStreamsMonitoring/Aggregation/DataStreamsMessagePackFormatter.cs
Outdated
Show resolved
Hide resolved
## Summary of changes Removes the scheduled SSI run ## Reason for change A recent PR #6961 resulted in the SSI run failing. We're not convinced this run provides a lot of value now anyway, now that we have the dedicated onboarding tests, so removing the run to unblock `master` ## Implementation details Delete the scheduled SSI run and associated `IS_SSI_RUN` variable ## Test coverage N/A ## Other details We will likely advise other languages to do the same
Summary of changes
DSM backend will route payloads differently based on how the client which produced them was configured. This change mirrors the one done for Java .
Ticket DSMON-778.
Reason for change
This flag will allow us to better understand in which environments and with which configurations DSM is being run. The value of the tag is a bitmask which can be extended as needed in the future.
Implementation details
The DSM payload was extended with
ProductMask
field.Test coverage
Existing tests were updated.