dd-trace-dotnet icon indicating copy to clipboard operation
dd-trace-dotnet copied to clipboard

System for mocking events from remote config client

Open robertpi opened this issue 2 years ago • 2 comments

Summary of changes

Borrows small amount of code from: https://github.com/DataDog/dd-trace-dotnet/pull/3029

Uses a file system watcher to allow remote config received events to be created from files and therefore used in integration tests.

Also contains a partial implementation of 1-click activation. This implementation is not correct, since if asm was explicitly disabled, we should not allow it to be activated by remote config.

Test coverage

A single integration test.

robertpi avatar Aug 04 '22 14:08 robertpi

Benchmarks Report :snail:

Benchmarks for #3051 compared to master:

  • 1 benchmarks are faster, with geometric mean 1.299
  • All benchmarks have the same 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.AgentWriterBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net472 722μs 326ns 1.26μs 0.359 0 0 3.18 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 478μs 344ns 1.33μs 0 0 0 2.58 KB
#3051 WriteAndFlushEnrichedTraces net472 713μs 305ns 1.14μs 0.357 0 0 3.18 KB
#3051 WriteAndFlushEnrichedTraces netcoreapp3.1 457μs 193ns 749ns 0 0 0 2.58 KB
Benchmarks.Trace.AppSecBodyBenchmark - Faster :tada: Same allocations :heavy_check_mark:

Faster :tada: in #3051

