【问题标题】:Anypoint Studio Logger: pretty print JSON payloadAnypoint Studio Logger:漂亮的打印 JSON 有效负载
【发布时间】:2020-11-28 10:46:37
【问题描述】:

测试 POC 并想知道在 Anypoint Studio 控制台中漂亮打印 JSON 有效负载的最快/最简单方法是什么。我宁愿不知道如何使用Groovy component 来完成此操作。

我已尝试将 application/json indent 属性设置为 true,如下所示,但它仍将整个对象打印在一行上(缩进)。

output application/json indent=true

有任何用于快速 POC 工作的轻量级解决方案吗?

【问题讨论】:

  • 你究竟在做什么来记录?请以 XML 格式分享您的流程。

标签: json logging mule pretty-print


【解决方案1】:

Studio 中的控制台显示正在记录的内容。如果您使用 DataWeave 创建 JSON,正如您共享的脚本所证明的那样,则默认值为 indent writer property is true。因此,在记录时,生成的 JSON 默认会打印得很漂亮。

例子:

    <ee:transform doc:name="Transform Message" >
        <ee:message >
            <ee:set-payload ><![CDATA[%dw 2.0
output application/json
---
{ 
    a:"aaaa",
    b: {c:1, d:"dddd"},
    e: "ccc"
}]]></ee:set-payload>
        </ee:message>
    </ee:transform>
    <logger level="INFO" doc:name="Logger" message="Payload: #[payload]"/>

输出(为了清楚起见,省略了所有的日志信息):

Payload: {
  "a": "aaaa",
  "b": {
    "c": 1,
    "d": "dddd"
  },
  "e": "ccc"
}

【讨论】:

    猜你喜欢
    • 2021-09-07
    • 2014-05-19
    • 2021-01-31
    • 2014-05-12
    • 1970-01-01
    • 2017-11-03
    • 2011-05-05
    • 2017-05-01
    相关资源
    最近更新 更多