Company
Date Published
Author
Felix Geisendörfer, Vidur Khanna, Jon Bodner, Romain Marcadier
Word count
1356
Language
English
Hacker News points
9

Summary

Datadog has developed Orchestrion, a tool that processes Go source code at compilation time and automatically inserts instrumentation to produce Datadog APM traces. This simplifies the tracing setup and eliminates the need for manual instrumentation in Go applications. Orchestrion interfaces with the standard Go toolchain to inspect and modify the source code as it's being sent to the compiler, allowing unrestricted access to all behavior of the application while preventing errors that could result from direct modification of the compiled binary. The approach is based on compile-time instrumentation, which was chosen over alternative techniques such as binary patching and eBPF due to its safety, reliability, and data quality benefits, as well as its level of automation and performance overhead. Orchestrion offers capabilities not available in eBPF, including blocking function calls for security protection. The tool simplifies monitoring by instrumenting Go applications at build time, enabling quick setup with Datadog APM.