Log4j StringMatchFilter 和 DenyAll 过滤器属性配置

har*_*hal 3 java apache logging log4j

谁能告诉我一个包的过滤器属性,我想在两个不同的日志文件中分离日志。以下是我尝试使用但不起作用的配置。我想要拒绝基于日志的字符串,如“UserMgmt-”,并允许 log1 附加程序中的其余日志,仅允许 log2 附加程序允许“UserMgmt-”并拒绝其余允许日志。

log4j.logger.com.abc=DEBUG, log1
log4j.logger.com.abc=DEBUG, log2


log4j.appender.log1=org.apache.log4j.RollingFileAppender
log4j.appender.log1.Append=true
log4j.appender.log1.File=C:/Oracle/Middleware/user_projects/domains/logs/G_loAFg/UM.log
log4j.appender.log1.layout=org.apache.log4j.PatternLayout
log4j.appender.log1.layout.ConversionPattern=%d %-6p [%c] %m%n
log4j.appender.log1.filter.1=org.apache.log4j.varia.StringMatchFilter
log4j.appender.log1.filter.1.StringToMatch=UserMgmt-  
log4j.appender.log1.filter.1.AcceptOnMatch=false

log4j.appender.log2=org.apache.log4j.RollingFileAppender
log4j.appender.log2.Append=true
log4j.appender.log2.File=C:/Oracle/Middleware/user_projects/domains/logs/PM.log
log4j.appender.log2.layout=org.apache.log4j.PatternLayout
log4j.appender.log2.layout.ConversionPattern=%d %-6p [%c] %m%n
log4j.appender.log2.filter.1=org.apache.log4j.varia.StringMatchFilter
log4j.appender.log2.filter.1.StringToMatch=UserMgmt-  
log4j.appender.log2.filter.1.AcceptOnMatch=true
Run Code Online (Sandbox Code Playgroud)

har*_*hal 5

在第一个 log1 中添加了拒绝所有过滤器,之后它起作用了

log4j.appender.log1.filter=org.apache.log4j.varia.DenyAllFilter
Run Code Online (Sandbox Code Playgroud)
log4j.logger.com.abc=DEBUG, log1
log4j.logger.com.abc=DEBUG, log2


log4j.appender.log1=org.apache.log4j.RollingFileAppender
log4j.appender.log1.Append=true
log4j.appender.log1.File=C:/Oracle/Middleware/user_projects/domains/logs/G_loAFg/UM.log
log4j.appender.log1.layout=org.apache.log4j.PatternLayout
log4j.appender.log1.layout.ConversionPattern=%d %-6p [%c] %m%n
log4j.appender.log1.filter.1=org.apache.log4j.varia.StringMatchFilter
log4j.appender.log1.filter.1.StringToMatch=UserMgmt-  
log4j.appender.log1.filter.1.AcceptOnMatch=false
log4j.appender.log1.filter=org.apache.log4j.varia.DenyAllFilter
log4j.appender.log2=org.apache.log4j.RollingFileAppender
log4j.appender.log2.Append=true
log4j.appender.log2.File=C:/Oracle/Middleware/user_projects/domains/logs/PM.log
log4j.appender.log2.layout=org.apache.log4j.PatternLayout
log4j.appender.log2.layout.ConversionPattern=%d %-6p [%c] %m%n
log4j.appender.log2.filter.1=org.apache.log4j.varia.StringMatchFilter
log4j.appender.log2.filter.1.StringToMatch=UserMgmt-  
log4j.appender.log2.filter.1.AcceptOnMatch=true
Run Code Online (Sandbox Code Playgroud)