Ответ 1
Этого достаточно.
В log4j регистратор связан с пакетом или иногда с определенным классом. Пакет/класс регистратора определяется атрибутом "имя". Журнал регистрирует сообщения в своем пакете, а также во всех дочерних пакетах и их классах. Единственным исключением является корневой журнал, который регистрирует сообщения для всех классов в приложении.
Логгер также имеет уровень и может иметь к нему один или несколько добавлений (адресатов регистрации).
В следующем примере у нас есть два регистратора:
- корневой журнал, который регистрирует сообщения с уровнем INFO или выше во всех пакетах для разных целей: консоль, электронная почта и файл,
-
"com.foo", который регистрирует сообщения с уровнем WARN или выше в пакете "com.foo" и его дочерние пакеты в другой файл.
<log4j:configuration> <!-- Declaration of appenders FILE, MAIL, CONSOLE and ANOTHERFILE --> ... <!-- --> <logger name="com.foo"> <level value="warn"/> <appender-ref ref="ANOTHERFILE" /> </logger> <root> <priority value ="info" /> <appender-ref ref="FILE" /> <appender-ref ref="MAIL" /> <appender-ref ref="CONSOLE" /> </root> </log4j:configuration>
Вы должны прочитать больше об основах log4j.