【问题标题】:How to print exception payload within mule message flow如何在 mule 消息流中打印异常有效负载
【发布时间】:2014-03-04 00:07:01
【问题描述】:

我有一个 mule 流,我在其中通过以下代码 sn-p 以字符串格式记录整个有效负载

<logger level="ERROR" message="#[payload:java.lang.String]"/>

现在,如果发生错误,则确实不需要打印整个有效负载。消息中的有效负载对象为空,异常有效负载中填充了相关的异常。

如果我可以只打印字符串格式的异常有效负载,那就足够了。有谁知道如何从消息中记录异常有效负载?

【问题讨论】:

  • 您在下面收到了两个答案,愿意接受一个吗?如果不是,请说明原因。

标签: mule


【解决方案1】:

如果要将错误保存到有效负载中,则需要对其进行转换:

%dw 2.0
output application/json
---
{
    error: error.detailedDescription,
    errorType: (error.errorType.namespace default '') ++ ":" ++ (error.errorType.identifier default '') ,
    recoverable: false
}

所以,进入有效载荷你有你的错误

【讨论】:

    【解决方案2】:
        <logger level="ERROR" message=" 
    #[groovy:message.getExceptionPayload().getRootException().getMessage()]" /> 
    

    上面的代码提取了与异常原因相关的消息。

    【讨论】:

      【解决方案3】:

      表达式使用中的小修正:

      [groovy:message.getExceptionPayload().getRootException().getMessage()]
      

      【讨论】:

        【解决方案4】:

        很简单:

        <logger level="ERROR" message="#[exception]"/>
        

        【讨论】:

          猜你喜欢
          • 2015-04-27
          • 2012-03-09
          • 2015-01-16
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-07-14
          • 1970-01-01
          • 2019-05-20
          相关资源
          最近更新 更多