baseplate.py
baseplate.py copied to clipboard
Open Telemetry
This PR implements otel for http and thrift in bp.py. Because of unsolvable conflicting dependencies, this also removes python 3.7.
@chriskuehl you mentioned that there is some changes that have made it to develop but not been released yet. Would it be better for us to target a release branch?
I've got develop merged in and all the tests passing. I'll begin addressing the other PR comments next.
One thing to note is that opentelemetry-python doesn't officially support 3.12 yet, so we may have to wait for that or restrict baseplate to 3.11 for the time being.
@chriskuehl I'm curious what your thoughts are on the lack of 3.12 support at the moment?
https://github.com/open-telemetry/opentelemetry-python/issues/3617
@chriskuehl I'm curious what your thoughts are on the lack of 3.12 support at the moment?
I don't think we can merge this until 3.12 support is available, since we already have services which have migrated to 3.12.
This looks reasonable but given the size it's difficult to catch any bugs during review. I think we should discuss how we want to test this before the final release.
Fully on board here, here are two testing steps I want to take before we cut an official release:
- [ ] Additional testing in snoodev to verify context propagation general functionality
- [ ] Cut some form of alpha release and work with teams that are still < 3.12. This will make it easier for them to test in snoodev and possibly even some canary testing.
With the 3.12 limitation I'm interested in your thoughts around maintaining an otel branch/release that will be limited to 3.11 and below until we can get the upstream issues resolved?
Let's also get a review from someone more familiar with our tracing setup before merging, since I'm not really qualified to review that beyond basic logic checking.
I'm sure we can get @Xaelias to give this another pass, since I've taken this over. Not sure if you can approve your own PR though. Ultimately we are the two people who have context to the tracing work here. Pete Loaf has done most of the golang work, but I'm not sure if it makes sense to have him review here as well or not?