Logging 如何在mule logger组件的消息体中插入换行符
谁能告诉我如何在mule logger组件的消息中插入新行 例如,日志记录器的消息中包含以下内容:Logging 如何在mule logger组件的消息体中插入换行符,logging,mule,mule-studio,Logging,Mule,Mule Studio,谁能告诉我如何在mule logger组件的消息中插入新行 例如,日志记录器的消息中包含以下内容: Payload is: #[payload] Inbound Headers: #[headers:INBOUND:*] Outbound Headers: #[headers:OUTBOUND:*] Exceptions: #[exception] 我想在上面的每一行后面插入一行。我尝试在每行末尾添加\n,但没有成功。您可以这样做: Payload is: #[payload]
Payload is: #[payload]
Inbound Headers: #[headers:INBOUND:*]
Outbound Headers: #[headers:OUTBOUND:*]
Exceptions: #[exception]
我想在上面的每一行后面插入一行。我尝试在每行末尾添加\n,但没有成功。您可以这样做:
Payload is: #[payload] #[System.getProperty('line.separator')] Inbound Headers: ...
使用MEL:
<logger
message="#['Payload is:'+payload+'\nInbound Headers: '+message.inboundProperties.entrySet()+'\nOutbound Headers: '+message.outboundProperties.entrySet()+'\nExceptions: '+exception]"
level="INFO" />
使用表达式转换器:
<expression-transformer expression="#[message.payload = message.payload + System.getProperty('line.separator')]" doc:name="Append CRLF"/>
有几种方法可以做到这一点: 1) 使用: #[System.getProperty('line.separator')] 2) 使用:
#['\n']例如:#['Hello\n'+payload+'Welcome to\n new line']我们可以按以下格式向您发送信息
#['\n'] #['\n'] #['\n'] #['\n'] #[payload] #[System.getProperty('line.separator')]
//这应该行得通。在mule 3.9 CE中测试
<logger message="Payload is #[message.payloadAs(java.lang.String)] #[System.lineSeparator()] INBOUND HEADERS = #[headers:inbound:*]" level="INFO" doc:name="Logger"/>
最好还是使用System.getProperty('line.separator'),而不是\n来关闭平台。@Seba听起来不错,但首先我们需要确保MVEL没有将\n
解释为System.getProperty('line.separator')
。