elastic / elastic-otel-dotnet

Elastic OpenTelemetry .NET Distribution
Apache License 2.0
15 stars 2 forks source link

.NET custom OTel Metrics dashboard #59

Open stevejgordon opened 4 months ago

stevejgordon commented 4 months ago

Related to https://github.com/elastic/apm-agent-dotnet/issues/2118 and #58, we should design a bespoke portable dashboard for OTel metrics that can be swapped in based on the agent sending the data.

stevejgordon commented 3 months ago

I have designed an initial OTel dashboard based on process and runtime metrics. These instrumentations are not enabled when using the vanilla SDK, but our distro brings in the contrib libraries and enables them. This means that the OTel dashboard will be empty when data is sent from the vanilla .NET OTel SDK. We are currently using the contrib runtime metrics, which will at some point (hopefully .NET 9) be replaced with runtime native metrics, conforming to a new proposed semantic convention for CLR runtime metrics.

In the future, we will need more control in the Kibana code to enable switching out the dashboard based on agent name and potentially the distro version, runtime version and framework. This would allow finer control of more specific dashboards using the expected available metrics.

This is an example of the planned panels for the initial version:

image

Next steps:

  1. A PR into the Kibana repo to register the portable dashboard for OTel runtime metrics.