2017-02-23 223 views
0

我使用Spring + Log4j。我可以在Eclipse控制檯中看到我的日誌,但Log4j無法寫入目標文件。log4j無法寫入文件

我的web.xml:

<context-param> 
    <param-name>log4jConfigLocation</param-name> 
    <param-value>/WEB-INF/classes/log4j.properties</param-value> 
</context-param> 

<context-param> 
    <param-name>log4jRefreshInterval</param-name> 
    <param-value>60000</param-value> 
</context-param> 

<listener> 
    <listener-class>org.springframework.web.util.Log4jConfigListener</listener-class> 
</listener> 

我log4j.properties:目標文件爲d:/home/site/wwwroot/logs/swinguserver.log

### set log levels ### 
log4j.rootLogger = DEBUG, CONSOLE, LOGFILE 

### Settings for Console ### 
log4j.appender.CONSOLE = org.apache.log4j.ConsoleAppender 
log4j.appender.CONSOLE.Threshold = INFO 
log4j.appender.CONSOLE.layout = org.apache.log4j.PatternLayout 
log4j.appender.CONSOLE.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n 

### Settings for File ### 
log4j.appender.LOGFILE = org.apache.log4j.DailyRollingFileAppender 
log4j.appender.LOGFILE.File = D:\/home\/site\/wwwroot\/logs\/swinguserver.log 
log4j.appender.LOGFILE.Append = true 
log4j.appender.LOGFILE.Threshold = DEBUG 
log4j.appender.LOGFILE.layout = org.apache.log4j.PatternLayout 
log4j.appender.LOGFILE.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n 
log4j.appender.LOGFILE.DatePattern = '_'yyyyMMdd'.log' 

Java代碼我用它來測試彈簧+的Log4j,日誌級別是INFO和日誌內容是:JSONController.getShopInJSON(),名稱= XXXXXX

@Controller 
@RequestMapping("/test") 
public class JSONController { 
    private static final Logger logger = Logger 
      .getLogger(JSONController.class); 

    @RequestMapping(value="{name}", method = RequestMethod.GET) 
    public @ResponseBody Shop getShopInJSON(@PathVariable String name) { 

     logger.info("JSONController.getShopInJSON(), name = " + name); 

     Shop shop = new Shop(); 
     shop.setName(name); 
     shop.setStaffName(new String[]{"mkyong1", "mkyong2"}); 

     return shop; 

    } 

} 

W¯¯母雞我訪問的瀏覽器測試URL,我可以看到在Eclipse控制檯所需的日誌:

enter image description here

enter image description here

然而,當我檢查d:/首頁/網站/ wwwroot文件/日誌/ swinguserver .LOG,沒有什麼關於測試日誌:

enter image description here

什麼建議嗎?感謝你們。

回答

0

事實證明,我導入了錯誤的Logger軟件包......沒有任何錯誤,我發佈的代碼。

0

log4j.appender.FILE = org.apache.log4j.FileAppender

log4j.appender.FILE.File = d:/home/site/wwwroot/logs/swinguserver.log

嘗試以上兩行insted的下面兩行程序

log4j.appender.LOGFILE = org.apache.log4j.DailyRollingFileAppender log4j.appender.LOGFILE.File = d:/首頁/網站/ wwwroot文件/日誌/ swinguserver。日誌

+0

嗨vikky,請你進一步解釋爲什麼使用FileAppender而不是DailyRollingFileAppender?謝謝。 – Rangtian