Вход в определенный файл с использованием log4j (проблема с HQ) - PullRequest
0 голосов
/ 25 мая 2011

РЕДАКТИРОВАТЬ: Таким образом, похоже, что проблема в уровне журнала моих обработчиков / appenders и root logger. Каким-то образом HQ (просто другое приложение) имеет свои журналы, сконфигурированные для получения всех сообщений журнала. Что мне нужно, так это запретить моему jsa обработчику передавать сообщения журнала на уровень.

Привет. У меня проблема с регистрацией.

Информация: у меня на сервере запущено несколько приложений (в том числе Hyperic, далее HQ). На сервере также работает отличное приложение / скрипт. HQ запускает скрипт, но на самом деле не имеет интеграции с ним, а это означает, что все, что HQ знает о groovy script, - это вывод в командной строке, созданный groovy script.

Проблема: каким-то образом логи HQ получают все сообщения из groovy скрипта. Я могу предположить, что когда groovy делает это, он также печатает все журналы в стандартный журнал Java, который, в свою очередь, переопределяется HQ.

У меня есть конфигурация log4j для скрипта groovy, который должен был сделать невозможным ведение журнала в журнале Java по умолчанию.

log4j.rootLogger=info, jsa
log4j.logger.net.schmizz.sshj=WARN

#Defining logger scope and it's params
log4j.logger.mypackage=INFO, jsa
log4j.appender.jsa=org.apache.log4j.RollingFileAppender
log4j.appender.jsa.File=logs/jsa.log
log4j.appender.jsa.MaxFileSize=1MB
log4j.appender.jsa.MaxBackupIndex=5
log4j.appender.jsa.layout=org.apache.log4j.PatternLayout
log4j.appender.jsa.layout.ConversionPattern=%d [%t] %-5p %c (%F:%L) - %m%n

Хотя я все еще получаю все неприятные записи.

P.S .: Я также использую slf4j для гибкости, хотя я сомневаюсь, что это удалось.

1 Ответ

0 голосов
/ 26 мая 2011

Проблема не в ведении журнала (хотя опции аддитивности здесь будут полезны), а в каталоге, в котором находятся файлы groovy.В HQ версии 4.3 все файлы в hq-плагинах сохраняются в каталоге tmp, и измененные файлы также сохраняются там (поэтому, если у вас есть файл foo.txt и вы его там поместите, он будет сохранен в tmp; если вы каким-то образомизмените его, он также будет сохранен в tmp, снова).

Решение: просто удалите логи, скрипты groovy и другие файлы из hq-плагинов в другое место.Каталог Tmp в этом случае $HQ_HOME/server/hq-engine/hq-server/default/tmp/deploy/

...