从消息头指定日志记录级别 - Spring Integration - Logging Channel Adapter

时间:2012-06-18 07:33:08

标签: java spring logging spring-integration

我已经设置了一个日志通道适配器,如图所示。

<int:logging-channel-adapter id="logger" logger-name="messages" 
  expression="payload.toLogString()" level="????" />

对于关卡,我想要一个完成逻辑的SpEL表达式

if(headers.isSet("LoggingLevel"))
  level = headers.get("LoggingLevel);
else
  level = "INFO";

最好使用三元运算符。

1 个答案:

答案 0 :(得分:3)

目前没有办法动态设置日志记录通道适配器的日志级别;请随时在https://jira.springsource.org/browse/INT

打开“改进”JIRA问题

与此同时,您可以通过定义多个&lt; logging-channel-adapter&gt;来解决它,每个&lt; logging-channel-adapter&gt; s都有不同的级别并使用&lt; header-value-router&gt;路由到适当的适配器。

您可以将其封装在&lt; import&gt; ed配置文件中,以便在多个应用中重复使用。