Invocación de una función de Lambda según una programación - AWS Lambda

Invocación de una función de Lambda según una programación

El Programador de Amazon EventBridge es un programador sin servidor que le permite crear, ejecutar y administrar tareas desde un servicio administrado y centralizado. Con el Programador de EventBridge, puede crear programadores mediante expresiones cron y rate para patrones recurrentes, o configurar invocaciones únicas. Puede configurar intervalos de tiempo flexibles para la entrega, definir límites de reintentos y establecer el tiempo máximo de retención para los eventos sin procesar.

Al configurar el Programador de EventBridge con Lambda, el Programador de EventBridge invoca la función de Lambda de forma asíncrona. En esta página, se explica cómo utilizar el Programador de EventBridge para invocar una función de Lambda según una programación.

Configurar el rol de ejecución

Al crear una programación nueva, el Programador de EventBridge debe tener permiso para invocar la operación de la API de destino en su nombre. Estos permisos se conceden al Programador de EventBridge mediante un rol de ejecución. La política de permisos que adjunta a la función de ejecución de su programación define los permisos necesarios. Estos permisos dependen de la API de destino que quiera que invoque el Programador de EventBridge.

Al utilizar la consola del Programador de EventBridge para crear una programación, como en el siguiente procedimiento, el Programador de EventBridge configura de forma automática un rol de ejecución en función del destino seleccionado. Si desea crear una programación con uno de los SDK del Programador de EventBridge, la AWS CLI o AWS CloudFormation, debe tener un rol de ejecución existente que conceda los permisos que el Programador de EventBridge requiere para invocar un destino. A fin de obtener más información sobre cómo configurar de forma manual un rol de ejecución para su programación, consulte Setting up the execution role en EventBridge Scheduler User Guide.

Crear una programación

