2011-05-09 7 views
2

로그를 콘솔로 만들 수 있지만 로그 파일로 이동하지 못하는 것 같습니다. 내 properties 파일입니다.log4j 레코드를 파일로 만들고 콘솔에 인쇄하는 방법

log4j.rootLogger=DEBUG, LOG , stdout 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%5p %d{d/MM/yy HH:mm:ss}:%m%n 
# log4j.appender.LOG.Threshold=INFO 

log4j.appender.LOG=org.apache.log4j.RollingFileAppender 
log4j.appender.LOG.File=C:\dev\harry\data\logs\core.log 
log4j.appender.LOG.layout=org.apache.log4j.PatternLayout 
log4j.appender.LOG.Append=true 
log4j.appender.LOG.layout.ConversionPattern=%5p %d{d/MM/yy HH:mm:ss}:%m%n 
# log4j.appender.LOG.Threshold=INFO 
+1

\\가 아니어야합니까? 대부분의 속성 파일에서 마찬가지입니다. – MJB

+0

@MJB : 감사합니다. 귀하의 제안으로 제 문제가 해결되었습니다. 주석을 별도의 답변으로 구성하여 받아 들일 수 있습니까? –

+0

수행 완료 ... – MJB

답변

5

문제는 단일 \\이어야합니다. 이것은 대부분의 특성 파일에 해당됩니다.

0

는 내가 추가 한 것 : log4j.appender.LOG.Threshold = ALL

나는 기본이 무엇인지 확실하지 않다.

1

수정해야 할 파일 경로의 \에 몇 가지 문제가 있습니다. 신택스는 다소 암호화되어 있지만 여러 위치에 로그하는 방법은 루트 로거에 명명 된 로깅 appender를 첨부하는 것입니다. 이 예이다 :

log4j.rootLogger=DEBUG, LOG , stdout 

DEBUG는 기록 레벨 (임계 필터) 루트 로거 위해 사용하는 것이다.

LOG

는 로깅 펜더

stdout의 이름 로깅 펜더가 {logging-appender-name} 자신에 의해 선택된 이름이다 (

log4j.appender.{logging-appender-name}={some.log4j.appender.class} 
log4j.appender.{logging-appender-name}.{some-other-property}=... 

의해 지정된

제 펜더의 이름이다 이 경우 LOG 및 stdout)이고 {some.log4j.appender.class}DailyRollingFileAppender 또는과 같이 많은 log4j logging appender classes 중 하나입니다3210.

관련 문제