6

我需要使用键“foo_bar”记录消息标题的值,以便当该标题的值为“baz”时日志消息看起来像这样:

标头 foo_bar 的值:baz

如何使用窃听器和记录通道适配器来做到这一点?

4

1 回答 1

14

使用 logging-channel-adapter 的表达式属性,并设置如下所示的窃听器和 logging-channel-adapter:

<integration:channel id="channel1">
    <integration:interceptors>
        <integration:wire-tap channel="loggingChannel1"/>
    </integration:interceptors>
</integration:channel>
<integration:logging-channel-adapter 
    id="loggingChannel1" 
    expression="'Value of header foo_bar: '.concat(headers.foo_bar)" 
    level="DEBUG"
/>

使用表达式属性时,根对象是 spring 集成消息。因此,表达式中的“标题”为您提供消息的标题映射。

于 2011-03-28T11:25:12.390 回答