Logging
Spring Boot Actuator 包含在运行时查看和配置应用日志级别的功能。 您可以查看整个列表或单个日志器的配置,该配置既包括显式配置的日志等级,也包括日志框架给出的有效日志等级。 这些层级可以是:
-
跟踪 -
调试 -
信息 -
警告 -
错误 -
致命 -
关掉 -
零
零表示不存在显式配置。
配置日志
要配置给定的记录器,发布作为资源URI的部分实体,如下示例所示:
{
"configuredLevel": "DEBUG"
}
要“重置”记录器的具体等级(并使用默认配置),你可以传递一个值零作为configuredLevel. |
开放遥测
默认情况下,通过 OpenTelemetry 进行日志记录未被配置。 你需要提供OpenTelemetry日志端点的位置来配置:
-
Properties
-
YAML
management.opentelemetry.logging.export.otlp.endpoint=https://otlp.example.com:4318/v1/logs
management:
opentelemetry:
logging:
export:
otlp:
endpoint: "https://otlp.example.com:4318/v1/logs"
| OpenTelemetry Logback 附加器和 Log4j 附加器不属于 Spring Boot 的一部分。 欲了解更多细节,请参阅OpenTelemetry Java仪器GitHub仓库中的OpenTelemetry Logback附加器或OpenTelemetry Log4j2附加符。 |
你必须在你的附录中配置logback-spring.xml或log4j2-spring.xml配置以实现OpenTelemetry日志工作。 |
这OpenTelemetryAppender对于Logback和Log4j都需要访问开放遥测让它正常运作。
该实例必须在应用程序启动时以程序方式设置,具体作如下:
-
Java
-
Kotlin
import io.opentelemetry.api.OpenTelemetry;
import io.opentelemetry.instrumentation.logback.appender.v1_0.OpenTelemetryAppender;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.stereotype.Component;
@Component
class OpenTelemetryAppenderInitializer implements InitializingBean {
private final OpenTelemetry openTelemetry;
OpenTelemetryAppenderInitializer(OpenTelemetry openTelemetry) {
this.openTelemetry = openTelemetry;
}
@Override
public void afterPropertiesSet() {
OpenTelemetryAppender.install(this.openTelemetry);
}
}
import io.opentelemetry.api.OpenTelemetry
import io.opentelemetry.instrumentation.logback.appender.v1_0.OpenTelemetryAppender
import org.springframework.beans.factory.InitializingBean
import org.springframework.stereotype.Component
@Component
class OpenTelemetryAppenderInitializer(
private val openTelemetry: OpenTelemetry
) : InitializingBean {
override fun afterPropertiesSet() = OpenTelemetryAppender.install(openTelemetry)
}