2

I have an event grid which publishes a lot of events, and a logic app which needs to consume some of them. These events aren't guaranteed to be in order, and events which require another event to be processed first, might end up in the logic app prematurely, causing them to fail.
From the documentation, I can see that event grid supports a retry policy, with an increasing time interval. This would solve my problem.
However, it seems like the logic app in question, always acknowledges events from the event grid, even though the process is stopped early with the Terminate action in the failure state and with an error code.
From the logic app overview, the runs are shown as failed. But the event grid never attempts a retry, and seems to consider the events successful. What can I do to make the event grid retry failed logic app runs?

2 Answers2

1

It seems that once the Azure logic app is triggered, the event in the Azure event grid is considered to be processed.

I think you can configure retry policy at the step where your Azure logic app failed, please refer to Retry policies.

enter image description here

Take the example of Httpaction:

You can click ··· in the upper right corner of the Http action, then click Settings, and select the type you want under Retry Policy

enter image description here

Frank Borzage
  • 6,292
  • 1
  • 6
  • 19
  • I already suspected that was the case, but thanks for the clarification. Sadly, missing data on the server side, because the related event has yet to be processed, does not result in one of the error codes which can trigger a retry. I'll have to look into another way to solve the problem. – Mikkel Olsen Dec 02 '20 at 09:15
0

Event Grid will retry depending on how you terminate your Logic App. If you terminate using http response action (status code 500) then event grid will attempt retries.

Now, depending on what is going on in your Logic app, handle the failures in a way that it terminates on http response action with status code 500.

MeDeveloper
  • 186
  • 4