Benchmark base/diff Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.AppSecBodyBenchmark.AllCycleSimpleBody‑net472 1.299 2,208.74 1,699.76

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master AllCycleSimpleBody net472 2.21μs 2.52ns 9.44ns 0.237 0 0 1.49 KB
master AllCycleSimpleBody netcoreapp3.1 1.8μs 2.11ns 8.16ns 0.0186 0 0 1.37 KB
master AllCycleMoreComplexBody net472 17.1μs 14.3ns 53.6ns 1.38 0.0171 0 8.75 KB
master AllCycleMoreComplexBody netcoreapp3.1 14.2μs 17.1ns 63.8ns 0.107 0 0 7.85 KB
master BodyExtractorSimpleBody net472 277ns 0.284ns 1.02ns 0.0573 0 0 361 B
master BodyExtractorSimpleBody netcoreapp3.1 227ns 0.136ns 0.509ns 0.00376 0 0 272 B
master BodyExtractorMoreComplexBody net472 15.1μs 6.97ns 26.1ns 1.21 0.0151 0 7.62 KB
master BodyExtractorMoreComplexBody netcoreapp3.1 12μs 16.6ns 62.2ns 0.0902 0 0 6.75 KB
#3051 AllCycleSimpleBody net472 1.7μs 0.575ns 2.15ns 0.237 0 0 1.49 KB
#3051 AllCycleSimpleBody netcoreapp3.1 1.79μs 3.83ns 13.8ns 0.0186 0 0 1.37 KB
#3051 AllCycleMoreComplexBody net472 16.5μs 15.8ns 61.1ns 1.39 0.0248 0 8.75 KB
#3051 AllCycleMoreComplexBody netcoreapp3.1 14.4μs 63.8ns 247ns 0.0989 0 0 7.85 KB
#3051 BodyExtractorSimpleBody net472 267ns 0.319ns 1.24ns 0.0573 0 0 361 B
#3051 BodyExtractorSimpleBody netcoreapp3.1 222ns 0.274ns 1.03ns 0.0037 0 0 272 B
#3051 BodyExtractorMoreComplexBody net472 15.5μs 14.6ns 56.6ns 1.21 0.0156 0 7.62 KB
#3051 BodyExtractorMoreComplexBody netcoreapp3.1 12.7μs 17.9ns 67.2ns 0.0881 0 0 6.75 KB
Benchmarks.Trace.AspNetCoreBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendRequest net472 0ns 0ns 0ns 0 0 0 0 b
master SendRequest netcoreapp3.1 177μs 225ns 872ns 0.266 0 0 20.33 KB
#3051 SendRequest net472 0ns 0ns 0ns 0 0 0 0 b
#3051 SendRequest netcoreapp3.1 180μs 175ns 678ns 0.268 0 0 20.33 KB
Benchmarks.Trace.DbCommandBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteNonQuery net472 1.57μs 0.513ns 1.92ns 0.126 0.000785 0 794 B
master ExecuteNonQuery netcoreapp3.1 1.22μs 0.346ns 1.29ns 0.011 0 0 824 B
#3051 ExecuteNonQuery net472 1.56μs 0.289ns 1.04ns 0.126 0.000788 0 794 B
#3051 ExecuteNonQuery netcoreapp3.1 1.24μs 0.257ns 0.996ns 0.0112 0 0 824 B
Benchmarks.Trace.ElasticsearchBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master CallElasticsearch net472 2.28μs 0.705ns 2.73ns 0.159 0 0 1 KB
master CallElasticsearch netcoreapp3.1 1.43μs 0.613ns 2.3ns 0.0136 0 0 984 B
master CallElasticsearchAsync net472 2.43μs 0.81ns 3.14ns 0.18 0 0 1.14 KB
master CallElasticsearchAsync netcoreapp3.1 1.49μs 0.281ns 1.09ns 0.0149 0 0 1.1 KB
#3051 CallElasticsearch net472 2.16μs 0.539ns 2.02ns 0.159 0 0 1 KB
#3051 CallElasticsearch netcoreapp3.1 1.4μs 1.41ns 5.26ns 0.0132 0 0 984 B
#3051 CallElasticsearchAsync net472 2.27μs 0.737ns 2.86ns 0.181 0 0 1.14 KB
#3051 CallElasticsearchAsync netcoreapp3.1 1.49μs 0.704ns 2.64ns 0.0149 0 0 1.1 KB
Benchmarks.Trace.GraphQLBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteAsync net472 2.34μs 5.11ns 19.8ns 0.199 0 0 1.26 KB
master ExecuteAsync netcoreapp3.1 1.59μs 2.72ns 10.2ns 0.0164 0 0 1.22 KB
#3051 ExecuteAsync net472 2.41μs 2.5ns 9.69ns 0.199 0 0 1.26 KB
#3051 ExecuteAsync netcoreapp3.1 1.56μs 0.475ns 1.84ns 0.0163 0 0 1.22 KB
Benchmarks.Trace.HttpClientBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendAsync net472 4.88μs 8.01ns 31ns 0.393 0 0 2.48 KB
master SendAsync netcoreapp3.1 3.28μs 7.51ns 29.1ns 0.0324 0 0 2.36 KB
#3051 SendAsync net472 5.04μs 3.54ns 13.7ns 0.392 0 0 2.48 KB
#3051 SendAsync netcoreapp3.1 3.36μs 1.73ns 6.72ns 0.0319 0 0 2.36 KB
Benchmarks.Trace.ILoggerBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net472 2.89μs 0.935ns 3.5ns 0.263 0 0 1.66 KB
master EnrichedLog netcoreapp3.1 2.29μs 0.961ns 3.72ns 0.0239 0 0 1.73 KB
#3051 EnrichedLog net472 2.86μs 5.15ns 18.6ns 0.263 0 0 1.66 KB
#3051 EnrichedLog netcoreapp3.1 2.33μs 0.565ns 2.11ns 0.0232 0 0 1.73 KB
Benchmarks.Trace.Log4netBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net472 146μs 93.9ns 364ns 0.66 0.22 0 4.5 KB
master EnrichedLog netcoreapp3.1 113μs 82.4ns 308ns 0.056 0 0 4.38 KB
#3051 EnrichedLog net472 146μs 47.1ns 176ns 0.656 0.219 0 4.5 KB
#3051 EnrichedLog netcoreapp3.1 112μs 97.6ns 365ns 0.056 0 0 4.38 KB
Benchmarks.Trace.NLogBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net472 5.32μs 12.7ns 49.4ns 0.545 0.00262 0 3.43 KB
master EnrichedLog netcoreapp3.1 4.22μs 6.58ns 25.5ns 0.0512 0 0 3.8 KB
#3051 EnrichedLog net472 5.58μs 2.89ns 11.2ns 0.545 0.00279 0 3.43 KB
#3051 EnrichedLog netcoreapp3.1 4.29μs 1.49ns 5.57ns 0.0515 0 0 3.8 KB
Benchmarks.Trace.RedisBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendReceive net472 1.98μs 1.18ns 4.43ns 0.194 0 0 1.22 KB
master SendReceive netcoreapp3.1 1.61μs 0.467ns 1.75ns 0.0162 0 0 1.21 KB
#3051 SendReceive net472 1.96μs 0.689ns 2.58ns 0.193 0 0 1.22 KB
#3051 SendReceive netcoreapp3.1 1.67μs 0.552ns 2.07ns 0.0159 0 0 1.21 KB
Benchmarks.Trace.SerilogBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net472 4.78μs 1.93ns 7.46ns 0.329 0 0 2.08 KB
master EnrichedLog netcoreapp3.1 4.12μs 1.73ns 6.48ns 0.0227 0 0 1.69 KB
#3051 EnrichedLog net472 4.59μs 1.81ns 6.52ns 0.328 0 0 2.08 KB
#3051 EnrichedLog netcoreapp3.1 4.23μs 1.31ns 4.91ns 0.0232 0 0 1.69 KB
Benchmarks.Trace.SpanBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartFinishSpan net472 860ns 0.59ns 2.28ns 0.105 0 0 658 B
master StartFinishSpan netcoreapp3.1 733ns 0.251ns 0.906ns 0.00875 0 0 648 B
master StartFinishScope net472 1.05μs 0.702ns 2.63ns 0.117 0 0 738 B
master StartFinishScope netcoreapp3.1 881ns 0.501ns 1.87ns 0.0101 0 0 768 B
#3051 StartFinishSpan net472 819ns 0.171ns 0.662ns 0.104 0 0 658 B
#3051 StartFinishSpan netcoreapp3.1 758ns 0.346ns 1.3ns 0.00865 0 0 648 B
#3051 StartFinishScope net472 1.07μs 0.531ns 1.99ns 0.117 0 0 738 B
#3051 StartFinishScope netcoreapp3.1 929ns 0.246ns 0.955ns 0.0102 0 0 768 B
Benchmarks.Trace.TraceAnnotationsBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunOnMethodBegin net472 1.16μs 0.7ns 2.71ns 0.117 0 0 738 B
master RunOnMethodBegin netcoreapp3.1 1.04μs 0.506ns 1.75ns 0.0104 0 0 768 B
#3051 RunOnMethodBegin net472 1.26μs 0.319ns 1.19ns 0.117 0 0 738 B
#3051 RunOnMethodBegin netcoreapp3.1 1.01μs 0.506ns 1.83ns 0.0107 0 0 768 B

