Orquestador Rocketbot : Procesos

¿Qué es un proceso?

Un proceso es donde se configurará el robot y la automatización.

¿Cómo se crea o se asigna un proceso?

Para crear un proceso sigue el paso a paso del siguiente documento: Creación de tu primer proceso.

Una vez el proceso este creado, al ingresar al mismo encontraremos lo siguiente :

Interfaz

Process

Aquí se puede definir el nombre y la descripción, y cuenta con el token, el cual se puede copiar con acceso rápido. En la parte inferior encontramos los botones para borrar proceso, editar y cerrar.

Robot

Aquí se debe asignar el nombre para identificar al robot dentro del orquestador. En Start robot name se debe asignar el nombre del robot a ejecutar, que debe coincidir exactamente con el de la base de datos; de lo contrario, no se encontrará el robot a automatizar. 

También es necesario asignarle la base de datos del robot.

Backup Instance 

Aquí podemos seleccionar una instancia de respaldo, en caso de que la principal se caiga, y los minutos a partir de los cuales deberá activarse si la principal no se reconecta.

Alerts

En esta sección, se puede configurar una notificación ante una desconexión de la instancia principal. Aquí se deben poner los correos electrónicos donde se enviarán las alertas y los minutos posteriores a la eventualidad (sin que haya reconexión) en los que se disparará la alerta. 

Cronjobs

En esta sección se podrán ver las ejecuciones programadas para cada proceso y configurar nuevas realizando click en [ Create Cron ].

Para mayor detalle, puede revisar el siguiente documento: Trabajar con Cronjobs

Launch Bot (trigger)

Esta opción permite seleccionar otro proceso para que inicie, o se dispare, cuando finalice el proceso que se esta configurando.

Xperience

Esta opción permite seleccionar un formulario Xperience para que lance la ejecución del proceso cuando se envíe dicho formulario, ya sea de manera manual o mediante API.

Data Load

Aquí encontraremos las tareas y transacciones asignadas al proceso, utilizando el módulo Orchestrator Framework desde otro robot, y su estado actual.

Si necesita mas informacion sobre Data Load puede revisar el siguiente documento :

Orquestador Rocketbot : Data Load

Asignar una instancia

Para agregar una o mas instancias donde ejecutar tu proceso sigue el paso a paso del siguiente documento: Agregar Instancia.

¿Cómo paralelizar?

Cuando hablamos de paralelizar debemos distinguir 2 escenarios:

  1. Paralelizar un mismo proceso en diferentes instancias
  2. Paralelizar diferentes procesos en una misma instancia

El robot de un proceso se puede ejecutar en múltiples instancias, el orquestador enviará la señal de ejecución a todas las instancias asignadas y conectadas al proceso (Salvo las de backup). Así mismo una misma instancia puede estar asignada a múltiples procesos y en la misma ejecutar el robot de cada uno de ellos, en momentos diferentes o al mismo tiempo, según el proceso lo permita o no (LINK). A su vez, cabe mencionar que no se puede ejecutar un robot varias veces al mismo tiempo en una instancia.

Para saber mas acerca de que procesos pueden paralelizarse:

Queues de un proceso

Las queues que figuran en el dashboard de procesos representan ejecuciones pendientes del mismo que se generan cuando un proceso diferente ha disparado al que contiene estas colas. Las colas o queues del proceso se generan cuando el mismo no tiene una instancia disponible para ejecutar el robot al momento en que el se produjo el “disparo”. 

En otras palabras, sólo se producen cuando un proceso tiene configurado un trigger a otro, al finalizar el primero, se ejecuta el trigger y este aguarda a tener una instancia disponible.




Orquestador Rocketbot : Trabajar con cronjobs

¿Qué es un cronjob?

El cronjob de un proceso es una o más reglas que determinan la fecha, hora y periodicidad de ejecución del mismo.

¿Cómo crearlo?

Al ingresar al proceso en el orquestador, encontraremos la sección de cronjobs ubicada en el menú superior.

Cronjobs: 

En esta sección se encontrará un tablero con el listado de cronjobs definidos para el proceso y, en la esquina inferior derecha, estará el botón para crear nuevos.

Crear Cronjob:

