In the interceptor mode ofTracingDriver, it is supposed to be able to trace JDBC connections without modifying the URL. However, this may not work in some cases. For instance, if another wrapper driver calls Driver#acceptsURL for each registered driver in order to find the underlying driver, it won't see TracingDriver unless the JDBC URL has been rewritten to have the jdbc:tracing: prefix.
Solution
In interceptor mode, TracingDriver#acceptsURL should accept any JDBC URL. The user should not need to (and should not) modify the URL for the interceptor mode to work. Also, in interceptor mode, TracingDriver should not try to extract withActiveSpanOnly or ignoreStatements properties from the URL, as they should be set via TracingDriver#setInterceptorProperty.
Problem
In the interceptor mode of
TracingDriver
, it is supposed to be able to trace JDBC connections without modifying the URL. However, this may not work in some cases. For instance, if another wrapper driver callsDriver#acceptsURL
for each registered driver in order to find the underlying driver, it won't seeTracingDriver
unless the JDBC URL has been rewritten to have thejdbc:tracing:
prefix.Solution
In interceptor mode,
TracingDriver#acceptsURL
should accept any JDBC URL. The user should not need to (and should not) modify the URL for the interceptor mode to work. Also, in interceptor mode,TracingDriver
should not try to extractwithActiveSpanOnly
orignoreStatements
properties from the URL, as they should be set viaTracingDriver#setInterceptorProperty
.Fixes opentracing-contrib/java-jdbc#68.