-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
envoy1.7 can't work with native jaeger, envoy depend on opentracing 1.4.2, but jaeger-client-cpp depend on 1.4.0 #4140
Comments
cc @objectiser |
I think this is best answered by @rnburn and @isaachier. @isaachier Will a release including jaegertracing/jaeger-client-cpp#120 fix this? |
Ya I'll try to get one out today. |
I was building this earlier, envoy currently (v1.7.1) uses opentracing v1.4.2. Jaeger now uses opentracing v1.5.0. Envoy failed to load the so. I'll investigate further. |
I had previously built jaeger-client-cpp v0.4.1 against opentracing-cpp v1.4.2 and had been seeing segfaults. I updated envoy to use opentracing v1.5.0, libjaegertracing_plugin.so v0.4.2 is successfully loaded, but I'm still getting segfaults. I'm trying to get a sensible core dump. |
Any luck @BenPope? |
Not yet. Previous core dump was full of |
I have had issues in the past with missing symbols/dynamic libs not found. You can try |
yesterday I try to fix it, use envoy master, then change opentracing to 1.5.0 and use jaeger-client-cpp master(depend on opentracing 1.5.0), will no segfault, but I met a new problem, "param: 1" which in jaeger-native-tracing/front-envoy-jaeger.yaml will parsed as string, finally in envoy log will see "invalid configuration .... at line". it's so strange. I run tests use jaeger-client-cpp, it can parse successful. |
Please don't use a custom build. Use the release I posted above. |
@isaachier use envoy master, then change opentracing to 1.5.0 and use https://github.com/jaegertracing/jaeger-client-cpp/releases/download/v0.4.2/libjaegertracing_plugin.linux_amd64.so. it works well. thanks. |
@xmm1989218 sorry for the problems you experience and glad they are gone. Would you mind closing this now? |
@isaachier I haven't been able to spend a great deal of time on this, but the crashing doesn't appear to be due to tracing, so I'm also happy for this to be closed. |
@BenPope as I explained to @xmm1989218, custom builds of Jaeger are likely to crash the host application. A specific build process is required for the dynamic loading to work. This is the reason we release the shared object as part of the release. It seems you had been using a custom build as well, in which case, the same fix should work. |
@isaachier The custom build was done as I couldn't find a version of the plugin that envoy would load without segfault (which I believed to be due to mismatched opentracing version). Prior to building the plugin and envoy inside the envoy-build container, I was using something like this and tweaking version numbers:
|
OK at least you have not built Jaeger from sources. That's what I thought you had done. |
Issue Template
Title: One line description
Description:
[optional Relevant Links:]
Bug Template
Title: One line description
Description:
Repro steps:
Admin and Stats Output:
Config:
Logs:
Call Stack:
The text was updated successfully, but these errors were encountered: