A new approach to error handling in Power Automate in 2024 with the Flow Run table

For quite a few years now I’ve promoted the Try-Catch error handling pattern. But there is a new approach on its way with the Flow Run table.

Flow Runs table
Flow Runs table

The Flow Run Table

Within Dataverse you can now find the Flow Run table. The Flow Run table has a record for every run of a flow. This includes the status, trigger type, parent flow run IDs and so much more. A column Error Message (which doesn’t appear to be set yet) also seems to be a useful piece of information.

Notice that this new Flow Run table is an elastic table.

An elastic table is a data table managed by Dataverse designed to handle large volumes of data in real-time. With elastic tables, developers can import, store, and analyze large volumes of non-relational data without scalability, latency, or performance issues, even automatically scaling to ingest and read tens of millions of rows every hour.

How to enable this feature

All you have to do is go to your Environment settings then find the following Features and enable it:

Cloud Flow run history in Dataverse feature
Cloud Flow run history in Dataverse feature

So how can we use this?

Replacing the try-catch error handling

Well one of the negatives of the Try-Catch pattern is that we will be adding the same scope boxes with the same email in every single flow that we have. This is cluttering the actual flows.

We could now simply have a flow triggering on the Flow Run table, and then send out our email with the flow run URL to report the issue. Now we only have to include the following flow in each of our environments to do exactly the same:

When a row is added, modified or deleted trigger followed by condition
When a row is added, modified or deleted trigger followed by condition

I would include a try catch in the error handling flow. Just in case the error handling flow is failing. Although that could of course also be handled by the above flow. Care should of course be taken that we don’t end up in an endless loop. So excluding the error handling flow from the above pattern might be a good idea anyway.

Does this really replace the Try-Catch?

Not really.

Quite often, I would want my flows to complete specific steps to recover from a failure, however the simple reporting of the errors could quite well be handled with the above steps instead of the Try Catch pattern.

So for example, if I had a flow that provisioned a SharePoint site and the provisioning process would fail due to time out issues, then I would probably want my flow to retry the provisioning process at a quieter time.

Also, the Error messages currently aren’t recorded yet. where you might want to inform someone of the failure details in the email that you send them.

But in short, this is a great improvement, to simplify the whole error handling in Power Automate and Dataverse.

Some concluding thoughts

If you use the Flow run table as part of your governance around the Power Platform, then including these tables in your Model Driven Apps of course is a must. Securing these tables of course will be needed, but it would help to identify issues straight from within the apps that you develop.

Or if you prefer a canvas app, the following app can be developed within 5 minutes.

A new approach to error handling in Power Automate in 2024 with the Flow Run table
A new approach to error handling in Power Automate in 2024 with the Flow Run table 1

Discover more from SharePains

Subscribe to get the latest posts sent to your email.

Related Posts

18 thoughts on “A new approach to error handling in Power Automate in 2024 with the Flow Run table

  1. Hi Pieter. Thanks for the tip! I do see the Flow Run table but no data in this table. Even as a Environment / Power Platform Admin – no flow runs visible. Do I need to configure this or is it still in rollout? Thanks

    1. Hi Patrick, I checked in a few of my tenants across the world and they seem to be populating the table. I wonder if there are some other restrictions. Do you have flows running within solutions?

      1. I think this feature is still updated for different tenants. I checked multiple tenants from Europe, and I can see the Flow Run table, but there is no data gathered. I know these environments have flow running both inside and outside solutions.

  2. Hi Pieter. We do have premium and we have flows in and out of solutions. The table is empty. It indicates that it was created 2 weeks ago.

      1. That location should be fine. I have seen the new table with content in the US, Canada and UK.

        Maybe the update frequency in your environment that makes the difference.

  3. Thank you for sharing this. Something to note is that you need a premium licence of some sort as dataverse is a premium connector.

  4. Hi Pieter
    Happy New Year !
    Did I miss it but what is the details of the condition in the flow ?
    I suspect it is something if Error Message is Blank ?
    Am I correct ?
    Thanks
    Nigel

    1. The idea is that you can read the table for any errors. So just one flow triggeringnon that table.

      You might still have the additional try catch inside the flow as well though. But that might become less important.

  5. Hi Pieter,
    I am also waiting for the table to start showing data. My region is Canada, I created a solution, added this table and the flow you described then added another flow that will error out (for testing) but that Flow Runs table was still blank. Does the environment need to be created recently? My environ was created at least 5 months ago.
    Thank you,
    Mohammed

  6. Hello,

    The trigger doesn’t work for me. I see the Flow Runs table, which has many values.

    I set it to trigger when a new row is added, but it will not trigger.

    I’m a global admin to the o365 tenant, and I have full access as a system administrator to the Environment.

    I can trigger other tables, but the Flow Runs table is giving me issues.

    Do I need to do anything special to make it trigger for that table?

    Regards,
    Evie

    1. You might have to use a scheduled flow and query for recent updates. This table is an elastic table and I wouldn’t be surprised if the usual triggers didn’t work on that.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Discover more from SharePains

Subscribe now to keep reading and get access to the full archive.

Continue reading