-
Notifications
You must be signed in to change notification settings - Fork 359
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
Documentation for EventPipe #1183
Comments
This would be useful, the whole concept of 'Event Pipes' seems like a really nice idea. I came across them whilst research for Monitoring and Observability in the .NET Runtime (hopefully what I've written is accurate?) but it would be nice to see some more 'official' docs. Am I right in thinking that going forward 'Event Pipes' are the cross-plat way for the Core CLR to expose Diagnostics? (i.e. is what's written in this design doc still up-to date?) |
@mattwarren, yes, what you've written about EventPipe is accurate. The goal is for it to be the one system that takes events and sends them to where they need to go (based on configuration). That can be platform loggers, EventListeners (it's now possible to get the runtime ETW events like GC and JIT events via EventListeners), or even a platform-agnostic file format that TraceEvent knows how to consume. As you say above, EventPipe is the cross platform way that CoreCLR will expose diagnostics, and it works today on all platforms. |
If eventpipe is the unified mechanism for Coreclr to deal with event data are EventSource and EventCounter still the suggested way to put ETW-like data into it? And if this is so is there a suggested way to do performance counters other than pulling in the windows compat nuget package? |
@Wraith2, yes, EventSource and EventCounter are the right ways to be a producer of event data from managed code. They are both hooked up to EventPipe. Our belief is that the right way to implement performance counters (should you wish to create your own counters) is to use EventCounter. We are talking about doing this as as well for framework and runtime-level counters. The Windows Compatibility Pack that you're referring to has support for Windows Performance Counters (aka perfmon), which will allow you to produce your own counters and consume any existing counters, but this is of course Windows-only, and we don't intend to have CoreCLR or any of the .NET Core platform produce data for Windows Performance Counters. |
@brianrob thanks for taking a look at my post! (it's always nice to know what I've written is accurate) |
Per some offline chatter: this work should include some updates to the
If I have missed any points here, please feel free to add more bullet points or contest what I have here 😃 . |
dotnet/docs#21515 added the documentation on EventPipe. @josalem has some really good suggestions on things that need to be added, but since the original issue is on EventPipe I will close this one and move the suggestions from @josalem to #515. |
We should have a walk through and some documentation on how to use EventPipe.
The text was updated successfully, but these errors were encountered: