Конфигурационные файлы бывают 2-х видов log4j.xml м log4j.properties. Вообще эти файлы взаимозаменяемые но некоторые взможности (например фильтры) log4j.properties не поддерживаются. здесь в примере покказаны два одинаковых по фунциональности файла заданные через xml и через properties:
1 log4j.rootCategory=DEBUG, console 2 log4j.appender.console=org.apache.log4j.ConsoleAppender 3 log4j.appender.console.layout=org.apache.log4j.PatternLayout 4 log4j.appender.console.layout.ConversionPattern= %p %c: %m%nскачать исходный код
скачать исходный код
1 <?xml version="1.0" encoding="UTF-8" ?>
2 <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
3
4 <log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
5
6 <appender name="console" class="org.apache.log4j.ConsoleAppender">
7 <param name="Target" value="System.out"/>
8 <layout class="org.apache.log4j.PatternLayout">
9 <param name="ConversionPattern" value="%p %c: %m%n"/>
10 </layout>
11 </appender>
12 <!--Корневой logger-->
13 <root>
14 <priority value ="debug" />
15 <appender-ref ref="console" />
16 </root>
17
18 </log4j:configuration>
Если корне проекта лежат и log4j.xml м log4j.properties то приоритет имеет log4j.xml.
Можно вручную указать какой конфигурационный файл нужно использовать:
Системное свойство (System.getProperties()) "log4j.configuration" указывает на URL конфигурационного файла.
Добавив "-Dlog4j.configuration=ftp://ftp.log4j.ru/pub/java/log4j.ru/Log4jHelloWorld/log4j.xml"
в строку
запуска jvm конфигурационный файл легко будет браться с моего ftp сервера.