Как правильно подходить к ведению журнала при использовании Spring Batch? - PullRequest
4 голосов
/ 19 мая 2011

Как правильно подходить к ведению журнала при использовании Spring Batch? Должен ли я использовать log4j (или что-то похожее) или Spring Batch предоставляет некоторые инструменты, которые помогают мне создавать и использовать его? Может быть, какая-то инъекция зависимостей в логгер?

Ответы [ 3 ]

3 голосов
/ 19 мая 2011

Я использовал log4j. и это простой и приятный подход.

2 голосов
/ 19 марта 2014

Я не уверен, что на вопрос оригинального плаката был дан ответ, поэтому я попытаюсь немного это повторить.В Spring Batch у вас может быть несколько потоков, и вы можете захотеть вести журналы для конкретных заданий, чтобы все события для конкретного задания записывались в один файл журнала.Вам нужен регистратор, область которого напрямую связана с работой, которую вы обрабатываете.Когда работа заканчивается, регистратор (и все ссылки на регистратор) уходят.

Таким образом, когда вы отправляете Job # 1 , все события регистрируются в "job_1.log" ;когда вы отправляете Job # 2 , его события регистрируются в "job_2.log" и т. д.

В log4j, когда вы выполняете "Logger.getLogger ('mylogger') " вы говорите LogManager вывести 'mylogger' из кэша и передать его вам.Что вам действительно нужно, так это новый экземпляр регистратора, настроенный с использованием конфигурации mylogger.Весной это обычно делается с помощью прототипа bean-компонента.Каждый раз, когда вы спрашиваете контекст для 'mylogger' , вы получаете новый экземпляр.

2 голосов
/ 14 ноября 2011

Вам следует подумать о Slf4J (API журналирования) + Logback (реализация журналирования), так как этот дуэт намерен стать преемником Log4j.

Подробнее: http://www.slf4j.org/ http://logback.qos.ch/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...