diff --git a/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/DefaultMessageConverter.java b/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/DefaultMessageConverter.java index 0297c53c784..18064ddeccd 100644 --- a/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/DefaultMessageConverter.java +++ b/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/DefaultMessageConverter.java @@ -93,6 +93,7 @@ public Message fromSyslog(Message message) { } } return getMessageBuilderFactory().withPayload(this.asMap ? map : message.getPayload()) + .copyHeaders(message.getHeaders()) .copyHeaders(out) .build(); } diff --git a/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/RFC5424MessageConverter.java b/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/RFC5424MessageConverter.java index a9b6172bee2..077a82ae5fe 100644 --- a/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/RFC5424MessageConverter.java +++ b/spring-integration-syslog/src/main/java/org/springframework/integration/syslog/RFC5424MessageConverter.java @@ -85,7 +85,8 @@ public Message fromSyslog(Message message) { } AbstractIntegrationMessageBuilder builder = getMessageBuilderFactory().withPayload( - asMap() ? map : originalContent); + asMap() ? map : originalContent) + .copyHeaders(message.getHeaders()); if (!asMap() && isMap) { builder.copyHeaders(map); } diff --git a/spring-integration-syslog/src/test/java/org/springframework/integration/syslog/inbound/SyslogReceivingChannelAdapterTests.java b/spring-integration-syslog/src/test/java/org/springframework/integration/syslog/inbound/SyslogReceivingChannelAdapterTests.java index dc960ead1fa..2318043ea38 100644 --- a/spring-integration-syslog/src/test/java/org/springframework/integration/syslog/inbound/SyslogReceivingChannelAdapterTests.java +++ b/spring-integration-syslog/src/test/java/org/springframework/integration/syslog/inbound/SyslogReceivingChannelAdapterTests.java @@ -42,6 +42,7 @@ import org.springframework.context.ApplicationEvent; import org.springframework.context.ApplicationEventPublisher; import org.springframework.integration.channel.QueueChannel; +import org.springframework.integration.ip.IpHeaders; import org.springframework.integration.ip.tcp.connection.AbstractServerConnectionFactory; import org.springframework.integration.ip.tcp.connection.TcpNioServerConnectionFactory; import org.springframework.integration.ip.udp.UnicastReceivingChannelAdapter; @@ -84,6 +85,7 @@ public void testUdp() throws Exception { Message message = outputChannel.receive(10000); assertThat(message).isNotNull(); assertThat(message.getHeaders().get("syslog_HOST")).isEqualTo("WEBERN"); + assertThat(message.getHeaders().get(IpHeaders.IP_ADDRESS)).isNotNull(); adapter.stop(); } @@ -128,6 +130,7 @@ public void testTcp() throws Exception { Message message = outputChannel.receive(10000); assertThat(message).isNotNull(); assertThat(message.getHeaders().get("syslog_HOST")).isEqualTo("WEBERN"); + assertThat(message.getHeaders().get(IpHeaders.IP_ADDRESS)).isNotNull(); adapter.stop(); assertThat(latch.await(10, TimeUnit.SECONDS)).isTrue(); } @@ -161,6 +164,7 @@ public void testAsMapFalse() throws Exception { assertThat(message.getHeaders().get("syslog_HOST")).isEqualTo("WEBERN"); assertThat(new String((byte[]) message.getPayload(), "UTF-8")) .isEqualTo("<157>JUL 26 22:08:35 WEBERN TESTING[70729]: TEST SYSLOG MESSAGE"); + assertThat(message.getHeaders().get(IpHeaders.IP_ADDRESS)).isNotNull(); adapter.stop(); } @@ -210,6 +214,7 @@ public void testTcpRFC5424() throws Exception { Message> message = (Message>) outputChannel.receive(10000); assertThat(message).isNotNull(); assertThat(message.getPayload().get("syslog_HOST")).isEqualTo("loggregator"); + assertThat(message.getHeaders().get(IpHeaders.IP_ADDRESS)).isNotNull(); adapter.stop(); assertThat(latch.await(10, TimeUnit.SECONDS)).isTrue(); } @@ -243,6 +248,7 @@ public void testUdpRFC5424() throws Exception { Message> message = (Message>) outputChannel.receive(10000); assertThat(message).isNotNull(); assertThat(message.getPayload().get("syslog_HOST")).isEqualTo("loggregator"); + assertThat(message.getHeaders().get(IpHeaders.IP_ADDRESS)).isNotNull(); adapter.stop(); }