Java 登录到tomcat上托管的文件
我想将我的应用程序输出记录到tomcat服务器上托管的文件中。log4j.properties集为:Java 登录到tomcat上托管的文件,java,logging,log4j,java.util.logging,Java,Logging,Log4j,Java.util.logging,我想将我的应用程序输出记录到tomcat服务器上托管的文件中。log4j.properties集为: log4j.rootLogger=INFO, stdout, R log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%d
log4j.rootLogger=INFO, stdout, R
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d %p [%c] - %m%n
log4j.appender.R.MaxFileSize=1000KB
log4j.appender.R.MaxBackupIndex=5
log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=${catalina.home}/logs/initiate.log
log4j.appender.stdout=org.apache.log4j.FileAppender
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d %p [%c] - %m%n
它确实创建了
initiate.log
文件,但我的日志语句没有添加到该文件中。问题是什么?或者我将如何使用javaLogger
设置属性以输出到fil您需要定义一种方法来访问java代码中某个地方的文件记录器
import org.apache.log4j.Logger;
private static Logger logger= Logger.getLogger("R");//fileLoggerName: R in this case
然后访问文件,如下所示
logger.error("Whatever message is!!");
//OR
logger.info("message to write", exceptionObjectForCompleteTrace);
不可能。因为它是我的桌面,我是管理员,为什么要两次定义appender“log4j.appender.stdout”?是否在jvm参数中设置
${catalina.home}
?