Integrate ODL with Jaeger or Zipkin

2020-05-01 04:16发布

问题:

I am trying to integrate an ODL application with Jaeger or Zipkin to trace the logs.

Jaeger worked with fine with a Java Application, but doesn't work with ODL. I get NoClassDefError even though I added the bundles:

install -s wrap:mvn:org.apache.thrift/libthrift/0.12.0
install -s wrap:mvn:io.jaegertracing/jaeger-core/0.35.4
install -s wrap:mvn:io.jaegertracing/jaeger-thrift/0.35.4
install -s wrap:mvn:io.opentracing/opentracing-api/0.31.0
install -s wrap:mvn:io.opentracing/opentracing-util/0.31.0
install -s wrap:mvn:io.opentracing/opentracing-noop/0.31.0
install -s wrap:mvn:io.opentracing.contrib/opentracing-tracerresolver/0.1.0

And For Zipkin, I tried Zipkin-brave-core, but I was not able to resolve the dependencies.

I am getting this:

opendaylight-user@root>diag 259
brave-core (259)
----------------
Status: Installed
Unsatisfied Requirements:
osgi.wiring.package; filter:="(&(osgi.wiring.package=com.github.kristofa.brave.internal)(&(version>=3.16.0)(!(version>=4.0.0)))(braveinternal=true))"; resolution:="mandatory"
osgi.wiring.package; filter:="(&(osgi.wiring.package=com.twitter.zipkin.gen)(&(version>=3.16.0)(!(version>=4.0.0))))"; resolution:="mandatory"
osgi.wiring.package; filter:="(&(osgi.wiring.package=zipkin)(&(version>=1.16.0)(!(version>=2.0.0))))"; resolution:="mandatory"
osgi.wiring.package; filter:="(&(osgi.wiring.package=zipkin.internal)(&(version>=1.16.0)(!(version>=2.0.0))))"; resolution:="mandatory"