Tengo que escribir algunas expresiones cron desde una función de programación de base de fuego. Como los servidores de Google no están en la misma zona horaria que yo, tendré que convertir mis expresiones existentes. (de UTC+2 a UTC-5). Aquí hay un ejemplo de una de mis expresiones: 0 9-17 * * 1-5 - de lunes a viernes en el minuto 0 de 9:00 a 17:00
¿Cómo puedo convertir esto para que se ejecute en este momento en UTC+2 cuando el servidor está en UTC-5?
Debido a que UTC+2 a UTC-5 son 7 horas hacia atrás, debe tomar el tiempo 7 horas hacia atrás:
0 2-10 * * 1-5Cuando miramos la documentación de la función de programación de Firebase que se encuentra documentada aquí:
https://firebase.google.com/docs/functions/schedule-functions
encontramos una sección llamada Escribir una función programada . Allí encontramos que cuando codificamos:
functions.pubsub.schedule("<CRON String">) podemos agregar una configuración de timeZone . Por ejemplo:
functions.pubsub.schedule("<CRON String">).timeZone('America/New_York') Lo que esto significa para nosotros es que podemos establecer una zona horaria específica contra la cual se evaluarán nuestros intervalos CRON. Según la documentación, la zona horaria predeterminada es utc .