-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Analyzers prototyping - Instrumentation module #9629
Copy link
Copy link
Closed
Labels
Description
Context
This module will handle monitoring and summarization of overhead added by analyzers infrastructure and individual analyzers (will be usefull during build performance investigation). API is yet to be determined but sample is added for illustration
Things to be investigated and decided
- We should have opt-in-able output in binlogs, but do we maybe want to trace to ETW as well? (we can leverage the Microsoft.Diagnostic.Tracing to facilitate the collectiong and just have custom events consumer)
- Multiple nodes processes considerations
- Roslyn current implementation and what can we reuse (https://github.com/search?q=repo%3Adotnet%2Froslyn%20ReportAnalyzer&type=code)
Possible tracing API
public struct ScopeId { }
public static class Tracing
{
ScopeId RegisterScope(string name, ScopeId? parent) { }
IDisposable EnterScope(ScopeId scope) { }
void ExitScope(ScopeId scope) { }
TracingSummary GetSummary() { }
}Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
Type
Fields
Give feedbackNo fields configured for issues without a type.