Aumenta la resiliencia de la guía con reintentos automáticos

Se admite en los siguientes sistemas operativos:

En este documento, se explica por qué, a veces, las acciones automatizadas de las guías pueden fallar debido a problemas temporales, como interrupciones de la red o límites de frecuencia de la API. Para asegurarte de que tus guiones sean más resistentes, puedes configurar acciones individuales para que se reintenten automáticamente si se producen errores de este tipo.

Los reintentos de acciones ayudan a tus cuadernos de estrategias a recuperarse de fallas temporales, como problemas de red, límites de frecuencia de la API o falta de disponibilidad del servicio. Estos reintentos se aplican a las acciones estándar de la guía, como el enriquecimiento, la contención o las notificaciones.

El mecanismo de reintento se activa según el estado de ejecución interno de la acción, no según los códigos de error HTTP estándar. No se intentan reintentos para las acciones que agotan el tiempo de espera o las acciones que se usan para el control de flujo (como las condiciones o los bloques de la guía), ya que no están diseñadas para fallar de la misma manera.

Condiciones del mecanismo de reintento de acciones

El mecanismo de reintento se activa solo cuando una acción falla en condiciones específicas que suelen indicar una falla transitoria, de infraestructura o no controlada. No se activa para las fallas relacionadas con los tiempos de espera o las acciones de control de flujo.

Condiciones que activan un reintento

El mecanismo de reintento se activa solo cuando la acción falla en las siguientes circunstancias:

  • Errores de secuencia de comandos no controlados: Cualquier error o excepción que se produzca dentro de la secuencia de comandos de Python de la acción que no controles de forma explícita en tu secuencia de comandos.
  • Estado de falla explícito: La secuencia de comandos de acción devuelve de forma explícita el estado de ejecución EXECUTION_STATE_FAILED al servidor.
  • Fallas de infraestructura: Son fallas que provienen de la infraestructura subyacente, como problemas de conexión (por ejemplo, errores de conexión de Python) que impiden un resultado exitoso.

Condiciones que omiten un reintento (no se intentó reintentar)

Se omiten los reintentos en situaciones de error relacionadas con tiempos de espera o acciones de control de flujo:

  • Tiempo de espera de ejecución de la guía: La acción no se completa ni devuelve un resultado dentro del límite de tiempo de espera general configurado para el paso específico de la guía.
  • Estado de tiempo de espera controlado: La secuencia de comandos de acción informa de forma explícita un tiempo de espera de acción interno devolviendo el estado EXECUTION_STATE_TIMEOUT. El servidor trata esto como un "Tiempo de espera controlado", lo que permite que la ejecución de la guía continúe sin un reintento.

Configura reintentos de acciones

Para configurar reintentos para una acción, sigue estos pasos:

  1. Haz doble clic en la acción correspondiente en el diseñador de la guía.
  2. En la barra lateral, haz clic en la pestaña Configuración y, luego, en el botón de activación Reintentar en caso de falla para activarlo.
  3. Especifica los siguientes parámetros:
    • Cantidad de reintentos: Ingresa cuántas veces se debe intentar volver a ejecutar la acción si falla.
    • Retraso entre reintentos: Define el retraso en segundos, minutos o horas entre cada intento de reintento.
  4. En la sección Si falla el paso, selecciona una de las siguientes opciones si la acción finalmente falla después de todos los intentos de reintento:
    • Detener la guía: Se detiene la ejecución de la guía.
    • Omitir paso: La guía continúa con el siguiente paso.
  5. Haz clic en Guardar.

Cómo aparecen los reintentos durante la ejecución de la guía

Cuando se ejecuta un paso de la guía con reintentos, verás mensajes y estados específicos que indican el progreso de los intentos de reintento:

  • Si una acción falla y se configuraron reintentos, su estado en la pestaña Guías cambiará temporalmente a A la espera del próximo reintento antes del próximo intento.
  • Si la acción se realiza correctamente después de uno o más reintentos, su estado final en la pestaña Playbooks indica que se completó correctamente, junto con la cantidad de reintentos (por ejemplo, Completado después de dos reintentos).
  • Si la acción falla después de todos los intentos de reintento, su estado final indica una falla, junto con la cantidad de reintentos (por ejemplo, Falló después de 3 reintentos).
  • En el Muro de casos, también aparece información relevante sobre los intentos de reintento.

¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.