파일들의 위치는 src/main/resources
log4j.properties
# Set root logger level to DEBUG and its only appender to A1.
log4j.rootLogger=DEBUG, A1
# A1 is set to be a ConsoleAppender.
log4j.appender.A1=org.apache.log4j.ConsoleAppender
# A1 uses PatternLayout.
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4jdbc.log4j2.properties
log4jdbc.spylogdelegator.name = net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator
log4jdbc.dump.sql.maxlinelength=0
log4j.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration PUBLIC "-//APACHE//DTD LOG4J 1.2//EN" "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<!-- Appenders -->
<appender name="console" class="org.apache.log4j.ConsoleAppender">
<param name="Target" value="System.out" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%-5p: %c - %m%n" />
</layout>
</appender>
<!-- Application Loggers -->
<logger name="com.freehoon.web">
<level value="info" />
</logger>
<!-- 3rdparty Loggers -->
<logger name="org.springframework.core">
<level value="info" />
</logger>
<logger name="org.springframework.beans">
<level value="info" />
</logger>
<logger name="org.springframework.context">
<level value="info" />
</logger>
<logger name="org.springframework.web">
<level value="info" />
</logger>
<!-- SQL Logger -->
<logger name="jdbc.sqltiming" additivity="false">
<level value="warn" />
<appender-ref ref="console"/>
</logger>
<logger name="jdbc.sqlonly" additivity="false">
<level value="info"/>
<appender-ref ref="console"/>
</logger>
<logger name="jdbc.audit" additivity="false">
<level value="warn"/>
<appender-ref ref="console"/>
</logger>
<logger name="jdbc.resultset" additivity="false">
<level value="warn" />
<appender-ref ref="console"/>
</logger>
<logger name="jdbc.resultsettable" additivity="false">
<level value="info"/>
<appender-ref ref="console"/>
</logger>
<!-- Root Logger -->
<root>
<priority value="warn" />
<appender-ref ref="console" />
</root>
</log4j:configuration>
logback.xml
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<!-- 콘솔로 로그를 남기는 설정 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<charset>UTF-8</charset>
<Pattern>[%d{yyyy-MM-dd HH:mm:ss}] [%p] [%t] [%c] %m%n</Pattern>
</encoder>
</appender>
<!-- 출력되는 로그의 양 순서 : OFF < FATAL < ERROR < WARN < INFO < DEBUG < TRACE -->
<logger name="egovframework" level="debug"/>
<logger name="org.springframework" level="error"/>
<logger name="org.quartz.core.QuartzSchedulerThread" level="error"/>
<logger name="java.sql" level="debug"/>
<logger name="jdbc.sqlonly" level="off"/> <!-- jdbc.sqlonly : SQL문만을 로그로 남기며, PreparedStatement일 경우 관련된 argument 값으로 대체된 SQL문이 보여진다. -->
<logger name="jdbc.sqltiming" level="debug"/> <!-- jdbc.sqltiming : SQL문과 해당 SQL을 실행시키는데 수행된 시간 정보(milliseconds)를 포함한다. -->
<logger name="jdbc.audit" level="off"/> <!-- jdbc.audit : ResultSet을 제외한 모든 JDBC 호출 정보를 로그로 남긴다. 많은 양의 로그가 생성되므로 특별히 JDBC 문제를 추적해야 할 필요가 있는 경우를 제외하고는 사용을 권장하지 않는다. -->
<logger name="jdbc.resultset" level="off"/> <!-- jdbc.resultset : ResultSet을 포함한 모든 JDBC 호출 정보를 로그로 남기므로 매우 방대한 양의 로그가 생성된다. -->
<logger name="jdbc.resultsettable" level="off"/> <!-- jdbc.resultsettable : SQL 결과 조회된 데이터의 table을 로그로 남긴다. -->
<logger name="jdbc.connection" level="debug"/>
<root level="debug">
<appender-ref ref="console" />
</root>
</configuration>
프로젝트의 web.xml
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:*-context.xml</param-value>
</context-param>
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath*:log4jdbc.log4j2.properties</param-value>
</context-param>
'프로그래밍 > MyBatis' 카테고리의 다른 글
log4jdbc에러 - Property 'driverClassName' threw exception; nested exception is java.lang.NoClassDefFoundError (0) | 2021.12.03 |
---|---|
mybatis 초기설정 (0) | 2021.11.25 |
댓글