java - 如何为 log4j2 配置 log4j2.properties 文件以拥有一个带有 2 个不同级别的附加程序的记录器?

标签 java log4j2

任何人都可以帮助我吗,我已经很努力地让它发挥作用,但我没有成功 这是我的配置文件

name=PropertiesConfig
appenders = console, file

appender.console.type = Console
appender.console.name = STDOUT
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n

appender.file.type = File
appender.file.name = LOGFILE
appender.file.fileName=logs/propertieslogs.log
appender.file.layout.type=PatternLayout
appender.file.layout.pattern=[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n


loggers=logfile
logger.logfile.name=com.mycompany.pack
logger.logfile.level = error

logger.logfile.appenderRef.file.ref = LOGFILE
logger.logfile.appenderRef.console.ref = STDOUT

如何为附加程序设置两个不同的级别,例如,在控制台中仅显示信息及以上内容,文件仅显示错误及以上内容?

最佳答案

您需要使用Threshold 属性。

Appender can have a threshold level associated with it independent of the logger level. The Appender ignores any logging messages that have a level lower than the threshold level.

对于您的情况,如下所示:

appender.console.Threshold = info
appender.file.Threshold = error

关于java - 如何为 log4j2 配置 log4j2.properties 文件以拥有一个带有 2 个不同级别的附加程序的记录器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49138835/

相关文章:

java - 将 CipherParameters 写入文件系统

java - 错误 StatusLogger Log4j2 找不到日志记录实现。请将 log4j-core 添加到类路径中。使用 SimpleLogger 登录到控制台

java - 插入的条目不会永久保留在数据库中

java - False Unused "private"方法应该被移除

java - 在android中存储和获取共享首选项的值

java - log4j2 - 如何动态更改文件?

java - log4j2 在 Web 应用程序中错误启动

java - 针对 XSD (java) 验证 XML 的麻烦

java - 极其简单的 Log4j 2.0 示例不起作用

java - 如何在单元测试期间在基于 Spring Java 配置的应用程序中初始化 log4j2?