dotnet-monitor
dotnet-monitor copied to clipboard
Add support for egressing OTLP logs and metrics
- Rather than egressing to storage or to an http endpoint, send logs and metrics to an OTLP collector endpoint.
- Would not support direct backend egress (e.g. Azure Monitor)
Possible approaches
- Create a new out of process egress provider that egresses to OTLP endpoint.
- Does not require any major changes to dotnet-monitor, other than restricting egress providers to specific artifact capabilities.
- Forces an unnecessary serialization/out of proc transfer/deserialization of the artifacts
- Create an in-proc egress provider
- Built-in providers only, no need to serialize/deserialize artifacts
- Need to figure out configuration
Other concerns:
- The current OTLP Metrics exporter requires the creation of System.Diagnostics.Metrics. Since dotnet-monitor is a managed implementation, it likely creates these implicitly and may interfere with exporting user metrics.