-
Notifications
You must be signed in to change notification settings - Fork 83
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
all: remove Trace and SpanContext from SearchOptions #761
base: main
Are you sure you want to change the base?
Conversation
Since the move to gRPC these fields should make no difference. SpanContext is never set anymore by our clients. Trace is still set, but I believe we should be communicating to trace or not via grpc. Additionally we just rely on the opentracing global tracer. If tracing is not configured it will just use the noop tracer, not sure why we had our own implementation. Test Plan: go test. Will seek more guidance on other tests to run.
Does this change make sense? Should we keep in our application code the idea of if we should create a trace or not, or is that all magically handled somehow via grpc? Or for that do happen do I need to port our code to otel? cc some more people who did tracing stuff @burmudar @bobheadxi |
I think this makes sense:
|
Yeah, this makes sense to me. Do we not use otel already? I was thinking I updated Zoekt at some point |
Thanks for the comments! I haven't forgotten about this PR, I'm just focussed on other projects at the moment. We do use OTEL, but not "natively". IE it all goes via opentelemetry at instrumentation time, but at configuration time we do it via OTEL and return a opentracing.Tracer from that. We also still support using the jaeger clients via opentracing, which I believe is also deprecated and we should just use OTEL. So I think I can take this PR further (or do a follow-up) and just rip out a bunch of stuff and make everything work with just OTEL. |
Since the move to gRPC these fields should make no difference. SpanContext is never set anymore by our clients. Trace is still set, but I believe we should be communicating to trace or not via grpc.
Additionally we just rely on the opentracing global tracer. If tracing is not configured it will just use the noop tracer, not sure why we had our own implementation.
Test Plan: go test. Will seek more guidance on other tests to run.