2017-02-23 2 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 :

### 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' 

자바 코드 I /home/site/wwwroot/logs/swinguserver.log 스프링 + Log4j를 테스트하는 데 사용하는 로그 레벨 정보이고, 로그의 콘텐츠는 다음 JSONController.getShopInJSON() NAME = 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

enter image description here

enter image description here 그러나

, 나는 D를 확인 :/홈/사이트/wwwroot에/로그/swinguserver 내가 브라우저에서 테스트 URL을 방문 암탉, 내가 원하는 이클립스 콘솔에서 로그를 볼 수 있습니다

enter image description here

어떤 제안 : .LOG, 검사 로그에 대해 아무것도 없다? 고마워.

답변

0

잘못된 로거 패키지를 가져온 것으로 나타났습니다 ... 게시 한 코드에 아무 것도 없습니다.

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, DailyRollingFileAppender 대신 FileAppender를 사용하는 이유에 대해 자세히 설명해 주시겠습니까? 고맙습니다. – Rangtian

관련 문제