Я создаю приложение JSF, которое использует библиотеку expect4j, и мне очень трудно подавить вывод в журнале сервера Glassfish. Я попытался создать файл logging.properties в каталоге src/main/resources на основе файла logging.properties от expect4j. Я также попытался создать файл log4j2.xml, чтобы выполнить одно и то же. Я даже попытался переместить файл log4j2.xml в каталог WEB-INF рядом с web.xml на основании другого сообщения, которое я нашел в ходе исследования.Устранение сбоев в выходе журнала из баночки
Я хотел бы подавить его, потому что он генерирует много сообщений на уровне информации/отладки. Вот пример сообщения:
[2016-06-25T14:36:06.195-0600] [glassfish 4.1] [INFO] [] [] [tid: _ThreadID=225 _ThreadName=Thread-8] [timeMillis: 1466886966195] [levelValue: 800] [[4229 [__ejb-thread-pool5] DEBUG expect4j.Expect4j - Found EOF]]
Глядя на expect4j, кажется, что это зависит только от SLF4J, так что я не должен иметь каких-либо проблемы с определением log4j2 как мой регистратор.
Вот следующие зависимости я в том числе в моей Maven проекта:
- expect4j: 1,6
- SLF4J-log4j12: 1.7.7
- JSTL: 1,2
- JSTL-апи: 1,2-Rev-1
- javax.ejb-апи: 3.2
- JSF-апи: 2.2.8-02
- JSF-осущ : 2.2.8-02
- primefaces: 5,2
- log4j-страница: 2.6.1
Вот что у меня есть в моем logging.properties файле:
handlers=java.util.logging.ConsoleHandler
.level=INFO
java.util.logging.ConsoleHandler.level=INFO
#expect4j.handler=java.util.logging.ConsoleHandler
expect4j.level=SEVERE
Вот что у меня есть в моем log4j2.xml файле:
<?xml version="1.0" encoding="UTF-8" ?>
<Configuration status="INFO">
<Appenders>
<Console name="Console" target="STDOUT">
<PatternLayout
pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n" />
</Console>
</Appenders>
<Loggers>
<Logger name="expect4j" level="error" additivity="false">
<AppenderRef ref="Console" />
</Logger>
<Root level="warn">
<AppenderRef ref="Console" />
</Root>
</Loggers>
</Configuration>
Я смотрю на эту ссылку, но я не видел какой-либо из того, что он был направлен в JConsole когда я привязался к моему серверу из морской рыбы. Suppress java util logging from 3rd party jar.
Благодарим за любую помощь, которую вы могли бы предоставить.
Спасибо @rgoers, что, похоже, сделал трюк. Когда я изначально создавал проект eclipse, предложения, предлагаемые Maven, были неполными. Eclipse указывал, что индексирование Maven было отключено, поэтому я сделал поиск в Google, как включить его, и в итоге у меня появился более полный репозиторий для поиска. Это дало мне все библиотеки slf4j и log4j, в которых я нуждался. В моем случае с библиотекой expect4j, java.util.logging не требовался, поскольку библиотека использует slf4j. В очередной раз благодарим за помощь. – klog