342.4. RFC5424 Syslog 프로토콜
Camel 2.14 사용 가능
Syslog 리스너 서비스를 공개하려면 기존 camel-mina 구성 요소 또는 camel-netty 를 재사용합니다. 여기서 SyslogDataFormat
을 사용하여 메시지를 마샬링 및 unmarshal합니다.
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>