2 ms·
Wow, if this really works like you describe, then this is magic! > Automatic instrumentation across programming languages is not a trivial task, especially whe
by cube2222 4y ago
Wow, if this really works like you describe, then this is magic!
> Automatic instrumentation across programming languages is not a trivial task, especially when dealing with static binaries (like the ones produced by the Go compiler). We built multiple mechanisms to make sure we inject the relevant headers in a secure and stable way. We developed a system that tracks functions and structs across different versions of open-source libraries.
Could be very useful for non-greenfield projects. I'd love to learn more about the details, is there any writeup somewhere?
Though I'd still recommend new projects do "proper" tracing with not only one-per-service spans, but also spans for important functions, including additional application-specific tags, as that is easily 10x the value.
But since life is a sequence of tradeoffs, I think this project could be really useful in a lot of places.
- edenfed 4y agoWe are actually doing technical deep dive on the next meeting of the OpenTelemetry Go auto instrumentation meeting in Tuesday. Will be happy to share the presentation afterwards. In addition, we automatically create spans for popular open source libraries in use so you should also expect to see spans for database connections / cloud SDKs/ Kafka clients / etc. Definitely agree that manual instrumentation is very important in addition to the automatic one
- phillipcarter 4y ago> Though I'd still recommend new projects do "proper" tracing with not only one-per-service spans, but also spans for important functions, including additional application-specific tags, as that is easily 10x the value. FWIW Odigos makes this possible because it uses OpenTelemetry (and generates OTel-compatible instrumentation for the eBPF-sourced data). You can go into an app that's instrumented this way, add an OpenTelemetry SDK, and start writing manual instrumentation or include additional instrumentation libraries. Your traces will just get deeper/richer when you do that.
- intelVISA 4y agoWith tech like eBPF dynamic instrumentation is surprisingly easy actually. Still, always glad to see some innovation in this space.