Skip to content

OpenTelemetry: Respect provided TracingPolicy in VertxTracer implementations #25417

Open
@calohmn

Description

Description

When using the quarkus-opentelemetry extension, there currently seems to be no direct way to switch off certain kinds of instrumentation. For example, the Vert.x event bus instrumentation might produce traces that are not needed in certain applications and just produce noise there.

Reading the Vert.x OpenTelemetry documentation, the assumption would be, that the solution here is to just set the TracingPolicy.IGNORE policy on the Vert.x event bus DeliveryOptions.

But this doesn't work with the Quarkus VertxTracer implementations. There, the TracingPolicy parameter is getting ignored (in contrast to the Vert.x OpenTelemetryTracer implementation).

Another example would be HTTP server/client instrumention, where also the TracingPolicy can be set in the client/server options. Being able to use TracingPolicy.IGNORE there would for example make it easier to migrate applications already having a (manual) HTTP request instrumentation. (Letting the HttpInstrumenterVertxTracer traces be discarded by means of a custom Sampler implementation looks like an inferior workaround.)

Implementation ideas

Skip request processing in the Quarkus VertxTracer implementations for requests with TracingPolicy.IGNORE (as done in the Vert.x OpenTelemetryTracer).

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions