Description
Hi everyone! Thank you for the awesome ecosystem and tooling you are developing.
We are building Pyroscope, an open source continuous profiling platform. Our .NET agent handles the EventPipe stream from the profiled application through the diagnostic IPC in order to collect a CPU profile, and this works well in a simple scenario where the profile is collected for the entire application/process. We are currently working on an integration with distributed tracing, which requires us to distinguish various execution scopes more granularly, for example scopes of HTTP requests. Go and Java applications are already supported and we'd love to add support for .NET applications – this thread may give more context.
I'm wondering what is the best way to reliably correlate Microsoft-DotNETCore-SampleProfiler
events with OpenTelemetry trace spans. For example, in Go there are pprof tags, in Java JFR one can use execution context ID (ECID), etc. Basically, we're looking for a way to annotate EventPipe events with an arbitrary set of tags/labels.
Any questions and suggestions are greatly appreciated!