Funciones Cron
Introducción
Una Cron Function es una función periódica que está asociada con un Cron. Puedes crear una Cron Function para ejecutar un trabajo que necesita ser invocado una vez o periódicamente.
Cuando configuras un cron en Catalyst, puedes asociarlo con la ejecución de una función o la invocación de una URL de terceros.
Cuando el cron está asociado con una función, el cron job invoca la función automáticamente según su programación. Si es un trabajo de una sola vez, el cron invoca la función en la fecha y hora especificadas. Si es periódico, el cron invoca la función en los intervalos configurados, como cada mes en una fecha y hora específicas, o todos los días a una hora específica.
No puedes invocar una Cron Function manualmente ni probarla en la consola. Sin embargo, puedes usar el comando functions:shell para probarla en el CLI. Una Cron Function no devuelve ninguna respuesta más que determinar si la ejecución de la función fue un éxito o un fallo.
Módulos de Cron Function
Java
Una Cron Function de Catalyst soporta dos módulos en Java: CronRequest y Context.
El módulo CronRequest contiene los siguientes métodos integrados:
- CronRequest.getCronParam(): Este método se usa para obtener el valor del parámetro particular pasado a la función.
- CronRequest.getAllCronParams(): Este método se usa para obtener todos los parámetros pasados a la función.
- CronRequest.getRemainingExecutionCount(): Este método se usa para obtener los detalles sobre las instancias de ejecución restantes de un cron job.
- CronRequest.getCronDetails(): Este método se usa para obtener los detalles del cron como el ID del Cron y el nombre del cron.
- CronRequest.getProjectDetails(): Se usa para obtener los detalles del proyecto, como el ID del proyecto y el nombre del proyecto.
El módulo Context contiene los siguientes métodos integrados:
- Context.getMaxExecutionTimeMs(): Este método se puede usar para obtener el tiempo máximo de ejecución de una Cron Function, que es un valor constante de 15 minutos.
- Context.getRemainingExecutionTimeMs(): Se puede usar para obtener el tiempo de ejecución restante de una Cron Function.
Cuando ejecutas una función Java, devuelve el estado de la ejecución como SUCCESS o FAILURE al final de su ejecución. El estado devuelto es de tipo com.catalyst.cron.CRON_STATUS.
Node.js
La Cron Function de Catalyst soporta dos módulos en Node.js: cronDetails y context.
El módulo cronDetails contiene los siguientes métodos integrados:
- cronDetails.getCronParam(): Este método se usa para obtener el valor del parámetro particular pasado a la función.
- cronDetails.getAllCronParam(): Este método se usa para obtener todos los parámetros pasados a la función.
- cronDetails.getRemainingExecutionCount(): Para obtener los detalles sobre las instancias de ejecución restantes del cron job.
- cronDetails.getCronDetails(): Para obtener los detalles del cron como el ID del Cron y el nombre del cron.
- cronDetails.getProjectDetails(): Para obtener los detalles del proyecto, como el ID del proyecto y el nombre del proyecto.
El módulo context contiene los siguientes métodos integrados:
- context.getMaxExecutionTimeMs(): Este método se puede usar para obtener el tiempo máximo de ejecución de una función, que es un valor constante de 15 minutos.
- context.getRemainingExecutionTimeMs(): Se puede usar para obtener el tiempo de ejecución restante de una función.
- context.closeWithSuccess(): Este método se usa para indicar que la función se ejecutó exitosamente. Debes usar esto al final de la función.
- context.closeWithFailure(): Este método se usa para indicar que la ejecución de la función fue un fallo. Debes usar esto al final de la función.
Python
Una Cron Function de Catalyst también soporta dos módulos en Python: cron_details y context.
El módulo cron_details contiene los siguientes métodos integrados:
- cron_details.get_cron_param() - Este método se usa para obtener el valor del parámetro particular pasado a la función.
- cron_details.get_all_cron_params() - Este método se usa para obtener todos los parámetros pasados a la función.
- cron_details.get_remaining_execution_count() - Para obtener los detalles sobre las instancias de ejecución restantes del cron job.
- cron_details.get_cron_details() - Para obtener los detalles del cron como el ID del Cron y el nombre del cron.
- cron_details.get_project_details() - Para obtener los detalles del proyecto, como el ID del proyecto y el nombre del proyecto.
El módulo context contiene los siguientes métodos integrados:
- context.get_max_execution_time_ms() - Este método se puede usar para obtener el tiempo máximo de ejecución de una función. Y el tiempo máximo de ejecución de una función está configurado en 15 minutos.
- context.get_remaining_execution_time_ms() - Se puede usar para obtener el tiempo de ejecución restante de una función.
- context.close_with_success() - Se puede usar para indicar que la función se ejecutó exitosamente. Debes usar esto al final de la función.
- context.close_with_failure() - Para indicar que la ejecución de la función fue un fallo. Debes usar esto al final de la función.
Última actualización 2026-03-20 21:51:56 +0530 IST
Yes
No
Send your feedback to us