Para crear una programación con la consola, realice lo siguiente:
  1. Abra la consola del Programador de Amazon EventBridge enhttps://console.aws.amazon.com/scheduler/home.

  2. En la página de Programaciones, elija Crear programación.

  3. En la página de Especificar los detalles de la programación, en la sección de Nombre y descripción de la programación, realice lo siguiente:

    1. En Nombre de la programación, escriba un nombre para la programación. Por ejemplo, MyTestSchedule.

    2. (Opcional) En Descripción, escriba una descripción para su programación. Por ejemplo, My first schedule.

    3. En Grupo de programaciones, elija un grupo de programaciones de la lista desplegable. Si no tiene un grupo, elija predeterminado. Para crear un grupo de programaciones, elija crear mi propia programación.

      Los grupos de programaciones se utilizan para agregar etiquetas a grupos de programaciones.

    1. Elija sus opciones de programación.

      Ocurrencia Haga lo siguiente...

      Programación única

      Una programación única invoca solo una vez un objetivo en la fecha y hora que especifique.

      En Fecha y hora, realice lo siguiente:

      • Ingrese una fecha válida en el formato YYYY/MM/DD.

      • Ingrese una marca de tiempo en el formato hh:mm de 24 horas.

      • En Zona horaria, elija la zona horaria.

      Programación recurrente

      Una programación recurrente invoca un objetivo a una velocidad que especifique mediante una expresión cron o rate.

      1. En Tipo de programación, realice una de las siguientes acciones:

        • Para utilizar una expresión Cron para definir la programación, elija Programación basada en Cron e ingrese la expresión Cron.

        • Para utilizar una expresión de frecuencia para definir la programación, elija Programación basada en la frecuencia e ingrese la expresión de frecuencia.

          Para obtener más información sobre las expresiones cron y rate, consulte Schedule types on EventBridge Scheduler en Amazon EventBridge Scheduler User Guide.

      2. En Intervalo de tiempo flexible, elija Apagado para desactivar la opción o elegir uno de los periodos de tiempo predefinidos. Por ejemplo, si elige 15 minutos y establece una programación recurrente para invocar su objetivo una vez cada hora, el horario se ejecuta 15 minutos después del inicio de cada hora.

  4. (Opcional) Si elige Programación recurrente en el paso anterior, en la sección de Periodo de tiempo, realice lo siguiente:

    1. En Zona horaria, elija una zona horaria.

    2. En Fecha y hora de inicio, ingrese una fecha válida en el formato YYYY/MM/DD y, a continuación, especifique una marca de tiempo en el formato hh:mm de 24 horas.

    3. En Fecha y hora de finalización, ingrese una fecha válida en el formato YYYY/MM/DD y, a continuación, especifique una marca de tiempo en el formato hh:mm de 24 horas.

  5. Seleccione Siguiente.

  6. En la página Seleccionar destino, elija la operación de la API de AWS que invoca el Programador de EventBridge:

    1. Elija Invocación de AWS Lambda.

    2. En la sección de Invocar, seleccione una función o elija Crear función de Lambda nueva.

    3. (Opcional) Ingrese una carga útil de JSON. Si no ingresa una carga útil, el Programador de EventBridge utilizará un evento vacío para invocar la función.

  7. Elija Siguiente.

  8. En la página Configuración, haga lo siguiente:

    1. Para activar la programación, en Estado de la programación, cambie a Habilitar programación.

    2. A fin de configurar una política de reintentos para su programación, en Política de reintento y cola de mensajes fallidos (DLQ), realice lo siguiente:

      • Cambie a Reintentar.

      • En Antigüedad máxima del evento, ingrese el máximo de horas y minutos que el Programador de EventBridge debe mantener un evento sin procesar.

      • El tiempo máximo es de 24 horas.

      • En Cantidad máxima de reintentos, ingrese el número máximo de veces que el Programador de EventBridge reintenta la programación si el objetivo devuelve un error.

        El valor máximo es 185 reintentos.

      Con las políticas de reintentos, si un programa no puede invocar su objetivo, el Programador de EventBridge vuelve a ejecutar el programa. Si se encuentra configurado, debe establecer el tiempo máximo de retención y los reintentos máximos para la programación.

    3. Elija dónde almacena los eventos no entregados el Programador de EventBridge.

      Opción Cola de mensajes fallidos (DLQ) Haga lo siguiente...
      No almacenar Seleccione Ninguno.
      Guardar el evento en la misma Cuenta de AWS donde crea la programación
      1. Elija Seleccionar una cola de Amazon SQS en mi Cuenta de AWS como DLQ.

      2. Elija el Nombre de recurso de Amazon (ARN) para la cola de Amazon SQS.

      Guardar el evento en una Cuenta de AWS diferente de donde crea la programación
      1. Elija Especificar una cola de Amazon SQS en otras Cuentas de AWS como DLQ.

      2. Ingrese el Nombre de recurso de Amazon (ARN) para la cola de Amazon SQS.

    4. Para utilizar una clave administrada por el cliente a fin de cifrar la entrada de destino, en Cifrado, elija Personalizar la configuración de cifrado (avanzado).

      Si elige esta opción, ingrese un ARN de clave de KMS existente o elija Crear una AWS KMS key para navegar hasta la consola de AWS KMS. Para obtener más información sobre cómo el Programador de EventBridge cifra los datos en reposo, consulte Encryption at rest en Amazon EventBridge Scheduler User Guide.

    5. Para que el Programador de EventBridge cree un rol de ejecución nuevo en su nombre, elija Crear un nuevo rol para esta programación. A continuación, ingrese un nombre para el Nombre de rol. Si elige esta opción, el Programador de EventBridge adjunta al rol los permisos necesarios para el objetivo creado con la plantilla.

  9. Elija Siguiente.

  10. En la página de Revisar y crear una programación, revise los detalles de su programación. En cada sección, elija Editar para volver a ese paso y editar sus detalles.

  11. Elija Crear programación.

    Puede ver una lista de sus programaciones nuevas y existentes en la página de Programaciones. En la columna de Estado, verifique que su programación nueva se encuentre Habilitada.

Para confirmar que el Programador de EventBridge ha invocado la función, compruebe Registros de Amazon CloudWatch de la función.

Para obtener más información sobre el Programador de EventBridge, consulte lo siguiente: