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
Couchbase query is missing trace id #914
Comments
How exactly do you suggest people to move to Reactor when the code is written by third-party? Just because Sleuth is not able to work with RxJava doesn’t mean every library in the world is suddenly going to jump ship and rewrite their code. Such suggestion makes no sense to me |
Of course. There's no problem for you to file a PR to fix the RxJava instrumentation. It's open source and you're one of the first (if not the first) persons to complain about this. |
opened openzipkin/brave#664 for a "continue-only" scheduler hook for rxjava2. This is not automatic instrumentation, just would prevent people from copy/pasting the trace continuing parts. It might now solve what you want, but anyway worth a look. |
True, but one might wonder why didn't you when you filed 398 1.5 years ago. That said, I'll take a look, and pay my dues if I can. @adriancole I'm using RxJava 1 |
@adriancole <https://github.com/adriancole> I'm using RxJava 1
ok please note that in this openzipkin/brave#664
I had assumed couchbase was rx2, that's all.
… |
Looking more carefully at this now. There's usually two ways to sort a
problem. If a library is rxjava in nature and it is bypassing scheduler
hooks, probably it should be attempted to not do that. In other words,
raise an issue on their project about the generic RxJava concern.
For example, I've done this in retrofit
<square/retrofit#2721> and also vert.x
<vert-x3/vertx-rx#134> and encountered zero
resistance in fixing the upstream concern.
Basically, we want to get into a position where sleuth's job isn't to work
around limitations of underlying libraries.. it might not be able to
overcome all of them, and it leads to spaghetti code. Plus it is simply
more scalable for the whole ecosystem to discuss problems directly.
Can you raise the issue first with couchbase? I don't know exactly how to
reproduce your issue, yet, in order to do this on your behalf. If you can
create an example based on this
<https://github.com/openzipkin/sleuth-webmvc-example> I could, or you
could.. doesn't matter to me.
TL;DR: anyone using scheduler hooks (ex not just sleuth) will be affected,
if it is a problem in missing hooks. Let's help sort the root concern.
|
While working with Couchbase client and Spring Cloud Sleuth, I found an issue with how Couchbase uses
Subject
. Sleuth relies on the RxJava hooks to continue the trace and span id. AbstractCouchbaseRequest creates aSubject
that bypasses the RxJava hooks. Hence, Sleuth can't trace the Couchbase queries made.I believe this to be a Sleuth issue and not Couchbase beacuse they don't seem to be doing anything wrong with their usage of
Subject
.The text was updated successfully, but these errors were encountered: