Lógica del workflow (UI) / proceso (generic)
Este producto no es compatible con el
sitio Datadog seleccionado. (
).
Utiliza Acciones lógicas para añadir una lógica de control a tu workflow (UI) / proceso (generic). Por ejemplo, puedes ramificar a partir de una condición, realizar una acción de forma iterativa, incluir un intervalo de inactividad, etc.
Condición if
Puedes ramificar la ruta de ejecución de tu workflow (UI) / proceso (generic) en función de la evaluación de una o más sentencias que definas. En la siguiente captura de pantalla, una acción de If condition (condición if) determina el siguiente step (UI) / paso (generic) en el workflow (UI) / proceso (generic) según si el código de estado de una acción de solicitud HTTP anterior devuelve 200.
Sentencia switch
Utiliza la acción de sentencia Switch para manejar múltiples rutas de ramificación en un solo step (UI) / paso (generic). Especifica una expresión de conmutación y compárala con uno o varios valores de case (incidencia). Si no coincide ningún case (incidencia), se ejecuta una rama predeterminada en su lugar. En el siguiente ejemplo, una sentencia Switch enruta el workflow (UI) / proceso (generic) según si el código de estado de una solicitud HTTP anterior es 200, 403, 404, 500 u otro valor.
Inactividad
La acción Sleep (Inactividad) detiene la ejecución del workflow (UI) / proceso (generic) durante un tiempo especificado. Selecciona una duración predefinida en el menú desplegable Duration (Duración) o introduce una variable personalizada en segundos.
Bucle For
La acción de For loop (bucle For) permite ejecutar un conjunto de acciones de forma iterativa para cada elemento de una lista de entrada dada. Los bucles for aceptan una lista de entrada de hasta 2000 elementos. Puedes realizar muchas operaciones diferentes en un bucle for, incluida la configuración de rutas de error y la actualización de variables.
En el ejemplo siguiente, un bucle for itera una lista de incidents (incidentes) y envía un mensaje Slack para cualquier incident (incidente) que tenga más de una semana de antigüedad.
Para añadir un bucle for a tu workflow (UI) / proceso (generic):
- Haz clic en el icono más (+) del lienzo del workflow (UI) / proceso (generic) para abrir el catálogo de acciones.
- Busca y selecciona el step (UI) / paso (generic) For loop (bucle for).
- Haz clic en el step (UI) / paso (generic) de bucle e introduce una Input list (Lista de entradas) para que el step (UI) / paso (generic) la itere. Puedes introducir una lista personalizada o utilizar un workflow (UI) / proceso (generic) variable.
- En el marco del bucle, haz clic en el icono (+) para añadir un step (UI) / paso (generic) al bucle.
- Configura la acción del bucle. Para acceder al valor actual de la lista de entrada, utiliza la variable
{{Current.Value}}. Para acceder al índice del valor actual, utiliza {{Current.Index}}. - Añade y configura cualquier step (UI) / paso (generic) adicional que necesites para el bucle. Puedes utilizar una if statement (sentencia if) y una break (pausa) para salir del bucle antes de tiempo.
- Guarda y Publica el workflow (UI) / proceso (generic).
Cuando finaliza una ejecución, el workflow (UI) / proceso (generic) entra en el modo Debug (Depurar). Selecciona un step (UI) / paso (generic) en el bucle para ver una lista de All (Todas), Failed (Fallidas) o iteraciones Succesful (Con éxito) para ese step (UI) / paso (generic). Selecciona una iteración para ver el resultado o el mensaje de error.
Bucle while
La acción de While loop (Bucle While) te permite ejecutar un conjunto de acciones de forma iterativa en función de un conjunto de condiciones y se recomienda para patrones de automatización en los que el número de repeticiones no se conoce de antemano. Los bucles while ejecutan un máximo de 2000 iteraciones. Puedes realizar diferentes operaciones con un bucle while, incluidas paginación, sondeo de progreso y reintento hasta el éxito.
El siguiente ejemplo utiliza un bucle while para paginar la API AWS S3 List Buckets para una aplicación.
Para añadir un bucle while a tu workflow (UI) / proceso (generic):
- Haz clic en el icono más (+) del lienzo del workflow (UI) / proceso (generic) para abrir el catálogo de acciones.
- Busca y selecciona el step (UI) / paso (generic) While loop (Bucle While).
- Haz clic en el step (UI) / paso (generic) de bucle y define la condición que el bucle While evaluará antes de cada iteración. El bucle continúa si la condición es true y se detiene cuando se evalúa como false.
- En el marco del bucle, haz clic en el icono más (+) para añadir un step (UI) / paso (generic) al bucle.
- Configura la acción de bucle. Para acceder al índice del valor actual, utiliza
{{Current.Index}}. - Añade y configura cualquier step (UI) / paso (generic) adicional que necesites para el bucle. Puedes utilizar una if statement (sentencia if) y una acción break (pausa) para salir del bucle antes de tiempo.
- Guarda y Publica el workflow (UI) / proceso (generic).
Cuando finaliza una ejecución, el workflow (UI) / proceso (generic) entra en el modo Debug (Depurar). Selecciona un step (UI) / paso (generic) en el bucle para ver una lista de All (Todas), Failed (Fallidas) o iteraciones Successful (con éxito) para ese step (UI) / paso (generic). Selecciona una iteración para ver el resultado o el mensaje de error. Selecciona el step (UI) / paso (generic) del bucle While y un índice específico para ver la condición evaluada en el índice.
Referencias adicionales
Más enlaces, artículos y documentación útiles:
¿Tienes preguntas o comentarios? Únete al canal #workflows en Datadog Community Slack.