= log4j =
 * http://logging.apache.org/log4j/1.2/
 * http://logging.apache.org/log4j/2.x/  # version 2

== Example log4j 1.2.17 ==

Project structure:
{{{
.
|-- log4j.properties
|-- log4jexample.log
|-- pom.xml
|-- src
|   `-- main
|       `-- java
|           `-- org
|               `-- allowed
|                   `-- bitarus
|                       `-- log4jexample
|                           `-- Main.java
`-- target
    |-- classes
    |   `-- org
    |       `-- allowed
    |           `-- bitarus
    |               `-- log4jexample
    |                   `-- Main.class
    |-- log4jexample-1.0.0.0-SNAPSHOT.jar
    |-- maven-archiver
    |   `-- pom.properties
    `-- surefire
}}}

=== pom.xml ===
{{{#!highlight xml
<project
xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>org.allowed.bitarus</groupId>
    <artifactId>log4jexample</artifactId>
    <version>1.0.0.0-SNAPSHOT</version>
    <packaging>jar</packaging>
    <name>log4jexample</name>
    <dependencies>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.17</version>
            </dependency>
    </dependencies>      
</project>
}}}

=== Main.java ===
{{{#!highlight java
package org.allowed.bitarus.log4jexample;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import org.apache.log4j.Logger;
/*
java -cp target/log4jexample-1.0.0.0-SNAPSHOT.jar:/home/vitor/.m2/repository/log4j/log4j/1.2.17/log4j-1.2.17.jar -Dlog4j.configuration="file:///home/vitor/Documents/log4jexample/log4j.properties"  org.allowed.bitarus.log4jexample.Main
*/
public class Main{
    public static void main(String[] args){
        ExecutorService executorService = Executors.newFixedThreadPool(10);
        //org.allowed.bitarus.log4jexample.Main loggerName
        Logger logger = Logger.getLogger(Main.class);
        logger.info("test log4j info");
        logger.debug("test log4j debug");
    }
}
}}}

=== log4j.properties ===
{{{
log4j.logger.org.allowed.bitarus.log4jexample.Main=ALL,log4jexampleAppender,log4jexampleAppenderConsole
 
log4j.appender.log4jexampleAppender=org.apache.log4j.DailyRollingFileAppender
log4j.appender.log4jexampleAppender.File=log4jexample.log
log4j.appender.log4jexampleAppender.layout=org.apache.log4j.PatternLayout
log4j.appender.log4jexampleAppender.layout.ConversionPattern=%d{ISO8601}|%p|%c|%t|%m%n
log4j.appender.log4jexampleAppender.Threshold=DEBUG
log4j.appender.log4jexampleAppender.DatePattern='.'yyyyMMdd
 
log4j.appender.log4jexampleAppenderConsole=org.apache.log4j.ConsoleAppender
log4j.appender.log4jexampleAppenderConsole.layout=org.apache.log4j.PatternLayout
log4j.appender.log4jexampleAppenderConsole.layout.ConversionPattern=%d{ISO8601}|%p|%c|%t|%m%n
log4j.appender.log4jexampleAppenderConsole.Threshold=INFO
}}}