Orchestrator
2022.10
False
Imagen de fondo del banner
Guía del usuario de Orchestrator
Última actualización 19 de abr. de 2024

Sobre desencadenadores

Desencadenadores le permite ejecutar trabajos de forma planificada, a intervalos regulares (desencadenadores de tiempo) o siempre que se añadan nuevos elementos a sus colas (desencadenadores de cola). La página Desencadenadores te permite crear nuevos desencadenadores, gestionar los existentes y ejecutar instantáneamente un trabajo con cualquier desencadenador existente.

Importante:

Zonas horarias del desencadenador:

La zona horaria establecida en un desencadenador no está restringida por la zona horaria del tenant. Sin embargo, si utilizas calendarios de días no laborables, no podrás establecer diferentes zonas horarias.

Los desencadenadores por tiempo se inician según la zona horaria definida en el nivel de desencadenador. Los desencadenadores de cola se inician según el procesamiento de los elementos de cola.

Tanto los desencadenadores de tiempo como los de cola se deshabilitan según la zona horaria del desencadenador.

Importante:

Deshabilitación de desencadenador:

Por defecto, los desencadenadores se desactivan automáticamente después de 10 lanzamientos fallidos si no se han lanzado con éxito en el último día.

Este valor se puede personalizar mediante el parámetro Triggers.DisableWhenFailedCount.

Desencadenadores de tiempo

Te permite programar una hora recurrente para iniciar un trabajo.

Una vez que agregas un desencadenador de tiempo para un proceso, puedes esperar lo siguiente:

  1. El desencadenador crea un trabajo a la hora programada, con las opciones de asignación, cuenta y máquina que elijas. Esto no equivale a la ejecución real del trabajo.
  2. El trabajo creado en el paso 1 se ejecuta una vez que un robot está disponible. De forma predeterminada, si el desencadenador ya tiene un trabajo pendiente, no se crean nuevos trabajos hasta que se ejecute el primero.
    • El número de trabajos pendientes que puede crear el desencadenador está controlado por el parámetro Triggers.JobsCountStrategy.

Los valores de entrada para los procesos que admiten los parámetros de entrada y salida también pueden gestionarse en este nivel.

Objetivo de ejecución

Puedes configurar varias reglas en función de las cuales se ejecutan los procesos asociados.

 

Descripción

Asignación dinámica

Asignar dinámicamente

Define cuántas veces se debe ejecutar un proceso en función del desencadenador proporcionado. Esta opción te permite utilizar tus recursos al máximo. En cuanto un UiPath Robot se vuelve Disponible, ejecuta el proceso indicado según el desencadenador proporcionado.

 

Cuenta

El proceso se ejecuta bajo una cuenta específica. Si se especifica solo la cuenta, Orchestrator asigna la máquina de forma dinámica. Especificar tanto la cuenta como la plantilla de máquina significa que el trabajo se lanza en ese mismo par cuenta-máquina.

 

Máquina

El proceso se ejecuta en una de las máquinas del host asociadas a la plantilla de máquina seleccionada. Si se especifica solo la plantilla de máquina, Orchestrator asigna la cuenta dinámicamente. Especificar tanto la cuenta como la plantilla de máquina significa que el trabajo se lanza en ese mismo par cuenta-máquina.

Nota: asegúrate de que las licencias de runtime necesarias para ejecutar el trabajo están asignadas a la plantilla de máquina asociada.
 

NombreDelHost

Después de seleccionar una plantilla de máquina, se muestra la opción nombre de host, que permite seleccionar la estación de trabajo/sesión de robot deseada para ejecutar el proceso.

Se muestran todas las sesiones disponibles en la carpeta activa, ya sean desconectadas, no conectadas o conectadas.

Nota: solo se pueden utilizar runtime unattended para configurar la asignación. Asegúrate de que las licencias de tiempo de ejecución necesarias para ejecutar el trabajo están asignadas a la plantilla de máquina asociada.

