Как настроить журналирование с помощью log4j
В программах часто необходимо записывать возникаемые в процессе выполнения ошибки в логи для дальнейшего их устранения. Для java программ одним из наиболее популярных инструментов для записи логов является log4j.
Для быстрой интеграции log4j в вашу программу необходимо выполнить следующие шаги:
1) Скачать log4j.jar с
сайта проекта.
2) Создать текстовый файл log4j.properties со следующим содержанием:
log4j.rootLogger=INFO, logfile
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=[%5p] %d{mm:ss} (%F:%M:%L)%n%m%n%n
log4j.appender.stdout.target=System.err
log4j.appender.logfile=org.apache.log4j.RollingFileAppender
log4j.appender.logfile.File=log.txt
log4j.appender.logfile.MaxFileSize=2048KB
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p - <%m>%n
3) В коде программы вставить следующее:
import org.apache.log4j.*;
...................................
/**
указывается пусть к файлу log4j.properties.
Если он находится в корневой директории программы,
то можно оставить как указано ниже
*/
String logFile = "log4j.properties";
//производится настройка log4j в соответствии с log4j.properties
PropertyConfigurator.configure(logFile);
Logger log = Logger.getRootLogger();
4) Все готово - теперь через объект log можно добавлять информацию в лог:
log.debug("message text");
log.debug("message text", ex);
log.info("message text");
log.info("message text", ex);
log.warn("message text");
log.warn("message text", ex);
log.error("message text");
log.error("message text", ex);
log.fatal("message text");
log.fatal("message text", ex);
Данные будут выводиться на консоль и в файл log.txt.
По мере необходимости можно использовать логгеры для конкретных классов (а не общий root logger), чтобы выводить информацию в разные файлы.