Opciones básicas: 

  • Date: Fecha de implementación
  • Time: Hora de ejecución
  • Timezone: Zona horaria del ambiente de ejecución
  • Repeat at: Periodicidad de ejecución
  • Instance: Instancia asignada de las disponibles en el proceso
  • Enabled: Opción que determina si el cronjob esta habilitado o no

Opciones avanzadas:

Estas opciones nos permiten definir más específicamente:

  • Cada cuanto repetir el proceso (Una vez, diariamente, semanalmente, mensualmente). A su vez, es se podra especificar en detalle cuando, por ejemplo, al seleccionar semanalmente se puede seleccionar los días de la semana en los que se deberá ejecutar.
  • Durante cuánto tiempo, permite definir una fecha de expiración de la regla.
  • Con que frecuencia se ejecutará, por ejemplo, ejecutar cada una hora durante 12 horas.

¿Cómo funciona un Cronjob?

Cuando llega la fecha y hora configurada en un cronjob, el orquestador comprueba si existen instancias disponibles para ejecutar el proceso. En caso afirmativo, ejecutará el robot del proceso en todas las que estén disponibles, de las asignadas a dicho proceso.

IMPORTANTE: Si no hay instancias disponibles al momento de ejecución del Cronjob, el orquestador repetirá la comprobación cuando vuelva a coincidir el día y hora, es decir, se omite.

Opciones Cronologicas de un Cronjob

Frecuencia de ejecución del proceso:

Únicamente: El cronjob se ejecuta una sola vez en la fecha y hora definidas, y no se vuelve a ejecutar.

Diariamente: Se puede configurar para repetirse cada “X” días.

Semanalmente: Se puede configurar para repetirse cada “X” semanas. Además, permite seleccionar los días de la semana en los que se desea que se ejecute el robot.

Mensualmente: Se puede configurar para ejecutarse en uno o varios meses específicos, con dos tipos de configuraciones:

  • Días específicos del mes: Por ejemplo, el 1 de enero, el 3 de marzo, etc.

  • Semanas específicas del mes: Permite elegir en qué semana o semanas del mes se ejecutará el robot, y además seleccionar los días de la semana para esa ejecución. Por ejemplo, que se ejecute los lunes y miércoles de la primera y tercera semana de enero y marzo.

Fecha de expiración del cronjob

Esta opción permite definir una fecha y hora en la que el cronjob dejará de ejecutarse y, por lo tanto, el robot dejará de activarse.

Bucle

Permite asignar un bucle para que el cronjob active el robot cada “X” tiempo y lo haga durante un periodo de “Y” tiempo.
Ejemplo: Que el robot se ejecute cada 1 hora durante un día completo.




Orquestador Rocketbot : Como crear mi primer proceso

Paso 1: Proyecto

Un proyecto es una carpeta donde estarán los procesos automatizados. Su función es ordenar y agrupar los procesos.

Crear proyecto

El primer paso que se debe realizar es crear un proyecto o seleccionar uno existente, al cual se le asignara el nuevo proceso. En el dashboard de inicio podrá ver los proyectos existentes para seleccionar.
Si desea crear uno nuevo haga click en el botón [ Add Project ] ubicado abajo a la derecha.

Asigne un nombre al proyecto que contendrá sus procesos. por ej: “QA”, “Produccion”, “DEV”, etc.
Una vez creado, ábralo desde el la lista de proyectos para poder agregar procesos al mismo.

Paso 2: Proceso y Robot

Un proceso es donde se subirá y configurará el robot, triggers y demás puntos correspondientes a la automatización.

Para subir un robot, se debe crear o seleccionar un proceso existente.

Crear proceso

Para crear un proceso debe hacer click en el botón [ Add Process ] ubicado abajo a la derecha.
Al nuevo proceso, se le debe ingresar:

  • Nombre de proceso
  • Nombre del robot principal o robot Padre que inicia el proceso
  • Ruta del archivo exportado a producción desde Rocketbot Studio (extensión .db)

Una vez creado, se puede seleccionar desde la lista de procesos para realizar las configuraciones siguientes.

Paso 3: Instancia donde corre el robot

En caso de querer asignar una nueva instancia al proceso, primero debemos agregarla y luego vincularla, por defecto no estará conectada.

¿Cómo vincular/crear instancia y conectarla?