Selecciona una asignación de cuenta-máquina válida

El proceso puede ejecutarse en varios pares específicos de máquina-cuenta.

Nota:
  • Si se selecciona un nombre de host que no está activo (es decir, con el estado Sin respuesta o Desconectado), aparece una advertencia.

  • Las cuentas que forman parte de las asignaciones que se usan en los desencadenadores no pueden eliminarse o desasignarse de la carpeta en la que reside el desencadenador. Para poder eliminarla, asegúrate de que la cuenta no esté establecida como destino de ejecución en un desencadenador.

Nota: si se selecciona un nombre de host que no está activo (es decir, con el estado Sin respuesta o Desconectado), aparece una advertencia. Los trabajos programados para la sesión inactiva permanecen en estado Pendiente hasta que se realice la conexión correspondiente a Orchestrator.
  • Para confirmar la selección del nombre de host inactivo, haz clic en Confirmar.

  • Para volver a seleccionar otro nombre de host, haz clic en Cancelar.

Si se configura el mismo desencadenador con la misma asignación cuenta-máquina, pero con la selección adicional de nombre de host, se duplica el número de trabajos que se van a ejecutar.
  • Por ejemplo, supongamos que has configurado un desencadenador T1 con la cuenta A1 asignada a la plantilla de máquina MT1. En esta configuración se ponen en cola diez trabajos.

    Más adelante, se configura el mismo desencadenador T1 con la cuenta A1 asignada a la plantilla de máquina MT1, aunque ahora también se selecciona un nombre de host H1. En este caso se vuelven a poner en cola los diez mismos trabajos, ya que Orchestrator interpreta la configuración como nueva.

Nota: Si la conexión a la base de datos SQL se pierde por cualquier motivo, los desencadenadores que se suponía que se habían establecido en ese momento se activan de forma incorrecta y se genera una alerta con el nivel de Error.

