jBoss7은 설치 되어 있어야 하고, Web Application 기준으로 설명 한다. 

빌드 툴은 Maven을 이용 한다.


Step 1.  jboss-deployment-structure.xml 만들기

아래 그림은 일반적인 Web Application의 폴더 구조 이다. /WEB-INF/ 안에 해당 파일을 만들어 보자. 




<?xml version="1.0" encoding="UTF-8"?>

<jboss-deployment-structure>

  <deployment>

    <exclusions>

        <module name="org.apache.log4j" />

        <module name="org.apache.commons.logging" />

        <module name="org.slf4j"/>

    </exclusions>

  </deployment>

</jboss-deployment-structure>



위 파일을 적용 해야만, Tomcat과는 다르게 log4j을 사용 할 수 있다.


Step 2.  Log4j Library Dependency

pom.xml 파일에 추가 한다.


<!-- Version Config -->

<properties>

<slf4j.version>1.6.1</slf4j.version>

<log4j.version>1.2.14</log4j.version>

</properties>


<dependencies>

<!-- SLF4J -->

<dependency>

   <groupId>org.slf4j</groupId>

   <artifactId>jcl-over-slf4j</artifactId>

   <version>${slf4j.version}</version>

   <scope>runtime</scope>

</dependency>

<dependency>

   <groupId>org.slf4j</groupId>

   <artifactId>slf4j-api</artifactId>

   <version>${slf4j.version}</version>

   <scope>runtime</scope>

</dependency>

<dependency>

   <groupId>org.slf4j</groupId>

   <artifactId>slf4j-log4j12</artifactId>

   <version>${slf4j.version}</version>

   <scope>runtime</scope>

</dependency>

<!-- Log4j -->

<dependency>

<groupId>log4j</groupId>

<artifactId>log4j</artifactId>

<version>${log4j.version}</version>

<exclusions>

<exclusion>

<groupId>javax.mail</groupId>

<artifactId>mail</artifactId>

</exclusion>

<exclusion>

<groupId>javax.jms</groupId>

<artifactId>jms</artifactId>

</exclusion>

<exclusion>

<groupId>com.sun.jdmk</groupId>

<artifactId>jmxtools</artifactId>

</exclusion>

<exclusion>

<groupId>com.sun.jmx</groupId>

<artifactId>jmxri</artifactId>

</exclusion>

</exclusions>

<scope>runtime</scope>

</dependency>

</dependencies>



Step 3.  web.xml 수정 하기

log4j.xml 파일의 경로를 설정 한다.


// ...


<context-param>

<param-name>log4jConfigLocation</param-name>

<param-value>classpath:log4j.xml</param-value>

</context-param>


// ...



Step 4. log4j.xml 만들기


<?xml version="1.0" encoding="UTF-8" ?>

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">

<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">

<!-- Console -->

<appender name="stdout" class="org.apache.log4j.ConsoleAppender">

<layout class="org.apache.log4j.PatternLayout">

<param name="ConversionPattern" value="%d %5p %c{1} - %m%n" />

</layout>

</appender>

<!-- File -->

<appender name="file" class="org.apache.log4j.DailyRollingFileAppender">

<param name="DatePattern" value=".yyyyMMdd" />

<param name="File" value="log/whitelife.log" />

<param name="Append" value="true" />

<layout class="org.apache.log4j.PatternLayout">

<param name="ConversionPattern" value="%d %5p %c{1} - %m%n" />

</layout>

</appender>

<!-- root -->

<root>

<priority value="debug"/>

<appender-ref ref="stdout" />

<appender-ref ref="file" />

</root>

</log4j:configuration>



Step 5.  Source Code 적용하기


// package

import org.slf4j.Logger;

import org.slf4j.LoggerFactory;


// field

private Logger logger = LoggerFactory.getLogger(getClass());


// use

logger.debug("test");





+ Recent posts