포스트 목록

2016년 10월 3일 월요일

Hibernate 정리 - 4 (Log4j)

이 글은 혼자 정리하기 위한 글입니다. 참조만 해주세요.

하이버네이트는 Log4j와 logback framework를 사용할 수 있다.

다음 두가지 방법으로 logging할 수 있다.

  - log4j.xml
  - log4j.properties


1. xml을 이용한 logging

  xml을 이용하여 log4j를 사용하기 위해서는 아래의 절차가 필요하다.

  - 하이버네이트의 log4j.jar 파일을 로드
  - src 폴더에 log4j.xml 파일을 생성 (hibernate.cfg.xml 파일과 병렬적으로 실행)

  1-1. 하이버네이트의 log4j.jar 파일을 로드

    Hibernate 정리 - 2 (Annotation) 에서 모든 jar를 넣어뒀다면 패스한다.

  1-2. log4j.xml 파일 생성

    이제 log4j.xml 파일을 생성할 차례이다. 아래는 logging을 위한 예제이다.


<?xml version="1.0" encoding="UTF-8"?>  
<log4j:configuration debug="false" xmlns:log4j="http://jakarta.apache.org/log4j/">  
<appender class="org.apache.log4j.ConsoleAppender" name="CONSOLE">  
 <layout class="org.apache.log4j.PatternLayout">  
  <param name="ConversionPattern" value="[%d{dd/MM/yy hh:mm:ss:sss z}] %5p %c{2}: %m%n" />  
 </layout>  
</appender>  
    <appender class="org.apache.log4j.AsyncAppender" name="ASYNC">  
        <appender-ref ref="CONSOLE"></appender-ref>
        <appender-ref ref="FILE"></appender-ref>
    </appender>  
<appender class="org.apache.log4j.RollingFileAppender" name="FILE">  
    <param name="File" value="C:/example1log.log" />  
    <param name="MaxBackupIndex" value="100" />  
 <layout class="org.apache.log4j.PatternLayout">  
  <param name="ConversionPattern" value="[%d{dd/MM/yy hh:mm:ss:sss z}] %5p %c{2}: %m%n" />  
</layout>  
</appender>  
    <category name="org.hibernate">  
        <priority value="DEBUG">  
    </priority></category>  
    <category name="java.sql">  
        <priority value="debug">  
    </priority></category>  
    <root>  
        <priority value="INFO">  
        <appender-ref ref="FILE">  
    </appender-ref></priority></root>  
</log4j:configuration>



2. properties를 이용한 logging

  properties를 이용하여 log4j를 사용하기 위해서는 아래의 절차가 필요하다.

  - 하이버네이트의 log4j.jar 파일을 로드
  - src 폴더에 log4j.properties 파일을 생성 (hibernate.cfg.xml 파일과 병렬적으로 실행)

  2-1. 하이버네이트의 log4j.jar 파일을 로드

    1-1과 동일하다.

  2-2. log4j.properties 파일 생성


# Direct log messages to a log file  
log4j.appender.file=org.apache.log4j.RollingFileAppender  
log4j.appender.file.File=C:\\example1log.log  
log4j.appender.file.MaxFileSize=1MB  
log4j.appender.file.MaxBackupIndex=1  
log4j.appender.file.layout=org.apache.log4j.PatternLayout  
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n  
   
# Direct log messages to stdout  
log4j.appender.stdout=org.apache.log4j.ConsoleAppender  
log4j.appender.stdout.Target=System.out  
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout  
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n  
   
# Root logger option  
log4j.rootLogger=INFO, file, stdout  
   
# Log everything. Good for troubleshooting  
log4j.logger.org.hibernate=INFO  
   
# Log all JDBC parameters  
log4j.logger.org.hibernate.type=ALL

댓글 없음:

댓글 쓰기