OTEL 代理如何禁用日志记录

问题描述 投票:0回答:3

我们使用OTEL Java代理如下

java -javaagent:path/to/opentelemetry-javaagent.jar \
     -Dotel.resource.attributes=service.name=your-service-name \
     -Dotel.traces.exporter=jaeger\
     -Dotel.exporter.jaeger.endpoint=<IP>
     -jar myapp.jar

当 Dotel.exporter.jaeger.endpoint 无法访问或出现任何其他问题时,它将打印出错误消息

示例:

otel.javaagent 2022-04-27 17:44:59:056 +0530] [OkHttp http://localhost:55680/...] ERROR io.opentelemetry.exporter.otlp.internal.grpc.OkHttpGrpcExporter - Failed to export spans. The request could not be executed.

我们可以禁用 OTEL Java Agent 的日志记录或设置 OTEL Java Agent 的日志级别吗?

java trace open-telemetry jaeger observability
3个回答
2
投票

您可以在启动 JVM 时使用此命令行参数完全关闭 OpenTelemetry Java 代理的日志记录:

-Dio.opentelemetry.javaagent.slf4j.simpleLogger.defaultLogLevel=off

这将抑制缺少导出器端点上的

otel.javaagent
消息。


0
投票

您可以使用命令行参数来更改日志级别,但由于这是一个错误,它仍会写入控制台。

我不确定您为什么想要这样做 - 但您可以创建一个不记录此问题的自定义代理,或者以较低级别记录它。


0
投票

您可以将系统属性 -

otel.javaagent.logging
或环境变量 -
OTEL_JAVAAGENT_LOGGING
设置为
none

文档链接:https://opentelemetry.io/docs/zero-code/java/agent/configuration/#java-agent-logging-output

© www.soinside.com 2019 - 2024. All rights reserved.