-
Notifications
You must be signed in to change notification settings - Fork 143
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
Update excluded processes from instrumentation #6599
base: master
Are you sure you want to change the base?
Conversation
Datadog ReportBranch report: ✅ 0 Failed, 209039 Passed, 3246 Skipped, 33h 52m 56.98s Total Time |
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.6.2)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6599) - mean (69ms) : 66, 72
. : milestone, 69,
master - mean (69ms) : 65, 74
. : milestone, 69,
section CallTarget+Inlining+NGEN
This PR (6599) - mean (980ms) : 959, 1000
. : milestone, 980,
master - mean (981ms) : 959, 1003
. : milestone, 981,
gantt
title Execution time (ms) FakeDbCommand (.NET Core 3.1)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6599) - mean (108ms) : 105, 110
. : milestone, 108,
master - mean (108ms) : 106, 111
. : milestone, 108,
section CallTarget+Inlining+NGEN
This PR (6599) - mean (673ms) : 659, 687
. : milestone, 673,
master - mean (676ms) : 660, 691
. : milestone, 676,
gantt
title Execution time (ms) FakeDbCommand (.NET 6)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6599) - mean (91ms) : 89, 93
. : milestone, 91,
master - mean (91ms) : 89, 93
. : milestone, 91,
section CallTarget+Inlining+NGEN
This PR (6599) - mean (627ms) : 611, 643
. : milestone, 627,
master - mean (637ms) : 614, 660
. : milestone, 637,
gantt
title Execution time (ms) HttpMessageHandler (.NET Framework 4.6.2)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6599) - mean (190ms) : 185, 195
. : milestone, 190,
master - mean (190ms) : 185, 195
. : milestone, 190,
section CallTarget+Inlining+NGEN
This PR (6599) - mean (1,090ms) : 1061, 1119
. : milestone, 1090,
master - mean (1,087ms) : 1064, 1110
. : milestone, 1087,
gantt
title Execution time (ms) HttpMessageHandler (.NET Core 3.1)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6599) - mean (276ms) : 272, 281
. : milestone, 276,
master - mean (276ms) : 272, 281
. : milestone, 276,
section CallTarget+Inlining+NGEN
This PR (6599) - mean (867ms) : 838, 895
. : milestone, 867,
master - mean (865ms) : 832, 897
. : milestone, 865,
gantt
title Execution time (ms) HttpMessageHandler (.NET 6)
dateFormat X
axisFormat %s
todayMarker off
section Baseline
This PR (6599) - mean (265ms) : 260, 269
. : milestone, 265,
master - mean (264ms) : 260, 268
. : milestone, 264,
section CallTarget+Inlining+NGEN
This PR (6599) - mean (841ms) : 812, 869
. : milestone, 841,
master - mean (846ms) : 807, 885
. : milestone, 846,
|
Benchmarks Report for tracer 🐌Benchmarks for #6599 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 ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.AgentWriterBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.AspNetCoreBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.CIVisibilityProtocolWriterBenchmark - Same speed ✔️ Same allocations ✔️Raw results
Benchmarks.Trace.DbCommandBenchmark - Faster 🎉 Same allocations ✔️
|
Benchmark | base/diff | Base Median (ns) | Diff Median (ns) | Modality |
---|---|---|---|---|
Benchmarks.Trace.DbCommandBenchmark.ExecuteNonQuery‑net6.0 | 1.121 | 1,409.09 | 1,256.50 |
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | ExecuteNonQuery |
net6.0 | 1.41μs | 1.25ns | 4.67ns | 0.0147 | 0 | 0 | 1.02 KB |
master | ExecuteNonQuery |
netcoreapp3.1 | 1.82μs | 2ns | 7.76ns | 0.0136 | 0 | 0 | 1.02 KB |
master | ExecuteNonQuery |
net472 | 2.01μs | 1.01ns | 3.64ns | 0.156 | 0.00101 | 0 | 987 B |
#6599 | ExecuteNonQuery |
net6.0 | 1.26μs | 1.17ns | 4.54ns | 0.0144 | 0 | 0 | 1.02 KB |
#6599 | ExecuteNonQuery |
netcoreapp3.1 | 1.76μs | 0.957ns | 3.7ns | 0.0132 | 0 | 0 | 1.02 KB |
#6599 | ExecuteNonQuery |
net472 | 2.07μs | 1.7ns | 6.36ns | 0.156 | 0.00103 | 0 | 987 B |
Benchmarks.Trace.ElasticsearchBenchmark - Faster 🎉 Same allocations ✔️
Faster 🎉 in #6599
Benchmark
base/diff
Base Median (ns)
Diff Median (ns)
Modality
Benchmarks.Trace.ElasticsearchBenchmark.CallElasticsearch‑net6.0
1.156
1,354.66
1,172.21
Benchmark | base/diff | Base Median (ns) | Diff Median (ns) | Modality |
---|---|---|---|---|
Benchmarks.Trace.ElasticsearchBenchmark.CallElasticsearch‑net6.0 | 1.156 | 1,354.66 | 1,172.21 |
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | CallElasticsearch |
net6.0 | 1.35μs | 0.54ns | 2.09ns | 0.0136 | 0 | 0 | 976 B |
master | CallElasticsearch |
netcoreapp3.1 | 1.64μs | 0.932ns | 3.36ns | 0.0132 | 0 | 0 | 976 B |
master | CallElasticsearch |
net472 | 2.57μs | 1.65ns | 6.37ns | 0.157 | 0 | 0 | 995 B |
master | CallElasticsearchAsync |
net6.0 | 1.26μs | 0.981ns | 3.54ns | 0.0132 | 0 | 0 | 952 B |
master | CallElasticsearchAsync |
netcoreapp3.1 | 1.59μs | 0.944ns | 3.4ns | 0.0142 | 0 | 0 | 1.02 KB |
master | CallElasticsearchAsync |
net472 | 2.66μs | 1.12ns | 4.04ns | 0.166 | 0 | 0 | 1.05 KB |
#6599 | CallElasticsearch |
net6.0 | 1.17μs | 1.57ns | 6.09ns | 0.0139 | 0 | 0 | 976 B |
#6599 | CallElasticsearch |
netcoreapp3.1 | 1.57μs | 2.47ns | 9.57ns | 0.0132 | 0 | 0 | 976 B |
#6599 | CallElasticsearch |
net472 | 2.63μs | 2ns | 7.76ns | 0.157 | 0 | 0 | 995 B |
#6599 | CallElasticsearchAsync |
net6.0 | 1.2μs | 0.47ns | 1.82ns | 0.0131 | 0 | 0 | 952 B |
#6599 | CallElasticsearchAsync |
netcoreapp3.1 | 1.62μs | 1.93ns | 7.48ns | 0.0136 | 0 | 0 | 1.02 KB |
#6599 | CallElasticsearchAsync |
net472 | 2.73μs | 1.38ns | 5.33ns | 0.166 | 0 | 0 | 1.05 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.35μs | 0.872ns | 3.26ns | 0.0135 | 0 | 0 | 952 B |
master | ExecuteAsync |
netcoreapp3.1 | 1.72μs | 2.08ns | 7.8ns | 0.012 | 0 | 0 | 952 B |
master | ExecuteAsync |
net472 | 1.85μs | 0.467ns | 1.81ns | 0.145 | 0 | 0 | 915 B |
#6599 | ExecuteAsync |
net6.0 | 1.27μs | 0.632ns | 2.37ns | 0.0132 | 0 | 0 | 952 B |
#6599 | ExecuteAsync |
netcoreapp3.1 | 1.65μs | 0.664ns | 2.39ns | 0.0124 | 0 | 0 | 952 B |
#6599 | ExecuteAsync |
net472 | 1.81μs | 0.395ns | 1.42ns | 0.145 | 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 | 4.43μs | 1.39ns | 5.01ns | 0.031 | 0 | 0 | 2.31 KB |
master | SendAsync |
netcoreapp3.1 | 5.17μs | 2.98ns | 11.5ns | 0.0386 | 0 | 0 | 2.85 KB |
master | SendAsync |
net472 | 7.36μs | 1.09ns | 4.07ns | 0.494 | 0 | 0 | 3.12 KB |
#6599 | SendAsync |
net6.0 | 4.27μs | 1.24ns | 4.64ns | 0.032 | 0 | 0 | 2.31 KB |
#6599 | SendAsync |
netcoreapp3.1 | 5.44μs | 2.28ns | 8.84ns | 0.0383 | 0 | 0 | 2.85 KB |
#6599 | SendAsync |
net472 | 7.32μs | 3.25ns | 12.6ns | 0.494 | 0 | 0 | 3.12 KB |
Benchmarks.Trace.ILoggerBenchmark - Slower ⚠️ Same allocations ✔️
Slower ⚠️ in #6599
Benchmark
diff/base
Base Median (ns)
Diff Median (ns)
Modality
Benchmarks.Trace.ILoggerBenchmark.EnrichedLog‑netcoreapp3.1
1.135
2,060.88
2,339.22
Benchmark | diff/base | Base Median (ns) | Diff Median (ns) | Modality |
---|---|---|---|---|
Benchmarks.Trace.ILoggerBenchmark.EnrichedLog‑netcoreapp3.1 | 1.135 | 2,060.88 | 2,339.22 |
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | EnrichedLog |
net6.0 | 1.45μs | 0.879ns | 3.41ns | 0.0231 | 0 | 0 | 1.64 KB |
master | EnrichedLog |
netcoreapp3.1 | 2.06μs | 0.847ns | 3.05ns | 0.0218 | 0 | 0 | 1.64 KB |
master | EnrichedLog |
net472 | 2.65μs | 0.735ns | 2.65ns | 0.249 | 0 | 0 | 1.57 KB |
#6599 | EnrichedLog |
net6.0 | 1.56μs | 1.11ns | 4.16ns | 0.0226 | 0 | 0 | 1.64 KB |
#6599 | EnrichedLog |
netcoreapp3.1 | 2.34μs | 1.18ns | 4.41ns | 0.0224 | 0 | 0 | 1.64 KB |
#6599 | EnrichedLog |
net472 | 2.71μs | 2.19ns | 7.91ns | 0.249 | 0 | 0 | 1.57 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 | 116μs | 76.3ns | 285ns | 0 | 0 | 0 | 4.28 KB |
master | EnrichedLog |
netcoreapp3.1 | 119μs | 109ns | 379ns | 0 | 0 | 0 | 4.28 KB |
master | EnrichedLog |
net472 | 150μs | 94.2ns | 365ns | 0.679 | 0.226 | 0 | 4.46 KB |
#6599 | EnrichedLog |
net6.0 | 116μs | 160ns | 619ns | 0.0577 | 0 | 0 | 4.28 KB |
#6599 | EnrichedLog |
netcoreapp3.1 | 119μs | 169ns | 634ns | 0.06 | 0 | 0 | 4.28 KB |
#6599 | EnrichedLog |
net472 | 151μs | 363ns | 1.4μs | 0.684 | 0.228 | 0 | 4.46 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 | 3.05μs | 2.17ns | 8.13ns | 0.0306 | 0 | 0 | 2.2 KB |
master | EnrichedLog |
netcoreapp3.1 | 4.26μs | 0.929ns | 3.35ns | 0.0297 | 0 | 0 | 2.2 KB |
master | EnrichedLog |
net472 | 4.85μs | 1.77ns | 6.86ns | 0.319 | 0 | 0 | 2.02 KB |
#6599 | EnrichedLog |
net6.0 | 3.05μs | 0.878ns | 3.4ns | 0.0306 | 0 | 0 | 2.2 KB |
#6599 | EnrichedLog |
netcoreapp3.1 | 4.34μs | 9.03ns | 35ns | 0.0281 | 0 | 0 | 2.2 KB |
#6599 | EnrichedLog |
net472 | 4.93μs | 0.852ns | 3.3ns | 0.321 | 0 | 0 | 2.02 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.34μs | 0.537ns | 1.94ns | 0.0159 | 0 | 0 | 1.14 KB |
master | SendReceive |
netcoreapp3.1 | 1.74μs | 1.94ns | 7.49ns | 0.0156 | 0 | 0 | 1.14 KB |
master | SendReceive |
net472 | 2.14μs | 1.04ns | 4.03ns | 0.183 | 0 | 0 | 1.16 KB |
#6599 | SendReceive |
net6.0 | 1.43μs | 0.758ns | 2.94ns | 0.0156 | 0 | 0 | 1.14 KB |
#6599 | SendReceive |
netcoreapp3.1 | 1.75μs | 0.71ns | 2.75ns | 0.0148 | 0 | 0 | 1.14 KB |
#6599 | SendReceive |
net472 | 2.02μs | 0.608ns | 2.11ns | 0.184 | 0 | 0 | 1.16 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 | 2.81μs | 1.08ns | 4.19ns | 0.0225 | 0 | 0 | 1.6 KB |
master | EnrichedLog |
netcoreapp3.1 | 3.85μs | 1.39ns | 5.38ns | 0.0231 | 0 | 0 | 1.65 KB |
master | EnrichedLog |
net472 | 4.47μs | 2.69ns | 10.4ns | 0.323 | 0 | 0 | 2.04 KB |
#6599 | EnrichedLog |
net6.0 | 2.75μs | 1.86ns | 7.2ns | 0.022 | 0 | 0 | 1.6 KB |
#6599 | EnrichedLog |
netcoreapp3.1 | 3.78μs | 2.28ns | 8.83ns | 0.0227 | 0 | 0 | 1.65 KB |
#6599 | EnrichedLog |
net472 | 4.34μs | 2.65ns | 10.3ns | 0.323 | 0 | 0 | 2.04 KB |
Benchmarks.Trace.SpanBenchmark - Slower ⚠️ Same allocations ✔️
Slower ⚠️ in #6599
Benchmark
diff/base
Base Median (ns)
Diff Median (ns)
Modality
Benchmarks.Trace.SpanBenchmark.StartFinishSpan‑netcoreapp3.1
1.126
547.93
616.93
Benchmark | diff/base | Base Median (ns) | Diff Median (ns) | Modality |
---|---|---|---|---|
Benchmarks.Trace.SpanBenchmark.StartFinishSpan‑netcoreapp3.1 | 1.126 | 547.93 | 616.93 |
Raw results
Branch | Method | Toolchain | Mean | StdError | StdDev | Gen 0 | Gen 1 | Gen 2 | Allocated |
---|---|---|---|---|---|---|---|---|---|
master | StartFinishSpan |
net6.0 | 394ns | 0.68ns | 2.63ns | 0.00797 | 0 | 0 | 576 B |
master | StartFinishSpan |
netcoreapp3.1 | 549ns | 0.822ns | 3.18ns | 0.00775 | 0 | 0 | 576 B |
master | StartFinishSpan |
net472 | 633ns | 1.31ns | 5.09ns | 0.0915 | 0 | 0 | 578 B |
master | StartFinishScope |
net6.0 | 487ns | 1.12ns | 4.35ns | 0.00976 | 0 | 0 | 696 B |
master | StartFinishScope |
netcoreapp3.1 | 698ns | 1.82ns | 6.8ns | 0.00952 | 0 | 0 | 696 B |
master | StartFinishScope |
net472 | 827ns | 1.31ns | 5.08ns | 0.104 | 0 | 0 | 658 B |
#6599 | StartFinishSpan |
net6.0 | 404ns | 0.942ns | 3.65ns | 0.00811 | 0 | 0 | 576 B |
#6599 | StartFinishSpan |
netcoreapp3.1 | 614ns | 2.8ns | 10.9ns | 0.00781 | 0 | 0 | 576 B |
#6599 | StartFinishSpan |
net472 | 587ns | 1.49ns | 5.79ns | 0.0918 | 0 | 0 | 578 B |
#6599 | StartFinishScope |
net6.0 | 538ns | 0.818ns | 3.17ns | 0.00961 | 0 | 0 | 696 B |
#6599 | StartFinishScope |
netcoreapp3.1 | 712ns | 1.56ns | 6.03ns | 0.00926 | 0 | 0 | 696 B |
#6599 | StartFinishScope |
net472 | 832ns | 1.5ns | 5.6ns | 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 | 694ns | 0.825ns | 3.2ns | 0.00981 | 0 | 0 | 696 B |
master | RunOnMethodBegin |
netcoreapp3.1 | 903ns | 1.37ns | 5.29ns | 0.00918 | 0 | 0 | 696 B |
master | RunOnMethodBegin |
net472 | 1.04μs | 1.37ns | 5.3ns | 0.104 | 0 | 0 | 658 B |
#6599 | RunOnMethodBegin |
net6.0 | 679ns | 0.701ns | 2.71ns | 0.00955 | 0 | 0 | 696 B |
#6599 | RunOnMethodBegin |
netcoreapp3.1 | 901ns | 1.95ns | 7.57ns | 0.00951 | 0 | 0 | 696 B |
#6599 | RunOnMethodBegin |
net472 | 1.09μs | 1.3ns | 4.85ns | 0.104 | 0 | 0 | 658 B |
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.
I think we should optimize the case comparison check a bit
bool icompare_pred(WCHAR a, WCHAR b) | ||
{ | ||
return std::tolower(a) == std::tolower(b); | ||
} | ||
|
||
bool string_iequal(WSTRING const& s1, WSTRING const& s2) | ||
{ | ||
if (s1.length() == s2.length()) | ||
{ | ||
return std::equal(s2.begin(), s2.end(), s1.begin(), icompare_pred); | ||
} | ||
|
||
return false; | ||
} |
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.
I wonder if we could/should optimize this 🤔 e.g. we have a fixed set of constants we're embedding. If we're going to do a case insensitive compare, then we could
- Store the constants as lowercase
- Do a one-off toLower of the current process, and then do a simple case-sensitive compare.
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.
Okay I attempted to do that
For converting the constants to lowercase I went into VS Code, did a find (["'])(.*?)\1
and selected all matches and then ran a Transform to Lowercase
just to not do it manually incase of typos
I added a couple of new functions and I guess I can use them in the other project? It seemed to build fine but VS was yelling at me initially
WStr("WaAppAgent.exe"), // https://github.com/Azure/WindowsVMAgent | ||
WStr("WindowsAzureGuestAgent.exe") // https://github.com/Azure/WindowsVMAgent |
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.
So tbh, the casing thing is interesting. In general I think we kept the casing because it increases the specificity, especially as we thought these would always have the standard casing, and it avoided any potential clashes with customer apps that should be traced.
Any way, if we're going to do case-insensitive comparison, we should just pre-transform these to the correct case I think.
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 maybe it should be case-sensitive on Linux but not on Windows? (because that's how these OSes generally work)
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.
Maybe a dumb question but would it matter to be case-_in_sensitive on Linux?
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.
I think the only concern is (from @andrewlock above):
it avoided any potential clashes with customer apps that should be traced.
@@ -64,9 +64,10 @@ const shared::WSTRING include_assemblies[]{ | |||
}; | |||
|
|||
// Note that this list should be kept in sync with the values in shared/src/Datadog.Trace.ClrProfiler.Native/util.h | |||
// Note that you also consider adding to the SSI tracer/build/artifacts/requirements.json file | |||
// Note that you should also consider adding to the SSI tracer/build/artifacts/requirements.json file | |||
const shared::WSTRING default_exclude_assemblies[]{ |
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.
Not now, but we should probably share this default_exclude_assemblies
list between the two libraries?
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.
tbh, we probably don't really need the list here at all anymore as long as we block running without the native loader (which we haven't supported for a long time anyway)
There are tests in |
Summary of changes
Adds additional
exe
s to be excluded from tracing and changes existing default exclusion list to be case insensitive.Reason for change
.exe
s weren't being excluded because of casing issues..exe
s we probably shouldn't instrument from https://github.com/Azure/WindowsVMAgentImplementation details
.exe
s from https://github.com/Azure/WindowsVMAgentstring_iequal
to ignore case:dd-trace-dotnet/shared/src/native-src/string.cpp
Line 160 in 592660c
shared/src/native-src/string.cpp
file to the profiler project, so opted to just copy the string comparator and predicateTest coverage
Not really sure how the native tests work and didn't see any existing ones 🫤
Other details
Commend said to update SSI
requirements.json
, but I looked at them (the block list) and wasn't really sure what to do as they looked a bit too different 👀