syslogappender
1.0.0
RFC-5424 を完全にサポートするログバック用の Syslog アペンダ
[syslog4j][] を利用して、RFC-5424 形式と互換性のある syslog 経由でログ メッセージをリモート システムに送信する Logback アペンダ。
Logback 用の既存の syslog アペンダは、UDP 経由でメッセージを送信する機能のみを提供します。 syslog-java-client を使用すると、TCP 経由でメッセージを送信でき、オプションで TLS を使用して TCP 経由で送信してメッセージを暗号化することもできます。このライブラリは、RFC-5424 に従ってメッセージ長の追加も処理するため、改行を含むログ行は正しく機能します。
https://bintray.com/serioussam/oss/com.github.serioussam%3Asyslogappender を使用したセットアップ これをpom.xml
に追加します。
< dependency >
< groupId >com.github.serioussam</ groupId >
< artifactId >syslogappender</ artifactId >
< version >1.0.0</ version >
</ dependency >
次に、アペンダーをlogback.xml
に追加します。
Maven を使用していない場合は、[logback-syslog4j-1.0.0.jar][] と最新の [syslog4j][] JAR をダウンロードします。 Logback 自体に加えて、これらのファイルをクラスパスに配置します。
< appender name = " SYSLOG-TLS " class = " com.github.serioussam.syslogappender.SyslogAppender " >
< layout class = " ch.qos.logback.classic.PatternLayout " >
< pattern >%date %-5level %logger{35} - %message%n</ pattern >
</ layout >
< syslogConfig class = " SyslogConfig " >
<!-- remote system to log to -->
< host >localhost</ host >
<!-- remote port to log to -->
< port >514</ port >
<!-- program name to log as -->
< programName >java-app</ programName >
<!-- protocol TCP_TLS -->
< protocol >TCP_TLS</ protocol >
</ syslogConfig >
</ appender >
< root level = " DEBUG " >
< appender-ref ref = " SYSLOG-TLS " />
</ root >
< appender name = " SYSLOG-TCP " class = " com.github.serioussam.syslogappender.SyslogAppender " >
< layout class = " ch.qos.logback.classic.PatternLayout " >
< pattern >%date %-5level %logger{35} - %message%n</ pattern >
</ layout >
< syslogConfig class = " SyslogConfig " >
<!-- remote system to log to -->
< host >localhost</ host >
<!-- remote port to log to -->
< port >514</ port >
<!-- program name to log as -->
< programName >java-app</ programName >
<!-- protocol TCP -->
< protocol >TCP</ protocol >
</ syslogConfig >
</ appender >
< root level = " DEBUG " >
< appender-ref ref = " SYSLOG-TCP " />
</ root >
< appender name = " SYSLOG-UDP " class = " com.github.serioussam.syslogappender.SyslogAppender " >
< layout class = " ch.qos.logback.classic.PatternLayout " >
< pattern >%date %-5level %logger{35} - %message%n</ pattern >
</ layout >
< syslogConfig class = " SyslogConfig " >
<!-- remote system to log to -->
< host >localhost</ host >
<!-- remote port to log to -->
< port >514</ port >
<!-- program name to log as -->
< programName >java-app</ programName >
<!-- protocol UDP -->
< protocol >UDP</ protocol >
</ syslogConfig >
</ appender >
< root level = " DEBUG " >
< appender-ref ref = " SYSLOG-UDP " />
</ root >