vmfloaty
vmfloaty copied to clipboard
Add OpenTelemetry client instrumentation
Status
In Progress
Description
Add OpenTelemetry client instrumentation
Related Issues
Todos
- [ ] Tests
- [ ] Documentation
Reviewers
@puppetlabs/dio @highb @briancain
@briancain It will absolutely be opt it, full stop. The default functionality will be to emit nothing and to stay out of the way.
The reasoning for this is that OpenTelemetry tracing has been added to VMPooler, NSPooler, and ABS and there is benefit in extending the trace information down to the initiating client.
This PR is still a draft because I still have a good bit of work to do to make sure it works as intended and that it really does stay out of the way. This is the first client-side instrumentation I have worked on and the first for an app that can also be used as a library a la what is done in https://github.com/puppetlabs/beaker-abs/pull/18.
@genebean Great! Thanks for the extra info. Also apologies if I came on a little strong this morning :heart: That makes sense, it sounds like there's some confusion around what tool is making what requests.
@highb gave me a bit more context too.
No problem at all @briancain!
Just chiming in to say that getting this trace data should make debugging failed VM checkouts across Beaker to ABS to VMPooler/AWS/VSphere so much easier. I'm happy to see this work moving forward and looking forward to seeing how it evolves (even if I can't really see it in action anymore 😢🎻 )
That being said, I'd agree with @briancain that it should definitely be opt-in/no impact on users who don't want it, and that's how it looks to be configured currently. I'm sure @genebean is being very conscientious about user privacy here. ❤️
@genebean Happy to review this again whenever you're ready.
@genebean Any progress here?