Exclude xml files from dd-trace tool and Datadog.Trace.Bundle#3363
Conversation
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
cdd165a to
8c77d5e
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
8c77d5e to
50bfeb9
Compare
This comment has been minimized.
This comment has been minimized.
50bfeb9 to
09350c4
Compare
This comment has been minimized.
This comment has been minimized.
09350c4 to
a0e4d09
Compare
This comment has been minimized.
This comment has been minimized.
To ensure we strip out pdbs and xml files
This is necessary because we _want_ the pdbs etc when doing unit tests etc. Also, trying to do otherwise breaks various build stuff. It's not perfect, but it'll have to do
86dd3d4 to
6205dcd
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Benchmarks Report 🐌Benchmarks for #3363 compared to master:
The following thresholds were used for comparing the benchmark speeds:
Allocation changes below 0.5% are ignored. Benchmark detailsBenchmarks.Trace.AgentWriterBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.AppSecBodyBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.AspNetCoreBenchmark - Unknown 🤷 Same allocations ✔️Raw results
Benchmarks.Trace.DbCommandBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.ElasticsearchBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.GraphQLBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.HttpClientBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.ILoggerBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.Log4netBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.NLogBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.RedisBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.SerilogBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.SpanBenchmark - Slower
|
| Benchmark | diff/base | Base Median (ns) | Diff Median (ns) | Modality |
|---|---|---|---|---|
| Benchmarks.Trace.SpanBenchmark.StartFinishScope‑netcoreapp3.1 | 1.135 | 1,047.88 | 1,189.58 |
Raw results
| Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
|---|---|---|---|---|---|---|---|---|---|
| master | StartFinishSpan |
net472 | 1.23μs | 0.308ns | 1.15ns | 0.136 | 0 | 0 | 859 B |
| master | StartFinishSpan |
netcoreapp3.1 | 936ns | 0.354ns | 1.33ns | 0.0112 | 0 | 0 | 808 B |
| master | StartFinishScope |
net472 | 1.49μs | 0.35ns | 1.26ns | 0.149 | 0 | 0 | 939 B |
| master | StartFinishScope |
netcoreapp3.1 | 1.05μs | 0.479ns | 1.85ns | 0.0125 | 0 | 0 | 928 B |
| #3363 | StartFinishSpan |
net472 | 1.15μs | 0.214ns | 0.828ns | 0.136 | 0 | 0 | 859 B |
| #3363 | StartFinishSpan |
netcoreapp3.1 | 986ns | 0.351ns | 1.31ns | 0.0109 | 0 | 0 | 808 B |
| #3363 | StartFinishScope |
net472 | 1.47μs | 0.388ns | 1.45ns | 0.149 | 0 | 0 | 939 B |
| #3363 | StartFinishScope |
netcoreapp3.1 | 1.19μs | 0.331ns | 1.2ns | 0.0119 | 0 | 0 | 928 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 |
net472 | 1.57μs | 0.352ns | 1.32ns | 0.149 | 0 | 0 | 939 B |
| master | RunOnMethodBegin |
netcoreapp3.1 | 1.16μs | 0.389ns | 1.45ns | 0.0124 | 0 | 0 | 928 B |
| #3363 | RunOnMethodBegin |
net472 | 1.6μs | 0.48ns | 1.86ns | 0.149 | 0 | 0 | 939 B |
| #3363 | RunOnMethodBegin |
netcoreapp3.1 | 1.15μs | 0.322ns | 1.2ns | 0.0126 | 0 | 0 | 928 B |
|
I couldn't for the life of me get the dd-trace tool to include the pdbs inside the standalone tool. It just refuses, and always outputs them side-by-side at best. @kevingosse now tells me he doesn't see much value in having the managed pdbs anyway.. so this exercise may have been moot 🙄 I'm not sure if we actually do want them for things like ciapp and live debugger though, so we can always revisit later. Something worth considering though: using |
Code Coverage Report 📊✔️ Merging #3363 into master will not change line coverage
View the full report for further details: Datadog.Trace Breakdown ✔️
The following classes have significant coverage changes.
View the full reports for further details: |
Summary of changes
dd-tracetool and Datadog.Trace.Bundle NuGet package home folderdd-tracehome folder (standalone tool mode)dd-tracebin folderdd-tracebin folderReason for change
Xml files are only useful for dev-time experience, but the files in the home folder don't take part in that. Datadog.Trace.Bundle references the Datadog.Trace NuGet which includes them instead.
However, we do want the pdb files in the home folder. So added the ones that were missing.
The XML files and pdb files in the
dd-tracebin folder aren't necessary.Implementation details
MSBuild faffing.
Test coverage
Check the CI artifacts look correct:
Other details
Theconfirmed and fixeddd-tracetool doesn't currently include the pdbs... I think it should?