Escenarios de trabajos en cola

  1. Si configuras varios desencadenadores en el mismo Robot y su tiempo de ejecución se superpone al menos una vez, los trabajos se pondrán en cola, en estado pendiente. El robot ejecuta los trabajos en cola en orden cronológico.
  2. Si el mismo proceso se programa en el mismo Robot varias veces y su tiempo de ejecución se superpone, solo se pone en cola un proceso, en estado pendiente. Por ejemplo, si el proceso A del robot X está programado para ejecutarse a las 11:20, 11:21 y 11:25, el comportamiento es el siguiente:

    • a las 11:20 se ejecuta el primer proceso.
    • Si la primera ejecución finaliza antes del segundo desencadenador:

      • El segundo desencadenador se procesa.

        • Si esta ejecución finaliza antes del desencadenador 11:25, el último también se ejecutará.
        • Si la ejecución del desencadenador 11:21 no concluye antes del 11:25, este último se añade a una cola, en estado pendiente.
    • Si la primera ejecución no finaliza antes del segundo desencadenador:
      • El desencadenador 11:21 se pone en cola, en estado pendiente.

        • Si la ejecución del desencadenador 11:21 finaliza antes del 11:25, este último también se ejecutará.
        • Si la ejecución del desencadenador 11:21 se inicia pero no termina antes del 11:25, el último desencadenador se pone en cola, en estado pendiente.
        • Si el desencadenador 11:21 aún está pendiente cuando el 11:25 uno debería iniciarse, este último ya no se ejecuta o se añade a una cola y se mostrará el siguiente mensaje: Los robots ya tienen trabajos pendientes para este proceso.
  3. Si quieres ejecutar un proceso varias veces en cualquier Robot que esté disponible, puedes marcar la opción Asignar dinámicamente en la pestaña Ejecutar destino. Los trabajos se ponen en cola (en estado pendiente) en el entorno correspondiente y cada vez que un robot está disponible, se ejecuta el primer trabajo de la cola. De esta manera, nunca habrá un robot disponible mientras haya trabajos pendientes.

    Pongamos que quieres ejecutar un proceso 7 veces. En cuanto se desencadene tu desencadenador, se agregarán 7 trabajos pendientes a la carga de trabajo del entorno, sin asignarlos a ningún robot específico. Hay varias situaciones posibles:

    • Hay al menos 7 Robots disponibles en el momento de la activación: a un Robot se le asigna un trabajo de manera que todos los trabajos se ejecutan de una sola vez.
    • Si hay menos de 7 Robots disponibles a la hora de la activación, digamos 4, a cada uno de los 4 Robots se le asigna un trabajo. Si un nuevo Robot o uno de los 4 queda disponible, entonces se hace cargo de otro trabajo de los 3 restantes. Esto ocurre con cada Robot disponible hasta que no queden trabajos.
  4. Si dos o más desencadenadores ejecutan el mismo proceso, cada uno durante un número diferente de veces, en el siguiente desencadenador, el número máximo de trabajos entre ellos se añade a la carga de trabajo del entorno; no se acumulan. imagina la siguiente situación: el desencadenador A ejecuta un proceso 13 veces y el desencadenador B la ejecuta 20 veces. Puede que se den los siguientes escenarios:

    • A y B se activan simultáneamente: 20 trabajos (el máximo entre 13 y 20) están en cola en la carga de trabajo del entorno.
    • B se activa primero: 20 trabajos están en cola.

      • Si entre el momento de activación de B y el momento de activación de A se han ejecutado 7 o más trabajos, digamos 9 (quedan 11 trabajos pendientes), entonces se ponen en cola 13 trabajos (el máximo entre 11 y 13) en la carga de trabajo del entorno.
      • Si entre el momento de activación de B y el momento de activación de A, se han ejecutado menos de 7 trabajos, digamos 5 (15 trabajos pendientes), entonces no se ponen en cola más trabajos porque ya hay más de 13 trabajos pendientes. Además, se muestra el siguiente mensaje: Los Robots ya tienen trabajos pendientes para este proceso.
    • A se activa primero: 13 trabajos están en cola

      • Cada vez que B se activa durante la ejecución de A, se añade hasta 20 trabajos al entorno, dependiendo de cuántos trabajos de A estén en curso o se hayan ejecutado. Digamos que se han ejecutado 6 trabajos. Cuando B se activa, se añaden 14 trabajos, de forma que se alcanza el máximo de 20.
  5. Si un desencadenador ejecuta el mismo proceso varias veces, los trabajos en cola relacionados quedan limitados al número de ejecuciones especificadas al definir el desencadenador en la pestaña Ejecutar objetivo. No se acumularán con cada lanzamiento del desencadenador.

    Pongamos que quieres ejecutar el mismo proceso 10 veces cada 30 minutos. La primera vez que se inicia tu desencadenador, se pondrán en cola 10 trabajos. Si entre los desencadenadores se han ejecutado menos de 10 trabajos (digamos 4), en el momento en que se ejecute el siguiente desencadenador solo se ponen en cola 6 nuevos trabajos, ya que el número de trabajos pendientes para ese proceso puede ser de un máximo de 10.

Desencadenadores de colas

Puede iniciar instantáneamente un proceso tras la creación del desencadenador o cada vez que añadas un nuevo elemento a una cola. El desencadenador se ejecuta en el ambiente asociado al proceso seleccionado.

Importante: La implementación de desencadenadores de cola está optimizada para los procesos de consumo que tienen un bucle interno destinado a procesar todos los artículos en cola disponibles antes de salir. Si un proceso no aplica esta estrategia, la experiencia resultante no será óptima y podría no cumplir los requisitos empresariales deseados.

Hay tres opciones que te ayudan a parametrizar las reglas para la activación del proceso:

 

Descripción

Número mínimo de elementos para desencadenar el primer trabajo

