342.4. RFC5424 Syslog プロトコル
Camel 2.14 から利用可能
Syslog リスナーサービスを公開するには、既存の camel-mina コンポーネントまたは camel-netty を再利用します。ここでは、SyslogDataFormat
を使用してメッセージをマーシャリングおよびアンマーシャリングします。
342.4.1. Syslog リスナーの公開
Spring XML ファイルでは、ポート 10514 で udp メッセージをリッスンするようにエンドポイントを設定します。netty では defaultCodec を無効にしていることに注意してください。
NettyTypeConverter へのフォールバックを許可し、メッセージを InputStream として配信します。
<camelContext id="myCamel" xmlns="http://camel.apache.org/schema/spring"> <dataFormats> <syslog id="mySyslog"/> </dataFormats> <route> <from uri="netty:udp://localhost:10514?sync=false&allowDefaultCodec=false"/> <unmarshal ref="mySyslog"/> <to uri="mock:stop1"/> </route> </camelContext>
camel-mina を使用した同じルート
<camelContext id="myCamel" xmlns="http://camel.apache.org/schema/spring"> <dataFormats> <syslog id="mySyslog"/> </dataFormats> <route> <from uri="mina:udp://localhost:10514"/> <unmarshal ref="mySyslog"/> <to uri="mock:stop1"/> </route> </camelContext>
342.4.2. リモート宛先への syslog メッセージの送信
<camelContext id="myCamel" xmlns="http://camel.apache.org/schema/spring"> <dataFormats> <syslog id="mySyslog"/> </dataFormats> <route> <from uri="direct:syslogMessages"/> <marshal ref="mySyslog"/> <to uri="mina:udp://remotehost:10514"/> </route> </camelContext>