将 log4j2.properties 配置到 Spring Boot 中的问题(使用 gradle)
Posted
技术标签:
【中文标题】将 log4j2.properties 配置到 Spring Boot 中的问题(使用 gradle)【英文标题】:Problem with configuring log4j2.properties into spring boot( using gradle) 【发布时间】:2019-10-26 15:14:29 【问题描述】:我在 scr/main/resources 中添加了一个 log4j2.properties 文件,但它没有受到影响。 log4j2.properties 不应该被自己检测到。如何检查它是否未被检测到??
Log4j2.properties 文件
status = error
name = PropertiesConfig
filters = threshold
filter.threshold.type = ThresholdFilter
filter.threshold.level = debug
appenders = console
appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = %dyyyy-MM-dd HH:mm:ss %-5p %c1:%L - %m%n
rootLogger.level = debug
rootLogger.appenderRefs = stdout
rootLogger.appenderRef.stdout.ref = STDOUT
【问题讨论】:
【参考方案1】:Spring Boot 使用 Logback 作为日志框架。
如果你想使用 Log4j2 你必须做一些配置。
排除默认记录器并添加log4j2启动器依赖:
dependencies
compile 'org.springframework.boot:spring-boot-starter-web'
compile 'org.springframework.boot:spring-boot-starter-log4j2'
configurations
all
exclude group: 'org.springframework.boot', module: 'spring-boot-starter-logging'
据我所知,Log4j2 是使用 XML 文件而不是属性文件配置的。
请在官方 Spring Boot 参考文档中找到所有信息:
https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#howto-configure-log4j-for-logging
【讨论】:
以上是关于将 log4j2.properties 配置到 Spring Boot 中的问题(使用 gradle)的主要内容,如果未能解决你的问题,请参考以下文章
log4j2.properties 弹性集群日志滚动和压缩问题
log4j2.properties 无法从 Docker Environment 或 Kubernetes Env 读取变量
Elasticsearch 可以热重载 log4j2.properties 吗?
日志记录:在 Spring Boot 中使用 log4j2.properties 文件实现 Log4j2