FlowArmor: Eliminating Silent Failures in Power Automate with a Standardized Error Handling Framework
Introduction
Power Automate is powerful for building workflows, but when flows scale and integrate with multiple systems, one common problem emerges:
- Flows show Succeeded even when something actually failed internally.
This leads to:
- Hidden failures
- Difficult debugging
- No centralized visibility
To solve this, I built FlowArmor, a lightweight reliability framework for Power Automate.
What is FlowArmor?
FlowArmor standardizes:
- Error handling
- Failure propagation
- Telemetry generation
- Correlation tracking
It ensures flows behave predictably and are easy to debug.
Sample Output
Below is an example of FlowArmor telemetry in SharePoint:
Core Pattern
FlowArmor uses a simple structure:
TRY → CATCH → FINALLY
- TRY: Business logic
- CATCH: Capture and normalize errors
- FINALLY: Emit telemetry and decide outcome
Key Concept: No More Silent Failures
Instead of allowing flows to succeed silently, FlowArmor uses a flag (varHasFailure) and terminates the flow explicitly when needed.
This ensures:
- Correct failure status
- Reliable behavior across parent-child flows
Testing the Framework
FlowArmor includes test Compose actions to simulate success and failure.
Success Scenario
div(1,1)
Failure Scenario
div(1,0)
Steps:
- Open flow: FA_Demo_Reliability_Scaffold_v1
- Locate the test Compose action
- Modify expression to
div(1,0)ordiv(1,1)
Centralized Logging
Failed executions are logged to SharePoint:
- CorrelationId
- Status
- ErrorMessage
- ActionName
This enables centralized visibility across flows.
CorrelationId – How It Helps
Each execution gets a unique CorrelationId.
In this version, one log is created per execution, but CorrelationId helps:
- Match SharePoint logs to a specific flow run
- Track parent-child executions
- Simplify debugging
Real Result
- ✅ No silent failures
- ✅ Predictable flow behavior
- ✅ Centralized error visibility
- ✅ Faster debugging
GitHub Repository
Check out FlowArmor here:
For architectural deep dive, read here: FlowArmor Architecture Blog
Conclusion
FlowArmor provides a simple but powerful pattern to make Power Automate flows reliable and observable.
If you're building production workflows, this pattern can save significant debugging time and prevent hidden issues.
Post a Comment