下面我使用示例app.ication来显示时间错误,它从不创建日志文件
package com.example;
import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;
public class logtester {
static final Logger logger = Logger.getLogger(logtester.class);
@Value("${log4j.appender.R.MaxFileSize}")
public static void main(String[] args) {
PropertyConfigurator.configure("logProperties.properties");
logger.debug("Sample debug message");
logger.info("Sample info message");
logger.warn("Sample warn message");
logger.error("Sample error message");
logger.fatal("Sample fatal message");
// System.out.write("a2nd method");
PropertyConfigurator.configure("application.properties");
//System.out.write("weocme to usa");
logger.debug("Sample debug message");
logger.info("Sample info message");
logger.warn("Sample warn message");
logger.error("Sample error message");
logger.fatal("Sample fatal message");
// System.out.write("a2nd method");
}
}
以上是我的主文件,现在我将发布我的prpoperties文件
我用两个来检查它们是否有效,但是nbuth没有
application.properties
档案
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.File=TVK.log
log4j.appender.FILE.MaxFileSize=512KB
log4j.appender.FILE.MaxBackupIndex=3
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p - %m%og4j.appender.NotConsole=org.apache.log4j.RollingFileAppender
log4j.appender.NotConsole.fileName=/some/path/to/a/fileName.log
log4j.appender.NotConsole.maxFileSize=20MB
另一个属性文件:log4jproperties.properties
log4j.appender.FILE=org.apache.log4j.RollingFileAppender
log4j.appender.FILE.File=TVK.log log4j.appender.FILE.MaxFileSize=512KB
log4j.appender.FILE.MaxBackupIndex=3
log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
log4j.appender.FILE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %-5p - %m%
log4j.appender.NotConsole=org.apache.log4j.RollingFileAppender
log4j.appender.NotConsole.fileName=/some/path/to/a/fileName.log
log4j.appender.NotConsole.maxFileSize=20MB
log4j.appender.MAIN_LOG=org.apache.log4j.RollingFileAppender
log4j.appender.MAIN_LOG.File=${catalina.base}/logs/webtop.log
log4j.appender.MAIN_LOG.layout=com.j256.ormlite.Log4JSimpleLayout
log4j.appender.MAIN_LOG.MaxFileSize=10MB
log4j.appender.MAIN_LOG.MaxBackupIndex=5
log4j.appender.MAIN_LOG.append=true
log4j.rootCategory=ALL, MAIN_LOG
答案 0 :(得分:2)
有多种PropertyConfigurator.configure()
方法(请参阅https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PropertyConfigurator.html)。
您使用的那个从您启动应用程序的目录中查找文件系统中的文件“logProperties.properties”。
如果该文件与应用程序一起打包,则应使用configure方法获取输入流:
PropertyConfigurator.configure(
logtester.class.getResourceAsStream("/logProperties.properties");
无论如何,如果log4j找不到属性文件,它应该显示一些错误:
log4j:ERROR Could not read configuration file [application.properties].
java.io.FileNotFoundException: application.properties (The system cannot find the file specified)
你有类似的东西吗?