2013-11-28 75 views
0

我試圖使用slf4j和log4j編寫日誌文件。我可以在控制檯中看到日誌。但它不寫入日誌文件無法使用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在我的classpath中。

我正在用下面的方法寫日誌。

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

你應該嘗試使用LoggerFactory.getLogger(MyClass.class);而不是你的代碼。

0

您可以像這樣在類級別寫入記錄器對象。

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"); 
    } 

    }