Los flujos se ejecutan sin supervisión, así que Hermetry los protege: un flujo atrapado en un bucle o que falla una y otra vez se pausa por sí mismo, los efectos secundarios tienen limitada su frecuencia, y los mensajes que no se pudieron ejecutar se guardan como mensajes fallidos para que los reproduzcas. Esta página explica cada protección y qué haces cuando una se activa.
Protecciones de flujos
| Protección | Valor predeterminado | Qué ocurre |
|---|---|---|
| Ejecuciones por minuto | 6.000 ejecuciones de un flujo en un minuto deslizante | El flujo se pausa por sí mismo: se sospecha un bucle |
| Ejecuciones fallidas | 100 ejecuciones fallidas seguidas | El flujo se pausa por sí mismo |
| Ejecuciones simultáneas | 16 ejecuciones de un flujo al mismo tiempo | Las demás ejecuciones esperan (como máximo 1.000 por flujo; las más antiguas se descartan a partir de ese número) |
| Abanico de salida | 100 mensajes enviados por un bloque para una misma entrada | El resto de mensajes de ese bloque para esa entrada se descartan |
| Tamaño del mensaje | 256 KiB por mensaje | El mensaje se rechaza (msg_too_big) |
| Protección contra bucles | 4 saltos de eventos y Ejecutar flujo entre flujos; 512 pasos en una ejecución | La cadena se corta |
| Reintentos agotados | Como máximo 5 intentos de una llamada externa | La entrada pasa a ser un mensaje fallido, salvo que el flujo capture el error |
| Mensajes repetidos | Un mensaje de dispositivo visto de nuevo en menos de 60 segundos | Se confirma sin ejecutar |
| Demasiado antiguo | Un mensaje que espera más de 5 minutos | No se ejecuta (los mensajes de dispositivo sí se ejecutan en su raíz, marcados como tardíos) |
| Comandos de dispositivo por minuto | 30 comandos y ajustes desde flujos a un mismo dispositivo | El comando se rechaza (limit) |
| Notificaciones repetidas | La misma notificación a la misma persona en menos de 10 minutos | Esa persona queda excluida |
Tu plan puede establecer otros valores dentro de límites fijos. Cada vez que una protección actúa, se cuenta: en la fila del flujo (Limitado · protección), en el editor («Una protección de flujos actuó sobre este flujo: …», con los bloques marcados) y en la tarjeta de uso (Protecciones de flujos este mes). Consulta Límites de flujos.
Un flujo que se pausó por sí mismo
Un flujo pausado no inicia ninguna ejecución hasta que se reanuda. Su fila indica el motivo:
- «Se pausó por sí mismo: se ejecutó más veces en un minuto de las que permite este espacio de trabajo, por lo que se sospecha un bucle.»
- «Se pausó por sí mismo: demasiadas de sus ejecuciones fallaron seguidas.»
Los gestores de automatización reciben una alerta Flujo pausado por sí mismo. Qué hacer:
- Abre el flujo y revisa Actividad > Errores y las Ejecuciones de los últimos minutos.
- Corrige la causa: rompe el bucle (un flujo que se dispara a sí mismo, o un disparador de Estado que observa un bloque que cambia su estado en cada mensaje), o corrige la llamada que falla.
- Despliega y luego pulsa Reanudar en el menú de la fila del flujo o en el aviso del editor. Una pausa conserva la memoria del flujo y sus mensajes en espera.
Los flujos raíz nunca se pausan automáticamente
Un flujo raíz almacena los datos de cada dispositivo al que atiende, por lo que está exento de la pausa automática y de Ejecuciones simultáneas. Si una raíz falla con demasiada frecuencia, los propietarios y administradores de la organización reciben la alerta crítica Flujo raíz no pausado («Este flujo raíz no se pausó, porque almacena los datos de cada dispositivo al que atiende…»), como máximo una vez cada 6 horas por flujo. Actúa cuanto antes: las ejecuciones fallidas de una raíz pueden significar que las lecturas no se están guardando.
La parada de emergencia
La parada de emergencia pausa todos los flujos en ejecución de la organización, en todos los hosts, a la vez, incluidas las raíces.
- En Automatización, abre el menú de la cabecera y selecciona Detener todos los flujos.
- Lee: «Todos los flujos en ejecución de este espacio de trabajo, en todos los hosts, quedan pausados a la vez: los mensajes de dispositivo, las programaciones, los webhooks y los eventos no inician ninguna ejecución hasta que los reanudes. Las ejecuciones en curso terminan. Un flujo raíz también se pausa, así que los datos de los dispositivos no se almacenan mientras tanto.»
- Marca «Entiendo que nada se ejecuta hasta que los flujos se reanuden.», escribe
STOPy confirma.
Un aviso muestra «Parada de emergencia: n flujos están pausados…». Para terminarla, selecciona Reanudar los flujos: cada flujo que pausó la parada vuelve a ejecutarse; un flujo que se había pausado por sí mismo sigue pausado. Ambas acciones quedan registradas en auditoría.
Úsala solo cuando los flujos estén causando daño (enviando comandos erróneos, saturando un sistema de un socio). Mientras esté activa, los datos de los dispositivos no se almacenan.
Mensajes fallidos
Un mensaje que la plataforma no pudo ejecutar se guarda como mensaje fallido (una carta muerta). Ábrelos desde el menú de la cabecera de la lista de flujos (Mensajes fallidos, todos los flujos de un host) o en el editor (Mensajes fallidos, los mensajes dirigidos a este flujo).
| Motivo | Significado |
|---|---|
| Fallo continuo | Entregado varias veces sin terminar |
| Una llamada falló en todos los reintentos | Una llamada externa agotó sus reintentos y el flujo no capturó el error |
| Esperó demasiado | Una llamada de webhook o un temporizador con nombre esperó más que su tiempo de vida (tras una caída). «Repróducelo para ejecutarlo ahora.» |
| Dejado sin terminar por un nuevo despliegue | Su ejecución no terminó antes de que se sustituyera la versión en la que se ejecutaba |
| Cola demasiado larga | Demasiados mensajes de la organización estaban en espera |
| No se pudo leer | La entrada almacenada está dañada |
| Rechazado por el host | El host no lo aceptó |
Cada fila muestra Visto por primera vez, Motivo, Error e Intentos. Ver muestra la entrada almacenada (solo a personas que puedan depurar).
- Reproducir vuelve a poner el mensaje en la cola con sus identificadores originales. «Su ejecución puede haber hecho ya parte de su trabajo: las llamadas, mensajes o escrituras que realizó pueden volver a ocurrir.» Los bloques que llaman al exterior envían la misma clave de idempotencia, de modo que un receptor que elimina duplicados ve una sola llamada.
- Descartar lo elimina. Después no se puede reproducir.
Cada host guarda sus propios mensajes fallidos. Por defecto se conservan como máximo 10.000; a partir de ahí se eliminan los más antiguos. Al 80 % los gestores reciben la alerta Mensajes fallidos casi llenos, como máximo una vez cada 6 horas.
Un mensaje de dispositivo tardío en una raíz nunca es un mensaje fallido: se almacena. Una marca de programación tardía simplemente se omite.
Alertas
Errores y alertas (menú de la cabecera de la lista de flujos) muestra las alertas de automatización de las últimas 6 horas, una fila por flujo desplegado con sus errores en 24 horas, los mensajes fallidos de hoy y el nivel de registro, los errores más frecuentes de 7 días y los totales por día.
La Regla de alerta decide a quién se avisa y cuándo:
| Campo | Significado |
|---|---|
| Enviar alertas | Activado o desactivado |
| Errores por minuto | 1 a 10.000 |
| Minutos seguidos | 1 a 19 |
| Flujos | Ninguno marcado = todos los flujos |
| Eventos | Ninguno marcado = todos los tipos de alerta |
| Destinatarios | Un identificador de usuario miembro por línea, como máximo 100. Vacío: las personas que pueden gestionar la automatización. No se aceptan direcciones de correo electrónico. |
Tipos de alerta: Muchos errores, Llamadas pausadas (circuito abierto), Efecto secundario limitado, El bloque no arranca, Mensajes fallidos casi llenos, Flujo pausado por sí mismo y Flujo raíz no pausado. Flujo raíz no pausado se envía siempre, diga lo que diga la regla, a los propietarios y administradores y a los destinatarios de la regla.
Llamadas pausadas (circuito)
Un bloque cuyas llamadas externas siguen fallando (un endpoint HTTP caído) pausa sus llamadas durante un tiempo; sus mensajes fallan con circuit_open mientras tanto. Los eventos del flujo muestran Llamadas pausadas (circuito abierto) y, más tarde, Llamadas reanudadas (circuito cerrado). Corrige el receptor; el bloque se recupera por sí solo.

