Я пытаюсь передать основное сообщение журнала hello world, чтобы оно отображалось в бензопиле из log4j2. Мне все равно, использует ли он «Zeroconf» или нет, я просто хочу что-то, что работает. Я знаю, что моя тестовая программа регистрирует сообщения, поскольку они отображаются на консоли, и я знаю, что она находит мой файл конфигурации, потому что я могу изменить формат сообщений, которые выводятся на консоль, но это все, что я знаю.
Мой конфигурационный файл (содержащий различные неудачные догадки):
<?xml version="1.0" encoding="UTF-8"?>
<configuration advertiser="org.apache.logging.log4j.core.net.MulticastDNSAdvertiser">
<appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %m%n"/>
</Console>
<File name="testFile" fileName="logs/test.log" bufferedIO="false" advertiseURI="file://localhost/home/matt/code/ade/logs/test.log" advertise="true">
<XMLLayout />
</File>
<SocketAppender name="socketTest" host="localhost" immediateFlush="true" port="4560" protocol="TCP" advertiseURI="http://localhost" advertise="true">
<XMLLayout />
</SocketAppender>
</appenders>
<loggers>
<root level="TRACE">
<appender-ref ref="Console"/>
<appender-ref ref="testFile"/>
<appender-ref ref="socketTest"/>
</root>
</loggers>
</configuration>
Я пробовал различные комбинации: включение jmdns.jar в путь к классам, перезапуск бензопилы в разных точках и разочарование, но ничего не помогло.
Любые идеи?
Изменить: я понял, почему он не может прочитать файлы журнала, которые я сохранял на диск (я не использовал XMLLayout), поэтому я обновил вопрос, чтобы отразить, что теперь мне нужно только заставить работать потоковую передачу.