Java 如何使用log4j2仅将System.Out语句写入不同的日志文件?

Java 如何使用log4j2仅将System.Out语句写入不同的日志文件?,java,log4j2,Java,Log4j2,我想将所有System.Out.Println()的输出写入另一个日志文件。我正在使用log4j2,并且尝试使用单独的appender,但是在我的例子中,两个日志文件都是用相同的日志写入的,没有一个是sysout。下面是我正在使用的log4j2.properties文件。我正在尝试只在AuditLogs.log文件中写入我的系统输出 name=UM rootLogger.level = info rootLogger.appenderRefs = stdout, file rootLogger

我想将所有System.Out.Println()的输出写入另一个日志文件。我正在使用log4j2,并且尝试使用单独的appender,但是在我的例子中,两个日志文件都是用相同的日志写入的,没有一个是sysout。下面是我正在使用的log4j2.properties文件。我正在尝试只在AuditLogs.log文件中写入我的系统输出

name=UM

rootLogger.level = info
rootLogger.appenderRefs = stdout, file
rootLogger.appenderRef.stdout.ref = STDOUT
rootLogger.appenderRef.file.ref = LOGFILE

appenders = console, file

appender.file.type = File
appender.file.name = LOGFILE
appender.file.fileName=C:\\Servers\\Tomcat\\local\\logs\\UMlogs.log
appender.file.layout.type=PatternLayout
appender.file.layout.pattern=[%-5level] %d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %c{1} - %msg%n
appender.rolling.policies.size.type = SizeBasedTriggeringPolicy
appender.rolling.policies.size.size=10MB
appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.max = 10

appender.console.type = File
appender.console.name = STDOUT
appender.console.fileName=C:\\Servers\\Tomcat\\local\\logs\\Auditlogs.log
appender.console.layout.type=PatternLayout
appender.console.layout.pattern=%d [%p] %c - %m%n

您正在做的是*将普通日志记录到
System.out
”,但您需要另一种方法:将进入
System.out
的内容放入日志系统(然后将其配置为特定文件):。