Как настроить порт в Apache Chainsaw с помощью Log4j2

Я получил log4j2.xml, который генерирует файлы журнала. Вот конфиг:

<Configuration status="INFO" advertiser="multicastdns">
    <Properties>
        <Property name="layout">%d | %-5p | [%t] | %c{2} | %M | %m%n
        </Property>
    </Properties>
    <Appenders>
        <RollingFile name="LogFile" fileName="${sys:user.home}/logs/webapp.log"
            filePattern="${sys:user.home}/logs/webapp-%d{yyyy-MM-dd}-%i.log"
            bufferedIO="false" advertiseURI="file:///C://users/bilguuna/logs/webapp.log"
            advertise="true">
            <PatternLayout pattern="${layout}" />
            <Policies>
                <TimeBasedTriggeringPolicy />
                <SizeBasedTriggeringPolicy size="1 MB" />
            </Policies>
            <DefaultRolloverStrategy max="10" />
        </RollingFile>
    </Appenders>
    <Loggers>
        <Root level="INFO">
            <AppenderRef ref="LogFile" level="INFO" />
        </Root>
    </Loggers>
</Configuration>

Я могу увидеть файл журнала, используя

Файл: /// C: //users/bilguuna/logs/webapp.log

в браузере.

Проблема в том, что на вкладке ZeroConf мой appender "LogFile" отображается со статусом подключения "Подключен". Но когда я дважды щелкаю по этой строке, она просто меняется на отключенную / подключенную. Когда я проверяю Chainsaw-log. Это сказало, что Соединение отказалось как изображение ниже:

Я думаю, это из-за того, что бензопила выбрала 4555 в качестве порта по умолчанию, который не открыт на моей машине. Так какой порт следует выбрать и как установить его в моем файле log4j2.xml?

Спасибо

ОБНОВЛЕНИЕ: После того, как я использовал версию моментального снимка разработчика, как предложил @Scott, кажется, что проблема "отказано в соединении" исчезла. Но я все еще не вижу журналы. Когда я нажимаю на запись на вкладке ZeroConf, она по-прежнему меняет состояние подключения на Подключено / Не подключено. Вот журнал с вкладки цепной пилы:

Опять же, я должен был видеть реальные журналы, когда я дважды щелкаю по записи на вкладке ZeroConf? Обновление: я получил следующее исключение на моей консоли:

 WARNING: SocketListener(WS00943.local.).run() exception 
java.io.IOException: DNSIncoming corrupted message
    at javax.jmdns.impl.DNSIncoming.<init>(DNSIncoming.java:239)
    at javax.jmdns.impl.SocketListener.run(SocketListener.java:50)
Caused by: java.lang.IllegalStateException: Can't overwrite cause with java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [javax.jmdns.impl.constants.DNSResultCode]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access.
    at java.lang.Throwable.initCause(Unknown Source)
    at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1344)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1206)
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167)
    at javax.jmdns.impl.DNSIncoming.readAnswer(DNSIncoming.java:342)
    at javax.jmdns.impl.DNSIncoming.<init>(DNSIncoming.java:229)
    ... 1 more
Caused by: java.lang.ClassNotFoundException
    at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1343)
    ... 5 more

1 ответ

Проблема в том, что для работы с log4j2 вам нужно использовать последний снимок Chainsaw для разработчиков. Версия, запускаемая веб-стартом, работает только с log4j1.

Снимок разработчика доступен по адресу: http://home.apache.org/~sdeboy/

Другие вопросы по тегам