执行Mulesoft批处理组件时出现问题

时间:2020-05-30 22:48:16

标签: mule mule-studio mule-component mulesoft mule-esb

我在执行MuleSoft 4中的批处理功能时遇到问题,我正在尝试打印最终的有效负载,但是我无法打印最终的处理过的有效负载。请任何人提供帮助,相同的代码。代码xml如下。

谢谢。

代码XML:

<http:listener-config name="parentListener" doc:name="HTTP Listener config" doc:id="fbfff994-e442-42eb-84f7-0d6481ef1198" basePath="/" >
    <http:listener-connection host="0.0.0.0" port="8085" />
</http:listener-config>
<http:request-config name="HTTP_Request_configuration" doc:name="HTTP Request configuration" doc:id="742dd6a4-706e-473d-96f9-9719f34ed2b6" >
    <http:request-connection host="0.0.0.0" port="8086" />
</http:request-config>
<flow name="parent" doc:id="a8cb06bf-866d-4ec6-9f9f-0f492cc05044" >
    <scheduler doc:name="Scheduler" doc:id="c2a54ae1-7de0-4daf-962c-99a5eef5b78a" >
        <scheduling-strategy >
            <fixed-frequency frequency="10000"/>
        </scheduling-strategy>
    </scheduler>
    <set-payload value="#[['Apple','Banana']]" doc:name="[Apple,Banana]" doc:id="5694f264-e91d-4f2e-81aa-1267cb45f250" />
    <batch:job jobName="processRecordsBatch_Job" doc:id="c3290b63-08ba-4abc-a963-02089df89b7a" >
        <batch:process-records >
            <batch:step name="Batch_Step1" doc:id="79158da3-251b-46ec-b276-0421308fe34c" >
                <set-payload value='"1" ++ payload' doc:name="Step One" doc:id="8cb8905c-4e62-4115-995f-5416ac3a26bd" />
            </batch:step>
            <batch:step name="Batch_Step2" doc:id="00e4f7a3-83a8-46be-8b58-9e5d38850fec" >
                <set-payload value='"2"  ++ payload' doc:name='"StepTwo" ' doc:id="41a80eda-d4db-4a6a-9b0e-b79fade09f45" />
            </batch:step>
        </batch:process-records>
        <batch:on-complete >
            <logger level="INFO" doc:name="Logger" doc:id="56feea1f-6e23-4979-b66b-9d08037b56ef" message='#[payload]'/>
        </batch:on-complete>
    </batch:job>
</flow>

流截图: enter image description here

2 个答案:

答案 0 :(得分:0)

由于批次范围未返回,因此您将看不到批次的“输出”。批处理范围是相对于流异步处理的,并且不返回值。

您可以在“完成”阶段添加记录器,以打印批处理执行的结果(已处理的记录,失败等)。

答案 1 :(得分:0)

最后,在通过它成功处理记录之后,我成功打印了最终输出。下面给出了它的屏幕截图。解决的方法是,如果我们在第2步中再添加一个记录器组件作为最后一个组件,则可以看到完整的输出。enter image description here