Почему я не смог поймать ошибку в подпотоке? - PullRequest
1 голос
/ 29 мая 2020

Из главного API я вызываю подпоток. Я определил обработчик ошибок в основном потоке и подпотоке (у меня сложный сценарий) Вот простая схема того, что я пытаюсь; Из основного потока в области Asyn c я вызываю подпоток i. Mainflow сам имеет обработчик ошибок. Внутри подпотока отчетов я вызываю другой подпоток, который вызывает ошибку 403. Я решил справиться с этим в подпотоке отчетов. Так что я использовал, при ошибке продолжить. Я использовал посредника журнала, чтобы увидеть, выполняется он или нет. Но это не так. Скорее, из основного потока, который я получаю, войдите в основной обработчик ошибок. Я не определил никаких глобальных обработчиков ошибок. Почему?

Основной поток

<flow name="post:\notifications:raml-config">
.................
                <async doc:name="Async">
                    <try doc:name="Try">
                        <flow-ref doc:name="Call-Reporting-subFlow
                            name="reporting-subflow" />
                        <error-handler >
                            <on-error-propagate enableNotifications="true" logException="true" doc:name="On Error Propagate" doc:id="743fc7cb-38d4-4a0c-ab36-9105645ce710" >
                                <logger level="INFO" doc:name="Logger" doc:id="5d18eb33-780e-4353-b65f-b26eec88612a" message="in main errror handler"/>

............
</flow>

Подпоток (поток отчетности)

<sub-flow name-"reporting-subflow">
<try doc:name="Try"  >
            <flow-ref doc:name="getcontracts"  name="get-details-subflow" />
            <error-handler >
                <on-error-continue enableNotifications="true" logException="true" doc:name="On Error Continue" type="HTTP:FORBIDDEN">
                        <logger level="INFO" doc:name="Logger" message="GOT 403 error"/>
                <flow-ref doc:name="gettoken"  name="getToken-subflow" />
</error-handler>
        </try>
</sub-flow>
...