log4j 2 에 java logger 나오게 하는 방법?
- 작성자 :
- 문*덕
- 작성일 :
- 2015-02-05 11:51:07
- 조회수 :
- 905
- 구분 :
- 기타
- 진행상태 :
- 완료
Q
안녕하세요 수고가 많으십니다.
현재 egovframework 3.0 을 통해서 개발중인데 log4j 2 를 사용합니다.
log4j 2 log 기록에 java.util.logging.Logger 통해서 logging.warning() 로그를 나오게 하고 싶습니다.
콘솔에는 나오는데 log4j 2 쪽에는 로그가 남지를 않네요. 도움 부탁드립니다.
아래는 log4j 2 xml 설정 파일입니다.(일부 xx 처리)
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%d %5p [%c] %m%n" />
</Console>
<RollingFile name="rollingFile" fileName="XXXX.log"
filePattern="C:\XXXXX/$${date:yyyyMMddHH}/%d{yyyyMMddHH}-%i.log.gz">
<PatternLayout pattern="%d %p (%t) [%c] - %m%n"/>
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="1000 KB"/>
</Policies>
<DefaultRolloverStrategy max="30"/>
</RollingFile>
</Appenders>
<Loggers>
<Logger name="egovframework" level="DEBUG" additivity="false">
<AppenderRef ref="console" />
<AppenderRef ref="rollingFile" />
</Logger>
<!-- log SQL with timing information, post execution -->
<logger name="jdbc.sqltiming" level="DEBUG" additivity="false">
<appender-ref ref="console" />
</logger>
<Root level="ERROR">
<AppenderRef ref="console" />
</Root>
<Root level="DEBUG">
<AppenderRef ref="rollingFile" />
</Root>
<Root level="WARN">
<AppenderRef ref="rollingFile" />
</Root>
</Loggers>
</Configuration>
현재 egovframework 3.0 을 통해서 개발중인데 log4j 2 를 사용합니다.
log4j 2 log 기록에 java.util.logging.Logger 통해서 logging.warning() 로그를 나오게 하고 싶습니다.
콘솔에는 나오는데 log4j 2 쪽에는 로그가 남지를 않네요. 도움 부탁드립니다.
아래는 log4j 2 xml 설정 파일입니다.(일부 xx 처리)
<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
<Appenders>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="%d %5p [%c] %m%n" />
</Console>
<RollingFile name="rollingFile" fileName="XXXX.log"
filePattern="C:\XXXXX/$${date:yyyyMMddHH}/%d{yyyyMMddHH}-%i.log.gz">
<PatternLayout pattern="%d %p (%t) [%c] - %m%n"/>
<Policies>
<TimeBasedTriggeringPolicy />
<SizeBasedTriggeringPolicy size="1000 KB"/>
</Policies>
<DefaultRolloverStrategy max="30"/>
</RollingFile>
</Appenders>
<Loggers>
<Logger name="egovframework" level="DEBUG" additivity="false">
<AppenderRef ref="console" />
<AppenderRef ref="rollingFile" />
</Logger>
<!-- log SQL with timing information, post execution -->
<logger name="jdbc.sqltiming" level="DEBUG" additivity="false">
<appender-ref ref="console" />
</logger>
<Root level="ERROR">
<AppenderRef ref="console" />
</Root>
<Root level="DEBUG">
<AppenderRef ref="rollingFile" />
</Root>
<Root level="WARN">
<AppenderRef ref="rollingFile" />
</Root>
</Loggers>
</Configuration>
A
안녕하세요. 문종덕님.
JDK의 logger를 사용하신 경우에 log4j 설정 상에 지정된 appender로 로그를 보내거나 log4j와 연계하여 사용하실 수 없습니다.
현재 코드 상의 logger 방식을 log4j 2 또는 SLF4J (Simple Logging Facade for Java)로 변경하셔야 합니다.
SLF4J는 로깅 처리를 추상화하여 실제 로깅에 대한 구현체를 코드 변경 없이 대체 하실 수 있는 로깅 프레임워크입니다.
그럼, 즐거운 하루되십시오.
감사합니다.
JDK의 logger를 사용하신 경우에 log4j 설정 상에 지정된 appender로 로그를 보내거나 log4j와 연계하여 사용하실 수 없습니다.
현재 코드 상의 logger 방식을 log4j 2 또는 SLF4J (Simple Logging Facade for Java)로 변경하셔야 합니다.
SLF4J는 로깅 처리를 추상화하여 실제 로깅에 대한 구현체를 코드 변경 없이 대체 하실 수 있는 로깅 프레임워크입니다.
그럼, 즐거운 하루되십시오.
감사합니다.