open-telemetry / opentelemetry-java-instrumentation

OpenTelemetry auto-instrumentation and instrumentation libraries for Java
https://opentelemetry.io
Apache License 2.0
1.92k stars 839 forks source link

OTEL_JAVAAGENT_DEBUG enables okhttp debug #4821

Open anuraaga opened 2 years ago

anuraaga commented 2 years ago

I'm surprised by this since I thought we only enable debug logging for io.opentelemetry, but I noticed that when enabling debug logging there is a lot of spam from okhttp like this

app_1        | [otel.javaagent 2021-12-07 04:39:19:400 +0000] [OkHttp http://otel:4317/...] DEBUG okhttp3.internal.concurrent.TaskRunner - Q10002 scheduled after   0 µs: OkHttp ConnectionPool
app_1        | [otel.javaagent 2021-12-07 04:39:19:400 +0000] [OkHttp TaskRunner] DEBUG okhttp3.internal.concurrent.TaskRunner - Q10002 starting              : OkHttp ConnectionPool
app_1        | [otel.javaagent 2021-12-07 04:39:19:400 +0000] [OkHttp ConnectionPool] DEBUG okhttp3.internal.concurrent.TaskRunner - Q10002 run again after 300 s : OkHttp ConnectionPool
laurit commented 2 years ago

I though that it was done deliberately, enabling debug also enables debug for all bundled libraries. For loggers that are too chatty set log level to info https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/LoggingConfigurer.java

trask commented 1 year ago

For loggers that are too chatty set log level to info https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/main/javaagent-tooling/src/main/java/io/opentelemetry/javaagent/tooling/LoggingConfigurer.java

Here's the updated location now:

https://github.com/open-telemetry/opentelemetry-java-instrumentation/blob/2ebf4134f915a9caffee713eceaaa696a4093077/javaagent-internal-logging-simple/src/main/java/io/opentelemetry/javaagent/logging/simple/Slf4jSimpleLoggingCustomizer.java#L39-L42