Commit 8b26eb2
authored
[Dynamic Instrumentation] Disable AppDomain related log flooding on .NET Framework (#8025)
## Summary of changes
In legacy .NET Framework, a single process can host multiple logically
isolated applications ("AppDomains") managed by the runtime. The machine
code produced from jitting a method is used among the app domains. Thus,
instrumentation is also being shared. The runtime isolates those
different domains and prevents data sharing (that is only possible
through marshalling/proxying). Each probe has metadata associated with
it that is either received through the network (Remote Configuration) or
created locally as in Exception Replay. This metadata is kept in memory
and is crucial for the instrumentation to function correctly. When a
method with an instrumentation is executed in a different domain from
the one that kept this metadata, it can't retrieve it, thus bails out
with a log message.
If such method executes many times, we may log plenty of time, result in
log files rotation and flooding the disk. We have a customer that
complaint about it.
As a quick fix for now, I'm disabling those log messages on .NET
Framework.
## Reason for change
Flooding log files with the log message `BeginMethod_StartMarker: Failed
to receive the ProbeData associated with the executing probe <...>`
## Implementation details
Disabling the log message on .NET Framework using a preprocessor
directive that prevents the compilation of this log message on .NET
Framework builds.1 parent 5d1df24 commit 8b26eb2
File tree
2 files changed
+14
-0
lines changed- tracer/src/Datadog.Trace/Debugger/Instrumentation
2 files changed
+14
-0
lines changedLines changed: 7 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
161 | 161 | | |
162 | 162 | | |
163 | 163 | | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
164 | 170 | | |
| 171 | + | |
165 | 172 | | |
166 | 173 | | |
167 | 174 | | |
| |||
Lines changed: 7 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
87 | 87 | | |
88 | 88 | | |
89 | 89 | | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
90 | 96 | | |
| 97 | + | |
91 | 98 | | |
92 | 99 | | |
93 | 100 | | |
| |||
0 commit comments