Отключение вывода экрана с помощью log4j

Одна из раздражающих вещей с log4j заключается в том, что он всегда хочет выводить данные на экран. Мне это не нужно, если я записываюсь в файл. Я уверен, что дело в том, как я настроил файл log4j.properties. Разобраться со всеми этими конфигурационными вещами — это разочаровывает!:-)

Для программы, которую я в настоящее время называю Balancer, я инициализирую регистратор именно так. Возможно, это неправильно или что-то в этом роде.

static Logger log = Logger.getLogger(Balancer.class);

Частичный дамп моих log4j.properties:

log4j.rootLogger=fatal, stdout
log4j.logger.Balancer=fatal, rollingLog

# I still don't understand how category stuff works yet
log4j.category.Balancer=info, BalancerLog

#### First appender writes to console
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p %d [%t] (%F:%L) - %m%n

#### Second appender writes to a file
# Control the maximum log file size
# Archive log files (ten backups here)
log4j.appender.rollingLog=org.apache.log4j.RollingFileAppender
log4j.appender.rollingLog.File=default.log
log4j.appender.rollingLog.MaxFileSize=10000KB
log4j.appender.rollingLog.MaxBackupIndex=10
log4j.appender.rollingLog.layout=org.apache.log4j.PatternLayout
log4j.appender.rollingLog.layout.ConversionPattern=%5p %d [%t] (%F:%L) - %m%n

log4j.appender.BalancerLog=org.apache.log4j.RollingFileAppender
log4j.appender.BalancerLog.File=Balancer.log
log4j.appender.BalancerLog.MaxFileSize=100000KB
log4j.appender.BalancerLog.MaxBackupIndex=10
log4j.appender.BalancerLog.layout=org.apache.log4j.PatternLayout
log4j.appender.BalancerLog.layout.ConversionPattern=%5p %d [%t] (%F:%L) - %m%n

Я понимаю, как rootLogger отправляет данные в приложение stdout. Есть ли приложение /dev/null? У вас должен быть хотя бы один аппендикс.

В любом случае, по крайней мере, моя основная работа -сейчас заключается в отправке вывода на экран в /dev/null. Кстати, мои Java-программы запускаются в запланированной пакетной среде (без графического интерфейса ). Необходимость очищать буферные файлы (да, это на AS/400 )немного мучительно, хотя это тоже можно автоматизировать.

6
задан Kelly Beard 6 August 2012 в 16:31
поделиться