APM for spring webflux

Our technology stack is spring webflux. To support Elastic APM, we use the elastic apm bridge and opentracing-spring-cloud-starter. Works very well in the following versions:
elasticsearch version: 5.x
apm agent version: 1.6.1
apm opentracing version: 1.6.1
opentracing-spring-cloud-starter version: 0.2.6

Due to company's elasticsearch version upgrade to 6.6.5,the agent version 1.6.1 is not fit.
so we upgrade the version of agent. However there is no version compatible between agent and opentracing-spring-cloud-starter. Either there is no span, or service startup error with reporting no class method.

I have no idea how to do.

Hi @sdith,

Thanks for reporting an issue, could you provide more details about the errors you have ?

Which version of the agent did you tried to update to ? the latest one (1.12.0) or an older one like 1.9.0 which supports opentracing version 0.33 ?

Thanks Reply.

I have tried all versions. Some examples of version combinations and their problems are as follows:
First:
elastic-apm-agent(v1.9.1)
apm-opentracing(v1.9.0 support io.opentracing version 0.33.0)
opentracing-spring-cloud-starter(v0.2.6, support io.opentracing version 0.31.0)

This combination will cause application request to be unavailable, the log is:

Second:
elastic-apm-agent(v1.9.1)
apm-opentracing(v1.9.0, support io.opentracing version 0.33.0)
opentracing-spring-cloud-starter(v0.3.11, this is the latest version, support io.opentracing version 0.32.0)

This combination caused problem is the same as the first.

Third:
elastic-apm-agent(v1.9.1)
apm-opentracing(v1.8.0, support io.opentracing version 0.31.0)
opentracing-spring-cloud-starter(v0.2.6, support io.opentracing version 0.31.0)

The application is ok, but there is no span in the transaction at the kibana apm.

I've found that some methods have been removed in opentracing version 0.33 (see CHANGELOG)

Thus any component using version 0.31 (or 0.32) version of opentracing will break with 0.33 with similar errors.

Version 1.8.0 of the agent relies on opentracing 0.31, which explains why does this error does not happen with it.

Regarding the lack of spans in spring-webflux with opentracing bridge, I need to investigate a bit on my side to know what could go wrong.

Latest agent release (1.12.0) is compatible with any apm-server version >= 6.5.
If it is not compatible, then it's a bug and we should report it.

Could you try with latest version of our agent (1.12.0) and just downgrade apm-opentracing to version 1.8.0 ?

Yes, I have tried it. The latest agent is compatible with apm-server version=6.5. *.
However it's lack of span with the apm-opentracing (v1.8.0).

This topic was automatically closed 20 days after the last reply. New replies are no longer allowed.