Manejo de errores en Power Automate: Guía completa para flujos confiables
Juan Carlos Santiago
Manejo de errores en Power Automate: Guía completa para flujos confiables
El manejo de errores es fundamental para crear automatizaciones profesionales y confiables. En esta guía, te mostraré cómo implementar estrategias completas de control de errores en Power Automate.
1. Configurando Run After: La base del manejo de errores
La acción "Run After" (Ejecutar después) es tu primer aliado. Permite ejecutar acciones basadas en el estado anterior de otras acciones.
Estructura:
- has succeeded
- has failed
- is skipped
- has timed out
Ejemplo práctico: Después de una acción "Get Items" de SharePoint, configura una acción siguiente para ejecutarse si la acción anterior falla.
2. Scope: Bloques Try-Catch en Power Automate
Usa la acción Scope para agrupar acciones relacionadas y capturar errores a nivel de bloque. Es como un try-catch en programación tradicional.
Patrón recomendado:
- Crea un Scope llamado "Obtener datos"
- Dentro, coloca las acciones que deseas monitorear
- Configura una acción después con Run After en estado "has failed"
- Añade lógica de recuperación o notificación
3. Envío de notificaciones de error
Las notificaciones inmediatas son críticas para el monitoreo. Implementa un patrón de notificación robusto:
{
"To": "admin@empresa.com",
"Subject": "Error en flujo: @{workflow().name}",
"Body": "Error: @{result('NombreDelScope')['error']['message']}",
"Importance": "High"
}
4. Registro de errores en SharePoint
Mantén un historial de errores creando una lista especializada:
Estructura recomendada:
- Título: Nombre del flujo
- Descripción del error
- Fecha y hora
- Usuario afectado
- Estado: Resuelto/Pendiente
Usa "Create item" en SharePoint después de cada Scope con Run After "has failed":
{
"Title": "@{workflow().name}",
"ErrorDescription": "@{result('Scope')['error']['message']}",
"ErrorTime": "@{utcNow()}",
"ErrorStatus": "Pendiente"
}
5. Políticas de reintento
Configura reintentos automáticos para errores transitorios. Cada acción tiene configuración de reintento:
- Número de reintentos: 3-5 es recomendado
- Intervalo de reintento: 60 segundos
- Estrategia: Exponencial para evitar sobrecargar servicios
Esto es especialmente útil para acciones que consumen APIs externas.
6. Acción Terminate: Control definitivo
Usa Terminate para detener un flujo de manera controlada cuando encuentres un error crítico:
{
"runStatus": "Failed",
"runError": "Datos inválidos detectados: @{variables('ErrorMessage')}"
}
Patrón completo recomendado
1. Iniciar flujo
2. ├─ Scope "Validación"
3. │ └─ Acciones de validación
4. │ └─ Run After: Failed → Notificar + Registrar + Terminate
5. ├─ Scope "Procesamiento"
6. │ └─ Acciones principales
7. │ └─ Run After: Failed → Reintentar o Notificar
8. └─ Acción: Enviar confirmación de éxito
Mejores prácticas
- Sé específico: Captura mensajes de error detallados
- Documenta: Mantén registro de todos los errores
- Prueba: Simula fallos antes de producción
- Monitorea: Revisa regularmente tu lista de errores en SharePoint
- Automatiza: Crea alertas para errores críticos
Pro Tip
Crea una tabla de control en Excel Online que se actualice automáticamente con errores de SharePoint. Esto te permite analizar patrones de fallos y mejorar tu proceso continuamente. Usa análisis de datos en Power Automate para identificar tendencias antes de que se conviertan en problemas mayores.
