“Automatic Instrumentation” can mean a lot of things depending on context. Whether we’re discussing the Instrumentation SDKs or full-kernel observability with eBPF, the promise is the same: end-to-end observability coverage with no custom code and minimal setup. First, I will review how the different mechanisms available for automatic instrumentation work within each of the 11 languages supported by OpenTelemetry. I’ll examine:
- How code-path instrumentation works at the library level by diving into the Node.js OpenTelemetry Extension and the JavaScript libraries it supports
- Automatic instrumentation via attachment with Java and Python
- Automatic instrumentation injection using the OTel Operator for DotNet, Java, and NodeJS
Finally, I’ll take a peek at the future of automatic instrumentation of compiled binaries with a look at the Go instrumentation library built using eBPF.