2018년 2월 4일 일요일

log4j

Log4jでログ出力
参考
https://itsakura.com/java_log4jxml

■mavenのpom.xmlにlog4j定義(またはjarを入手し、クラスパスに設定)
■プルジェクト直下にlog4j.xml定義
■テストクラス作成、テスト
-----------pom.xml------------------------------------------------------
<!-- 追加4 log4j -->
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
    <groupId>log4j</groupId>
    <artifactId>log4j</artifactId>
    <version>1.2.17</version>
</dependency>
<!-- 追加4 log4j end -->
----------log4j.xml----------------------------------------------------------
説明
<param name="File" value="./log/log.log" />は<!-- log作成場所 -->
<param name="ConversionPattern" value="%d{yyyy/MM/dd HH:mm:ss.SSS} [%t] %-6p %m%n"/><!--log出力時フォーマット -->
<level value="debug" /><!--log出力レベル debug以上出力 -->
<!-- 上記の定義:ログレベルの順番は、trace – debug – info – warn – error – fatal -->
---------------------------------------------
<?xml version="1.0" encoding="MS932" ?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
   <appender name="Appender1" class="org.apache.log4j.FileAppender">
      <param name="File" value="./log/log.log" />
      <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern" value="%d{yyyy/MM/dd HH:mm:ss.SSS} [%t] %-6p %m%n"/>
      </layout>
   </appender>
   <root>
      <level value="debug" />
      <appender-ref ref="Appender1" />
   </root>
</log4j:configuration>
-----------テストクラス作成、テスト----------------------------------------------
package com.mybatis;
import org.apache.log4j.Logger;
import org.apache.log4j.xml.DOMConfigurator;

public class LogTest {
public static void main(String[] args) {
// Logger
Logger logger = Logger.getLogger(LogTest.class);
DOMConfigurator.configure("log4j.xml");
logger.trace("trace "+"1");
logger.debug("debug "+"1");
logger.info("info "+"1");
logger.warn("warn "+"1");
logger.error("error "+"1");
}
}
-----------------------------------------------------------------


---------------------------------------------------
※Log4j.propertiesを使う場合、
resources直下に配置
log4j.xmlが存在したら、xmlを優先にするため、注意
mybatisのsqlログを出力したい場合:下記のlog4j.logger.com.example.dao=DEBUG
特定のDaoクラスを定義も可能log4j.logger.com.example.dao.Test1Dao=DEBUG
------------------Log4j.properties-----------------------------------
# Global logging configuration
#log4j.logger.java.sql=DEBUG
log4j.rootLogger=ERROR, stdout
# MyBatis logging configuration...
log4j.logger.com.example.dao=DEBUG
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n
------------------------------------------------------------------------------



댓글 없음:

댓글 쓰기