La tarea de procesamiento de elementos se inicia después de que la cola específica tenga este número de elementos nuevos.

Los elementos diferidos de la cola no se cuentan.

Número máximo de trabajos en ejecución y pendientes permitidos de forma simultánea

El número máximo de tareas pendientes y en ejecución, conjuntas.

Para que se permita la ejecución simultánea de dos o más trabajos, deberás definir la tercera opción tal y como se describe a continuación.

Se desencadena otro trabajo para cada ____ nuevo/s elemento/s.

Se desencadenará un nuevo trabajo para cada número de elementos nuevos además del número de elementos definidos para la primera opción.

Solo habilitado si hay 2 o más trabajos simultáneos permitidos (definidos utilizando la opción descrita anteriormente).

Para gestionar los elementos de la cola que no pueden procesarse en el momento en que se ponen en cola, incluidos los elementos reintentados, una vez cada 30 minutos se realiza por defecto una comprobación de los elementos no procesados y, si se cumple la condición de activación, se lanza de nuevo el desencadenador. Esta comprobación garantiza que todos los elementos en la cola se procesen en las siguientes situaciones:

  • Los elementos en cola se añaden a la cola mucho más rápido de lo que se pueden procesar con los recursos disponibles.
  • Los elementos en cola se añaden a una cola durante días no laborables, pero solo se pueden procesar durante horas de trabajo.
  • El procesamiento de elementos en cola se pospone a un período de tiempo posterior. Después de que haya pasado ese tiempo, estarán listos para ser procesados una vez hayan sido identificados por la comprobación de 30 minutos.

    Nota: Debido a la comprobación por defecto de 30 minutos, existe el riesgo de que se obstruyan los recursos durante las horas no laborables. Para evitarlo, asegúrate de que no hay elementos sin procesar al final de la jornada laboral. En caso de que no sea posible, asegúrate de que el proceso desencadenado no requiera la intervención humana.
    Nota: ten en cuenta que puedes utilizar el parámetro Queue.ProcessActivationSchedule para ajustar el intervalo de comprobación predeterminado de 30 minutos.

Ejemplo

Tengo dos trabajos:

  • Uno que añade 3 elementos por segundo durante 20 segundos a la cola de destino (60 elementos en total).
  • Uno que procesa 1 elemento por segundo de la cola destinada.

He definido mi desencadenador del siguiente modo:

  • Número mínimo de elementos para desencadenar el primer trabajo:31.
  • Número máximo de trabajos en ejecución y pendientes permitidos de forma simultánea:3.
  • Se desencadena otro trabajo para cada 10nuevo elemento.

Inicia el trabajo que añade elementos a mi cola.

  1. Después de 11 segundos (33 elementos) se desencadena el primer trabajo de procesamiento de elementos.
  2. Después de otros 4 segundos (12 elementos) se desencadena el segundo trabajo de procesamiento de elementos.
  3. Después de otros 4 segundos (12 elementos) se desencadena el tercer trabajo de procesamiento de elementos.

Cuando terminó la adición de elementos de la cola, el primer trabajo había procesado 9 elementos, el segundo 5 elementos y el tercero 1 elemento. Es decir, 15 elementos en 20 segundos procesados por tres trabajos.

Eso significa que quedan 45 elementos por procesar (60-15). Con 3 trabajos, cada uno procesando 1 elemento por segundo, serían 15 segundos para procesar el resto.

Un total de 35 segundos.

Objetivo de ejecución

Puedes configurar varias reglas en función de las cuales se ejecutan los procesos asociados.

Descripción

 

Cuenta

El proceso se ejecuta bajo una cuenta específica. Si se especifica solo la cuenta, Orchestrator asigna la máquina de forma dinámica. Especificar tanto la cuenta como la plantilla de máquina significa que el trabajo se lanza en ese mismo par cuenta-máquina.

Máquina