andrewlock avatar Aug 04 '22 14:08 andrewlock

Benchmarks Report :snail:

Benchmarks for #3051 compared to master:

  • 1 benchmarks are faster, with geometric mean 1.255
  • All benchmarks have the same 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.AgentWriterBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master WriteAndFlushEnrichedTraces net472 722μs 326ns 1.26μs 0.359 0 0 3.18 KB
master WriteAndFlushEnrichedTraces netcoreapp3.1 478μs 344ns 1.33μs 0 0 0 2.58 KB
#3051 WriteAndFlushEnrichedTraces net472 726μs 618ns 2.31μs 0.365 0 0 3.18 KB
#3051 WriteAndFlushEnrichedTraces netcoreapp3.1 454μs 145ns 542ns 0 0 0 2.58 KB
Benchmarks.Trace.AppSecBodyBenchmark - Faster :tada: Same allocations :heavy_check_mark:

Faster :tada: in #3051

Benchmark base/diff Base Median (ns) Diff Median (ns) Modality
Benchmarks.Trace.AppSecBodyBenchmark.AllCycleSimpleBody‑net472 1.255 2,208.74 1,760.01

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master AllCycleSimpleBody net472 2.21μs 2.52ns 9.44ns 0.237 0 0 1.49 KB
master AllCycleSimpleBody netcoreapp3.1 1.8μs 2.11ns 8.16ns 0.0186 0 0 1.37 KB
master AllCycleMoreComplexBody net472 17.1μs 14.3ns 53.6ns 1.38 0.0171 0 8.75 KB
master AllCycleMoreComplexBody netcoreapp3.1 14.2μs 17.1ns 63.8ns 0.107 0 0 7.85 KB
master BodyExtractorSimpleBody net472 277ns 0.284ns 1.02ns 0.0573 0 0 361 B
master BodyExtractorSimpleBody netcoreapp3.1 227ns 0.136ns 0.509ns 0.00376 0 0 272 B
master BodyExtractorMoreComplexBody net472 15.1μs 6.97ns 26.1ns 1.21 0.0151 0 7.62 KB
master BodyExtractorMoreComplexBody netcoreapp3.1 12μs 16.6ns 62.2ns 0.0902 0 0 6.75 KB
#3051 AllCycleSimpleBody net472 1.76μs 1.68ns 6.3ns 0.237 0 0 1.49 KB
#3051 AllCycleSimpleBody netcoreapp3.1 1.82μs 2.25ns 8.42ns 0.019 0 0 1.37 KB
#3051 AllCycleMoreComplexBody net472 16.4μs 9.55ns 37ns 1.39 0.0246 0 8.75 KB
#3051 AllCycleMoreComplexBody netcoreapp3.1 14.1μs 52.9ns 205ns 0.105 0 0 7.85 KB
#3051 BodyExtractorSimpleBody net472 269ns 0.283ns 1.1ns 0.0573 0 0 361 B
#3051 BodyExtractorSimpleBody netcoreapp3.1 222ns 0.192ns 0.717ns 0.0037 0 0 272 B
#3051 BodyExtractorMoreComplexBody net472 14.7μs 6.09ns 23.6ns 1.21 0.0148 0 7.62 KB
#3051 BodyExtractorMoreComplexBody netcoreapp3.1 12μs 14.6ns 54.7ns 0.0898 0 0 6.75 KB
Benchmarks.Trace.AspNetCoreBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendRequest net472 0ns 0ns 0ns 0 0 0 0 b
master SendRequest netcoreapp3.1 177μs 225ns 872ns 0.266 0 0 20.33 KB
#3051 SendRequest net472 0ns 0ns 0ns 0 0 0 0 b
#3051 SendRequest netcoreapp3.1 179μs 178ns 689ns 0.267 0 0 20.33 KB
Benchmarks.Trace.DbCommandBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteNonQuery net472 1.57μs 0.513ns 1.92ns 0.126 0.000785 0 794 B
master ExecuteNonQuery netcoreapp3.1 1.22μs 0.346ns 1.29ns 0.011 0 0 824 B
#3051 ExecuteNonQuery net472 1.58μs 0.717ns 2.78ns 0.126 0.000786 0 794 B
#3051 ExecuteNonQuery netcoreapp3.1 1.3μs 1.54ns 5.97ns 0.0111 0 0 824 B
Benchmarks.Trace.ElasticsearchBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master CallElasticsearch net472 2.28μs 0.705ns 2.73ns 0.159 0 0 1 KB
master CallElasticsearch netcoreapp3.1 1.43μs 0.613ns 2.3ns 0.0136 0 0 984 B
master CallElasticsearchAsync net472 2.43μs 0.81ns 3.14ns 0.18 0 0 1.14 KB
master CallElasticsearchAsync netcoreapp3.1 1.49μs 0.281ns 1.09ns 0.0149 0 0 1.1 KB
#3051 CallElasticsearch net472 2.2μs 0.765ns 2.76ns 0.159 0 0 1 KB
#3051 CallElasticsearch netcoreapp3.1 1.33μs 0.433ns 1.62ns 0.0134 0 0 984 B
#3051 CallElasticsearchAsync net472 2.35μs 1.24ns 4.79ns 0.18 0 0 1.14 KB
#3051 CallElasticsearchAsync netcoreapp3.1 1.46μs 0.646ns 2.5ns 0.0146 0 0 1.1 KB
Benchmarks.Trace.GraphQLBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master ExecuteAsync net472 2.34μs 5.11ns 19.8ns 0.199 0 0 1.26 KB
master ExecuteAsync netcoreapp3.1 1.59μs 2.72ns 10.2ns 0.0164 0 0 1.22 KB
#3051 ExecuteAsync net472 2.48μs 1.96ns 7.34ns 0.2 0 0 1.26 KB
#3051 ExecuteAsync netcoreapp3.1 1.65μs 0.581ns 2.17ns 0.0165 0 0 1.22 KB
Benchmarks.Trace.HttpClientBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendAsync net472 4.88μs 8.01ns 31ns 0.393 0 0 2.48 KB
master SendAsync netcoreapp3.1 3.28μs 7.51ns 29.1ns 0.0324 0 0 2.36 KB
#3051 SendAsync net472 5.08μs 1.57ns 5.86ns 0.394 0 0 2.48 KB
#3051 SendAsync netcoreapp3.1 3.27μs 2.19ns 7.91ns 0.0312 0 0 2.36 KB
Benchmarks.Trace.ILoggerBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net472 2.89μs 0.935ns 3.5ns 0.263 0 0 1.66 KB
master EnrichedLog netcoreapp3.1 2.29μs 0.961ns 3.72ns 0.0239 0 0 1.73 KB
#3051 EnrichedLog net472 2.87μs 1.03ns 3.71ns 0.264 0 0 1.66 KB
#3051 EnrichedLog netcoreapp3.1 2.38μs 0.848ns 3.17ns 0.0229 0 0 1.73 KB
Benchmarks.Trace.Log4netBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net472 146μs 93.9ns 364ns 0.66 0.22 0 4.5 KB
master EnrichedLog netcoreapp3.1 113μs 82.4ns 308ns 0.056 0 0 4.38 KB
#3051 EnrichedLog net472 151μs 116ns 449ns 0.67 0.223 0 4.5 KB
#3051 EnrichedLog netcoreapp3.1 114μs 260ns 1.01μs 0.0571 0 0 4.38 KB
Benchmarks.Trace.NLogBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net472 5.32μs 12.7ns 49.4ns 0.545 0.00262 0 3.43 KB
master EnrichedLog netcoreapp3.1 4.22μs 6.58ns 25.5ns 0.0512 0 0 3.8 KB
#3051 EnrichedLog net472 5.47μs 5.75ns 22.3ns 0.543 0.0028 0 3.43 KB
#3051 EnrichedLog netcoreapp3.1 4.32μs 2.91ns 10.9ns 0.0518 0 0 3.8 KB
Benchmarks.Trace.RedisBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master SendReceive net472 1.98μs 1.18ns 4.43ns 0.194 0 0 1.22 KB
master SendReceive netcoreapp3.1 1.61μs 0.467ns 1.75ns 0.0162 0 0 1.21 KB
#3051 SendReceive net472 2.03μs 1.07ns 4.16ns 0.193 0 0 1.22 KB
#3051 SendReceive netcoreapp3.1 1.73μs 0.97ns 3.63ns 0.0165 0 0 1.21 KB
Benchmarks.Trace.SerilogBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master EnrichedLog net472 4.78μs 1.93ns 7.46ns 0.329 0 0 2.08 KB
master EnrichedLog netcoreapp3.1 4.12μs 1.73ns 6.48ns 0.0227 0 0 1.69 KB
#3051 EnrichedLog net472 4.66μs 1.91ns 7.14ns 0.329 0 0 2.08 KB
#3051 EnrichedLog netcoreapp3.1 4.33μs 1.59ns 5.96ns 0.0216 0 0 1.69 KB
Benchmarks.Trace.SpanBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master StartFinishSpan net472 860ns 0.59ns 2.28ns 0.105 0 0 658 B
master StartFinishSpan netcoreapp3.1 733ns 0.251ns 0.906ns 0.00875 0 0 648 B
master StartFinishScope net472 1.05μs 0.702ns 2.63ns 0.117 0 0 738 B
master StartFinishScope netcoreapp3.1 881ns 0.501ns 1.87ns 0.0101 0 0 768 B
#3051 StartFinishSpan net472 843ns 0.191ns 0.713ns 0.105 0 0 658 B
#3051 StartFinishSpan netcoreapp3.1 763ns 0.585ns 2.11ns 0.00883 0 0 648 B
#3051 StartFinishScope net472 1.11μs 0.359ns 1.34ns 0.117 0 0 738 B
#3051 StartFinishScope netcoreapp3.1 938ns 0.361ns 1.35ns 0.0103 0 0 768 B
Benchmarks.Trace.TraceAnnotationsBenchmark - Same speed :heavy_check_mark: Same allocations :heavy_check_mark:

Raw results

Branch Method Toolchain Mean StdError StdDev Gen 0 Gen 1 Gen 2 Allocated
master RunOnMethodBegin net472 1.16μs 0.7ns 2.71ns 0.117 0 0 738 B
master RunOnMethodBegin netcoreapp3.1 1.04μs 0.506ns 1.75ns 0.0104 0 0 768 B
#3051 RunOnMethodBegin net472 1.17μs 0.407ns 1.58ns 0.117 0 0 738 B
#3051 RunOnMethodBegin netcoreapp3.1 967ns 0.358ns 1.39ns 0.0106 0 0 768 B

andrewlock avatar Aug 04 '22 16:08 andrewlock