
Microsoft MVPs, YouTube Creator youtube.com/giulianodeluca, International Speaker, Technical Architect
In a clear tutorial, Giuliano De Luca [MVP] explains how to improve error handling in Power Automate by using a pattern that mirrors traditional programming. He demonstrates the use of Try-Catch-Finally logic built from standard Scope actions and shows how to surface meaningful error details with dynamic parameters. As a result, viewers get practical guidance for making flows more predictable and easier to maintain.
De Luca structures the lesson around a short demo that moves from basic concepts to a working implementation, and he highlights timestamps for key parts of the walkthrough. Therefore, both beginners and experienced makers can follow along and apply the pattern to real scenarios. The video focuses on resilience, logging, and notification, rather than advanced custom code.
The core idea is to group actions into three named Scope blocks: a Try scope for normal work, a Catch scope to handle failures, and a Finally scope for cleanup that must always run. De Luca shows how to set Run after conditions so the Catch scope only runs when the Try scope fails, and how the Finally scope can run regardless of outcome. This setup mimics familiar error handling while staying inside the low-code environment.
In addition, the presenter explains how variables can track state between scopes, such as an error flag often named varIsError. By setting this flag in the Catch scope, the Finally scope can decide whether to perform recovery steps or simply finalize the flow. Consequently, the pattern supports clearer outcomes and fewer hidden failure paths.
De Luca emphasizes extracting detailed error information using expressions and dynamic parameters so that logs and alerts contain useful context. For example, failed action outputs can be parsed and written to a log store or included in notification messages to speed troubleshooting. This approach helps teams spot patterns and prioritize fixes faster.
However, there is a balance to strike: adding many diagnostics fields increases visibility but also raises maintenance overhead and potential performance hit. Thus, the video recommends collecting enough detail for root-cause analysis without overwhelming storage or cluttering notifications, and points to integration with tools like Application Insights when enterprise telemetry is required.
De Luca walks through practical steps: initialize an error flag, add the Try scope with core actions, add the Catch scope configured to run on failure, set the error flag and record details, and then add the Finally scope for cleanup or final branching. He demonstrates configuring the Run after settings and using expressions to pull error messages from failed steps. This hands-on sequence makes the abstract pattern tangible and repeatable.
Additionally, the tutorial shows how to reuse the pattern across flows for consistency, suggesting copy-and-paste of a well-tested template. By using variables and consistent naming, teams can reduce errors introduced by ad hoc designs and speed up new flow creation. As a result, governance and support become easier for administrators and developers alike.
While the pattern improves resilience, De Luca also highlights tradeoffs that makers should consider. For instance, adding many Run after conditions and diagnostics increases flow complexity, which can make flows harder to read and maintain over time. Therefore, teams must weigh the benefits of detailed error capture against the cost of added complexity and potential performance impact.
Moreover, there is a tension between noisy notifications and silent failures: sending too many alerts can desensitize recipients, while sending too few can delay detection of critical issues. De Luca suggests tuning notification thresholds and grouping alerts logically so that operations teams receive actionable signals rather than constant noise. Finally, implementing enterprise telemetry requires planning for quotas, retention, and access control.
Overall, Giuliano De Luca’s video offers a practical, low-code approach to error handling in Power Automate that is easy to adopt and scale. By combining Try-Catch-Finally style scopes with dynamic parameters and clear state tracking, makers can build flows that fail loudly and recover cleanly, improving trust in automation.
In summary, the technique presents clear benefits for reliability and troubleshooting, but it also requires thoughtful design to avoid complexity and alert fatigue. Consequently, teams should pilot the pattern on critical flows, tune diagnostics and notifications, and document the design for reuse across projects.
Power Automate error handling, Power Automate try catch, Power Automate scopes best practices, Power Automate dynamic parameters, Power Automate exception handling, Power Automate error handling tutorial, Power Automate flow retry strategies, Power Automate try-catch examples