我尝试使用slf4j和log4j编写日志文件。我可以在控制台中看到日志。但它没有写入日志文件
这是我的log4js属性文件
# Root logger option
log4j.rootLogger=INFO, file, stdout
# Direct log messages to a log file
log4j.appender.file=org.apache.log4j.RollingFileAppender
log4j.appender.file.File=D:\\loging.log
log4j.appender.file.MaxFileSize=1MB
log4j.appender.file.MaxBackupIndex=1
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
# Direct log messages to stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
我在我的类路径中包含了slf4j-api-1.7.5.jar,slf4j-log4j12-1.7.5和log4j-1.2.8.jar。
我使用以下方法编写日志。
private static final String _CONSOLE_INFO = "_CONSOLE_INFO";
public static void stdInfo( String message )
{
org.slf4j.Logger logger = LoggerFactory.getLogger( _CONSOLE_INFO );
logger.warn( message );
}
任何帮助我真的很感激。感谢
答案 0 :(得分:0)
您应该尝试使用LoggerFactory.getLogger( MyClass.class );
代替您的代码。
答案 1 :(得分:0)
您可以像这样在类级别编写logger对象。
public class MainDB {
private static final Logger log = Logger.getLogger(MainDB.class);
public static void main(String[] args)throws IOException,SQLException{
log.debug("Debug");
log.info("Info");
}
}