使用 log4j 将骆驼交换 body 记录为字符串

Log camel exchange body as string using log4j

我正在尝试使用 log4j 将交换 body 记录为字符串。

<convertBodyTo id="_convertBodyTo1" type="java.lang.String"/>
<to id="_to1" uri="log:com.javarticles?level=INFO"/>

但它没有记录为字符串

15:09:05,403 | INFO  | qtp938841692-57  | javarticles                      |
198 - org.apache.camel.camel-core - 2.15.1.redhat-620133 | 
Exchange[ExchangePattern: InOut, BodyType: java.lang.String, Body: 
org.apache.cxf.jaxrs.impl.HttpHeadersImpl@52767902]

我们是否必须为日志交换添加额外的逻辑body?我们如何记录 http headers?

如果只想记录邮件正文,则使用

<log message="${body}"/>

日志端点默认记录一堆细节,您可以使用列出的选项打开|关闭这些:http://camel.apache.org/log