perfview
perfview copied to clipboard
Don't include binder events in default CLR events
The binder events - for Fusion in .NET Framework and assembly load tracing in .NET Core/5+ - are for the targeted scenario of assembly bind tracing. They aren't generally helpful to have on by default and can come with a significant performance cost. This removes the binder events from ClrTraceEventParser.Keywords.Default
, since I don't think those intentionally verbose events make sense in the default set.
@elinor-fung thanks for submitting this. While these events can be costly, they are often quite helpful, as ETW traces are often used for troubleshooting issues that are related to assembly loading. A good example is understanding NGEN image rejection on .NET Framework. We include these by default because we use them enough and they aren't so costly that we want to have to ask for them each time we need them. Unless something has changed, my preference would be to leave them in the default set.
@brianrob Can you point me at which events those are? From what I could tell, all the actual binder events in .NET Framework come through the Microsoft-Windows-DotNETRuntimePrivate
provider and nothing actually comes through the FusionKeyword
for Microsoft-Windows-DotNETRuntime
in Framework.