logback.xml 설정하기
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="debug">
<appender-ref ref="STDOUT" />
</root>
</configuration>
이렇게 했는데도 나는 콘솔에 log가 찍히지 않았다.
그리고 configuration 에 debug=”true”로 설정
<configuration debug="true"> <!— debug=”true”로 설정—>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
</encoder>
</appender>
<root level="debug">
<appender-ref ref="STDOUT" />
</root>
</configuration>
아까 console.1의 캡처와 다르게 debug not set이라는 오류가 한줄 사라졌다..
이렇게 오류 한줄씩 없애 간다 ..ㅎㅎ
3. 문제 이제는 SQL쿼리를 출력해야하는데 나오지 않는다. logback.xml의 세팅값은
개발환경에 따라 내용이 다른것 같다 나는 strtus2 + ibatis + mysql 로 이루어진 구조라서
구글에 나온 코드로는 출력이 되지 않았다.. 이전에 쓰던 log4j.properties에 맞춰진 내용을 개조해봤다.
###############################################################
log4j.rootLogger=WARN, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] %m%n
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG
#SqlMap logging configuration - For Operation Server
log4j.logger.com.ibatis=DEBUG
log4j.logger.com.ibatis.common.jdbc.BasicDataSource=DEBUG
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG
log4j.logger.java.sql.Connection=DEBUG
log4j.logger.java.sql.Statement=DEBUG
log4j.logger.java.sql.PreparedStatement=DEBUG
log4j.logger.java.sql.ResultSet=DEBUG
#SqlMap logging configuration - For Developers
#log4j.logger.com.ibatis=DEBUG
#log4j.logger.com.ibatis.common.jdbc.BasicDataSource=DEBUG
#log4j.logger.com.ibatis.common.jdbc.ScriptRunner=DEBUG
#log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=DEBUG
#log4j.logger.java.sql.Connection=DEBUG
#log4j.logger.java.sql.Statement=DEBUG
#log4j.logger.java.sql.PreparedStatement=DEBUG
#log4j.logger.java.sql.ResultSet=DEBUG
###############################################################
# ------------------------------------------------------- Category
log4j.category.org.apache.xml=WARN,A2
log4j.category.org.jcp.xml=WARN,A2
log4j.category.com.etri.saml2=WARN,A2
log4j.category.gov.mogaha.gpin=WARN,A2
# ------------------------------------------------------- Appender A1
log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=[%d{MMM dd hh:mm:ss}] %p - %C{1}.%M(%L) | %m%n
# ------------------------------------------------------- Appender A2
log4j.appender.A2=org.apache.log4j.DailyRollingFileAppender
log4j.appender.A2.File=/log/gpin-sp.log
log4j.appender.A2.layout=org.apache.log4j.PatternLayout
log4j.appender.A2.DatePattern='.'yyyy-MM-dd
log4j.appender.A2.layout.ConversionPattern=%d{MMM dd hh:mm:ss.SSS aa} %p - [%t]%C{1}.%M(%L) | %m%n
log4j 1.x 대쓰던 파일
이것을 개조하여
<?xml version="1.0" encoding="UTF-8"?>
<!--
[Layout]
%d : 날짜
%n : new line
%t : thread
%p : 로깅레벨
%c : 로깅이 발생한 카테고리
%C : 로깅이 발생한 클래스명
%m : 로깅 메세지
-->
<configuration debug="true">
<property name="log_home" value="/log" />
<timestamp key="year" datePattern="yyyy"/>
<timestamp key="month" datePattern="MM"/>
<timestamp key="day" datePattern="dd"/>
<timestamp key="date" datePattern="yyyy-MM-dd"/>
<!-- 콘솔로 로그를 남기는 설정 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<charset>UTF-8</charset>
<!-- <Pattern>%5p [%t] %m%n</Pattern> -->
<!-- <Pattern>%d %contextName [%t] %level %logger{36} - %msg%n</Pattern> -->
<!-- <Pattern>%d %5p [%c] %m%n</Pattern> -->
<Pattern>[%d{yyyy-MM-dd HH:mm:ss}] [%p] [%t] [%c]%m%n</Pattern>
<!-- <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern> -->
</encoder>
</appender>
<!-- 파일로 로그를 남기는 설정 RollingFileAppender -->
<appender name="rolling" class="ch.qos.logback.core.rolling.RollingFileAppender">
<!--저장경로/파일명 -->
<file>${log_home}/${year}/${month}/${day}/web_${date}.log</file>
<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
<Pattern>[%d{yyyy-MM-dd HH:mm:ss}] [%p] [%t] [%c] %m%n</Pattern>
</encoder>
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<!--파일명을 .zip .tz로 하는경우 자동으로 압축된다 -->
<fileNamePattern>${log_home}/${year}/${month}/web_${date}_%i.log.zip</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>10</maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>200MB</maxFileSize>
</triggeringPolicy>
</appender>
<!-- 파일로 로그를 남기는 설정 FileAppender -->
<!-- <appender name="file" class="ch.qos.logback.core.FileAppender"> -->
<!-- <file>${log_home}/web.log</file> -->
<!-- <append>true</append> -->
<!-- <encoder> -->
<!-- <pattern> -->
<!-- [%d{yyyy-MM-dd HH:mm:ss}] [%p] [%t] [%c]%m%n -->
<!-- </pattern> -->
<!-- </encoder> -->
<!-- </appender> -->
<logger name="java.sql.Connection" level="DEBUG" appender-ref="console" />
<logger name="java.sql.PreparedStatement" level="DEBUG" appender-ref="console" />
<logger name="java.sql.ResultSet" level="DEBUG" appender-ref="console" />
<!-- <logger name="java.sql.Statement" level="DEBUG" appender-ref="console" /> -->
<!-- <logger name="com.ibatis" level="DEBUG" appender-ref="console" /> -->
<!-- <logger name="com.ibatis.common.jdbc.BasicDataSource" level="DEBUG" appender-ref="console" /> -->
<!-- <logger name="com.ibatis.common.jdbc.ScriptRunner" level="DEBUG" appender-ref="console" /> -->
<!-- <logger name="com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate" level="DEBUG" appender-ref="console" /> -->
<!-- root는 글로벌 로거를 의미하며, 위의 logger에 해당하지 않으면 root 로거가 실행된다. -->
<root level="off">
<appender-ref ref="rolling" />
<!-- <appender-ref ref="file" /> -->
<appender-ref ref="console" />
</root>
</configuration>
logback.xml
logback.xml을 바꾸었다.
sql log도 잘찍혔고 기분이 좋았다,
'언어 > Java' 카테고리의 다른 글
[tomcat] tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modules 에러 해결 (0) | 2025.02.08 |
---|---|
[maven] pom.xml에서 필요없는 의존성 jar 제외하기 (0) | 2025.02.08 |
[java] logback 설정하기 (0) | 2025.02.08 |
[java] 파일 복사 방법 (2)Channel 이용 (0) | 2025.02.08 |
[java] properties 파일 사용해보기 (0) | 2025.02.08 |