quarkusio / quarkus

Quarkus: Supersonic Subatomic Java.
https://quarkus.io
Apache License 2.0
13.56k stars 2.63k forks source link

`quarkus.otel.traces.suppress-non-application-uris` not working with `quarkus.management.enabled` #36510

Open allevimi-nttdata opened 11 months ago

allevimi-nttdata commented 11 months ago

Describe the bug

The default behaviour of quarkus.otel.traces.suppress-non-application-uris is to suppress trace collection of non applicative uris, everything is fine with standard confs, but if I enable the management interface through quarkus.management.enabled=truesuppresion will fail.

Expected behavior

With quarkus.management.enabled set to true, health check will be redirect to 0.0.0.0:9000/q/health and trace collection will continue to be suppresed.

Actual behavior

Otel trace collection is not suppressed and it seems that quarkus.otel.traces.suppress-non-application-uris is been ignored.

How to Reproduce?

         io.quarkus.platform:quarkus-bom:pom:3.4.3 ✔

Extensions from io.quarkus.platform:quarkus-bom:
         io.quarkus:quarkus-resteasy-reactive-jackson ✔
         io.quarkus:quarkus-smallrye-health ✔
         io.quarkus:quarkus-config-yaml ✔
         io.quarkus:quarkus-arc ✔
         io.quarkus:quarkus-rest-client-reactive-jackson ✔

 Extensions from unknown origin:
         io.quarkiverse.opentelemetry.exporter:quarkus-opentelemetry-exporter-gcp:2.0.0.Final

application.yaml

quarkus:
  otel:
    traces:
      suppress-non-application-uris: true
  management:
    enabled: true
  opentelemetry:
    tracer:
      exporter:
        gcp:
          enabled: false
        otlp:
          enabled: true
  1. make call to health api curl localhost:9000/q/health
  2. check on Otel receiver (ex. Jaeger)
  3. will see a trace for health call

Output of uname -a or ver

Darwin *** 23.0.0 Darwin Kernel Version 23.0.0: Fri Sep 15 14:41:43 PDT 2023; root:xnu-10002.1.13~1/RELEASE_ARM64_T6000 arm64

Output of java -version

openjdk 17.0.6 2023-01-17 OpenJDK Runtime Environment Temurin-17.0.6+10 (build 17.0.6+10) OpenJDK 64-Bit Server VM Temurin-17.0.6+10 (build 17.0.6+10, mixed mode)

GraalVM version (if different from Java)

No response

Quarkus version or git rev

3.4.3

Build tool (ie. output of mvnw --version or gradlew --version)

Apache Maven 3.9.3

Additional information

No response

quarkus-bot[bot] commented 11 months ago

/cc @brunobat (opentelemetry,tracing), @radcortez (opentelemetry,tracing)

cbos commented 10 months ago

We face the same issue.

We have set these settings:

quarkus.management.enabled=true
quarkus.management.host=localhost
quarkus.management.port=9002
quarkus.management.root-path=/management

The requests to /management/health and /management/metrics are being recorded now, which produces a lot of unnecessary traces.

b3lix commented 4 months ago

I would like to work on this

brunobat commented 4 months ago

Ok @b3lix, go for it.

nielsvhaldvb commented 1 month ago

Whats the current status of this? Otherwise I would like to give this a go.

brunobat commented 1 month ago

@b3lix, Do you mind if @nielsvhaldvb works on this?

b3lix commented 1 month ago

@brunobat @nielsvhaldvb hello, I dropped this effort, so yes go ahead please, and good luck.