log4j.xml 쿼리가 안찍혀요.
- 작성자 :
- 박*석
- 작성일 :
- 2012-04-19 18:58:39
- 조회수 :
- 2,426
- 구분 :
- 개발환경
- 진행상태 :
- 완료
Q
파일안에 log4j.xml 내용이
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration
xmlns:log4j="http://jakarta.apache.org/log4j/"
debug="false">
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %5p [%c] %m%n" />
</layout>
</appender>
<logger name="java.sql">
<level value="DEBUG"/>
<appender-ref ref="console"/>
</logger>
<logger name="egovframework" additivity="false">
<level value="DEBUG"/>
<appender-ref ref="console"/>
</logger>
<!-- log SQL with timing information, post execution -->
<logger name="jdbc.sqltiming" additivity="false">
<level value="DEBUG" />
<appender-ref ref="console" />
</logger>
<logger name="org.springframework" additivity="false">
<level value="DEBUG" />
<appender-ref ref="console" />
</logger>
<root>
<level value="DEBUG" />
<appender-ref ref="console" />
</root>
</log4j:configuration>
설정되어있고
폴더내 전체검색해서 확인해본결과 log4j 가 4개 존재하고
모두 위와같이 적용되어있습니다.
그런데 왜 쿼리가 콘솔창에 안찍힐까요?
ㅠㅠ
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration
xmlns:log4j="http://jakarta.apache.org/log4j/"
debug="false">
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d %5p [%c] %m%n" />
</layout>
</appender>
<logger name="java.sql">
<level value="DEBUG"/>
<appender-ref ref="console"/>
</logger>
<logger name="egovframework" additivity="false">
<level value="DEBUG"/>
<appender-ref ref="console"/>
</logger>
<!-- log SQL with timing information, post execution -->
<logger name="jdbc.sqltiming" additivity="false">
<level value="DEBUG" />
<appender-ref ref="console" />
</logger>
<logger name="org.springframework" additivity="false">
<level value="DEBUG" />
<appender-ref ref="console" />
</logger>
<root>
<level value="DEBUG" />
<appender-ref ref="console" />
</root>
</log4j:configuration>
설정되어있고
폴더내 전체검색해서 확인해본결과 log4j 가 4개 존재하고
모두 위와같이 적용되어있습니다.
그런데 왜 쿼리가 콘솔창에 안찍힐까요?
ㅠㅠ
A
안녕하세요.. 박준석님..
우선.. 사용하신 WAS나 환경에 따라 해당 프로젝트의 log4j.xml가 아닌 다른 log4j.xml가 사용되었을 가능성이 있습니다.
올려주신 설정을 보면.. 전체가 DEBUG로 되어 있어서.. 실제로.. 해당 log4j.xml가 사용되면.. 매우 많은 로그가 찍혀서.. 거의 개발이 불가능하실 것 같습니다.
이 경우는 WAS 인스턴스를 기동하는 스크립트 상에 .. 다음과 같은 옵션을 지정해 보십시오.
-Dlog4j.configuration=file:///home/env/log4j.xml
이 경우가 아는 경우는.. log4jdbc를 적용해보실 수 있을 것 같습니다.
다음과 같이 pom.xml에 dependency를 추가하시고...
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.11</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.11</version>
</dependency>
<dependency>
<groupId>net.sf</groupId>
<artifactId>log4jdbc3</artifactId>
<version>1.1</version>
</dependency>
jdbc url 상에.. 앞에.. "jdbc:log4"를 추가 해보십시오..
ex) jdbc:hsqldb:hsql://localhost/sampledb => jdbc:log4jdbc:hsqldb:hsql://localhost/sampledb
마지막으로 log4j.xml에서 다음과가 같은 logger를 추가해주시면 됩니다.
jdbc.sqlonly : SQL 로그
jdbc.sqltiming : query 수행시간
jdbc.audit : ResultSet을 제외한 모든 JDBC 호출 (로그량 많음)
jdbc.resultset : ResultSet 모함 모든 JDBC 호출 (로그량 많음)
그럼.. 즐거운 하루되십시오.
감사합니다.
우선.. 사용하신 WAS나 환경에 따라 해당 프로젝트의 log4j.xml가 아닌 다른 log4j.xml가 사용되었을 가능성이 있습니다.
올려주신 설정을 보면.. 전체가 DEBUG로 되어 있어서.. 실제로.. 해당 log4j.xml가 사용되면.. 매우 많은 로그가 찍혀서.. 거의 개발이 불가능하실 것 같습니다.
이 경우는 WAS 인스턴스를 기동하는 스크립트 상에 .. 다음과 같은 옵션을 지정해 보십시오.
-Dlog4j.configuration=file:///home/env/log4j.xml
이 경우가 아는 경우는.. log4jdbc를 적용해보실 수 있을 것 같습니다.
다음과 같이 pom.xml에 dependency를 추가하시고...
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.5.11</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.11</version>
</dependency>
<dependency>
<groupId>net.sf</groupId>
<artifactId>log4jdbc3</artifactId>
<version>1.1</version>
</dependency>
jdbc url 상에.. 앞에.. "jdbc:log4"를 추가 해보십시오..
ex) jdbc:hsqldb:hsql://localhost/sampledb => jdbc:log4jdbc:hsqldb:hsql://localhost/sampledb
마지막으로 log4j.xml에서 다음과가 같은 logger를 추가해주시면 됩니다.
jdbc.sqlonly : SQL 로그
jdbc.sqltiming : query 수행시간
jdbc.audit : ResultSet을 제외한 모든 JDBC 호출 (로그량 많음)
jdbc.resultset : ResultSet 모함 모든 JDBC 호출 (로그량 많음)
그럼.. 즐거운 하루되십시오.
감사합니다.