使用log4j 2.13时禁用ORMLite日志

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

我正在使用log4j:2.13和ORMLite:5.1

我不知道如何禁用(或更改级别)ORMLite日志,而又不影响应用程序其余部分的日志级别。

ORMLite的文档声明我应该执行以下操作:log4j.logger.com.j256.ormlite=DEBUG(source)

嗯,这似乎不起作用。我是使用log4j的新手。有人知道解决方案吗?

这是我的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 = %d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

rootLogger.level = debug
rootLogger.appenderRefs = stdout
rootLogger.appenderRef.stdout.ref = STDOUT

# Even if I set this to ERROR, log4j continues logging at debug level because I set it above..
log4j.logger.com.j256.ormlite.level = ERROR

无论我尝试使用哪种日志级别,似乎rootLogger.level都具有优先权并“替代” ormlite设置。

java logging log4j ormlite
1个回答
1
投票

通常,此类问题是由以下事实引起的:在类路径中有多个Log4J配置文件。使用第一个找到的配置。其他文件可能早于您的文件。

您能做什么?分析您的类路径,类路径中的所有JAR,类路径中的所有目录(如果有)。如有疑问,请在调试器中检查使用了什么配置文件。

更新

带有log4j.logger的行不正确。如下更改(如果需要,设置其他记录器名称):

logger.ormlite.name = com.j256.ormlite
logger.ormlite.level = error
© www.soinside.com 2019 - 2024. All rights reserved.