2012-05-31 3 views
0

У нас есть java webapp, который планирует и запускает несколько других инструментов в разных языках/java, perl, bash, python и т. Д. .../и «ест», их out/err потоков с использованием StreamGobblers для устранения неполадок;
log4j - регистрация System.out и System.err одновременно с консолью

Можно ли использовать log4j/в ядре Java/для регистрации как System.err, так и System.out, чтобы их можно было захватить описанным выше способом?

Не приведет ли это к нарушению и ошибочным сообщениям, чередующимся/появляющимся не по порядку /?

Спасибо

ответ

1

Да. log4j можно использовать для входа в System.err и System.out в отдельный файл/поток.

Да. Сообщения могут чередоваться.

+0

@aglassman Я только попробовал, и оба раза и эээ записываются в консоли/с черным и красным /, но некоторые сообщения из строя. Есть ли способ избежать этого? –

0

Да, это возможно. Проверьте эту документацию:

http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/ConsoleAppender.html

+0

Да, я знаю, что должен использовать или подкласс ConsoleAppender, но мне нужно будет иметь 2 - один для out и 1 для печати ошибки в том же потоке. Я уверен, что в лучшем случае они будут чередовать. –

+0

Операторы журнала не должны чередоваться, если у вас нет нескольких протоколов процессов/потоков в том же журнале. Если возможно, вы можете сортировать журналы по дате позже. – aglassman

Смежные вопросы