-
Notifications
You must be signed in to change notification settings - Fork 357
Description
Feature Request
It's more of an issue than a feature request. We care a lot about performance for our services and in our local benchmarking we found that AspNetCoreInstrumentation for tracing is extremely inefficient. In a simple AspNetCore application with an extremely simple rest endpoint enabling tracing reduces the service throughput by around 15% which is huge for serving telemetry. (Drops from 10K RPS to 8.6K RPS)
Is your feature request related to a problem?
Yes, telemetry collection should be high performance and shouldn't impact service throughput.
Describe the solution you'd like:
Improve the performance of OTel instrumentation so it's not impacting service throughput.
Describe alternatives you've considered.
A custom middleware which is only using resources for processing what's essential on top of what AspNetCore out of box tracing instrumentation already provides.
Additional Context
The code for application used to measure the throughput and the results can be found here https://github.com/dpk83/otelperfimpactanalysis/tree/main/TelemetryPerfImpactAnalysis