Использование Unix сокета Syslog с Log4J2

Я хотел бы отправить журналы приложения на сервер rsyslog, используя клиентский протокол: сокет Unix. И приложение, и сервер rsyslog находятся на одной машине.

Я сравнивал различные инструменты ведения журнала: Log4J, Logback и Log4J2.

Приложение Syslog Log4J изначально не разрешает это. Решение - использовать Syslog4J и настроить наш Syslog4JAppender следующим образом:

<appender name="mySyslogAppender" class="org.productivity.java.syslog4j.impl.log4j.Syslog4jAppender">
    <param name="protocol" value="unix_socket" />
    ...
</appender>

Так же, как Log4J, приложение системного журнала Logback не разрешает его изначально. Решением является использование инструмента Syslog4J и logback-syslog4j, и настройте наш appender следующим образом:

<appender name="mySyslogAppender" class="com.papertrailapp.logback.Syslog4jAppender">
    <syslogConfig class="org.productivity.java.syslog4j.impl.unix.socket.UnixSocketSyslogConfig">
            ...
    </syslogConfig>
</appender>

Сейчас я ищу решение для Log4J 2, но я не нашел ни одного. Вы знаете один? Будут ли эти инструменты изначально включать эту функциональность?

0 ответов

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