top of page
Writer's pictureJosef Mayrhofer

What is the Overhead of Instrumentation Frameworks

Instrumentation frameworks are crucial for organizations delivering fast and reliable business services. These frameworks play a vital role in identifying issues within complex services, thereby averting any negative impact on users. When choosing the proper instrumentation framework or observability solution, the question of overhead is not just important; it's critical. 'What is the overhead of the instrumentation/observability platform?' is a query that demands immediate attention.


During the last 15 years, several instrumentation approaches appeared, such as

  • AspectJ

  • ByteBuddy

  • DiSL

  • Javassist

  • Manual source instrumentation


Monitoring Frameworks such as OpenTelemetry or Observability platforms such as Dynatrace use these techniques to inject additional code, which allows them to trace throughput, errors, and response times to gather more insights.


Instrumentation Overhead Benchmark


During the ICEP2024 conference in London, I attended a paper presentation by David Georg Reichelt, Assistant Professor from Lanchester University in Leipzig. David used the MooBench solution https://github.com/kieker-monitoring/moobench to benchmark the mentioned instrumentation frameworks and implemented propes in Kieker https://kieker-monitoring.net/performance-benchmarks/


Benchmark Summary

  • Source instrumentation has the lowest overhead.

  • OpenTelemetry has a significantly higher overhead.

  • All instrumentation technologies scale linearly.


Whether you opt for open-source or commercial APM or observability solutions, the monitoring overhead comparison should be a crucial part of your tool selection process. An average user might not notice a 10-ms or 60-ms monitoring overhead. However, the situation changes dramatically if your system under monitoring provides ultra-fast services in milliseconds. This comparison is not just a suggestion; it's a necessity.


Additional resources


Instrumentation overhead benchmark comparison



Keep up the great work! Happy Performance Engineering!




16 views0 comments

Comments


bottom of page