El proceso se ejecuta en una de las máquinas del host asociadas a la plantilla de máquina seleccionada. Si se especifica solo la plantilla de máquina, Orchestrator asigna la cuenta dinámicamente. Especificar tanto la cuenta como la plantilla de máquina significa que el trabajo se lanza en ese mismo par cuenta-máquina.

Nota: asegúrate de que las licencias de runtime necesarias para ejecutar el trabajo están asignadas a la plantilla de máquina asociada.

NombreDelHost

NombreDelHost

Después de seleccionar una plantilla de máquina, se muestra la opción nombre de host, que permite seleccionar la estación de trabajo/sesión de robot deseada para ejecutar el proceso.

Se muestran todas las sesiones disponibles en la carpeta activa, ya sean desconectadas, no conectadas o conectadas.

Nota: asegúrate de que las licencias de runtime necesarias para ejecutar el trabajo están asignadas a la plantilla de máquina asociada.

Estrategias de conteo de trabajos

El parámetro Triggers.JobsCountStrategy te permite elegir la estrategia para el lanzamiento de trabajos mediante desencadenadores. Las siguientes opciones están disponibles:

  • PerProcess: un desencadenador inicia el número de trabajos requerido teniendo en cuenta cualquier trabajo pendiente del proceso especificado. Por ejemplo, dos desencadenadores definidos para el mismo proceso inician 3 y 5 trabajos respectivamente. Si el primer desencadenador inicia 3 trabajos en un momento dado, cuando se activa el segundo desencadenador se lanzan 2 trabajos para llegar a los 5 trabajos necesarios.
  • PerTrigger: un desencadenador inicia el número de trabajos requerido teniendo en cuenta cualquier trabajo existente iniciado previamente por ese mismo desencadenador. Por ejemplo, se define un desencadenador para iniciar 9 trabajos en un momento dado. Si se han completado 2 trabajos correctamente en el momento en que se desactiva este desencadenador de nuevo, Orchestrator inicia otros 2 trabajos para llegar a los 9 trabajos necesarios.
  • NoLimit: el desencadenador inicia el número de trabajos requerido independientemente de cualquier trabajo existente y pendiente. Por ejemplo, se define un desencadenador para iniciar 5 trabajos en un momento dado. La segunda vez que se desactiva el desencadenador, se inician otros 5 trabajos.

Días no laborables

Si lo deseas, podrás definir varias listas de días no laborables, por inquilinos, con su propio conjunto de fechas en las que no quieras que los desencadenadores se ejecuten. Esto significa que, los días de fiesta, fines de semana o cualquier otro día en que no se lleven a cabo las actividades comerciales ordinarias, los desencadenadores a largo plazo que tengas activados podrán configurarse para que no se ejecuten. Puedes definir o cargar esos calendarios en la pestaña Días no laborables en la página Configuración. De forma predeterminada, los calendarios están preconfigurados con los Días festivos, para que establecer los días no laborales te sea más fácil. Una vez los días no laborales establecidos en el calendario terminen, los desencadenadores se ejecutarán según lo habitual.

Para aplicar una restricción a tus desencadenadores, debes seleccionar el calendario que prefieres del menú Restricciones de días no laborables al crear un nuevo desencadenador o modificando uno existente. Puedes seleccionar un único calendario para un desencadenador. Ten en cuenta que editar un calendario en la pestaña Días no laborables también afecta a los desencadenadores que ya tengan ese calendario seleccionado en el menú restricciones de Días no laborables.

Nota: cuando usas días no laborables, la zona horaria del desencadenador debe ser la misma que la del tenant (Tenant > Configuración > General), porque las restricciones de calendario no se pueden aplicar en zonas horarias diferentes. Si un tenant no tiene definida una zona horaria explícita, la hereda del host.

Añadir y eliminar días no laborables se auditará en el ámbito de tenant.

Was this page helpful?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Logotipo blanco de UiPath
Confianza y seguridad
© 2005-2024 UiPath. All rights reserved.