我们使用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 的日志级别吗?
您可以在启动 JVM 时使用此命令行参数完全关闭 OpenTelemetry Java 代理的日志记录:
-Dio.opentelemetry.javaagent.slf4j.simpleLogger.defaultLogLevel=off
这将抑制缺少导出器端点上的
otel.javaagent
消息。
您可以使用命令行参数来更改日志级别,但由于这是一个错误,它仍会写入控制台。
我不确定您为什么想要这样做 - 但您可以创建一个不记录此问题的自定义代理,或者以较低级别记录它。
您可以将系统属性 -
otel.javaagent.logging
或环境变量 - OTEL_JAVAAGENT_LOGGING
设置为 none
。
文档链接:https://opentelemetry.io/docs/zero-code/java/agent/configuration/#java-agent-logging-output