我有一个计划的云功能(使用Google's new solution),该功能打算在每个星期一的12:00 am运行。
export const updateHighScores = functions.pubsub.schedule('0 0 * * 1').onRun((context) => {
// (code)
// console.log(‘This code will run every Monday at 12:00 AM UTC’);
});
我希望它在世界标准时间上午12:00运行;但是,当UTC午夜滚动时,什么也没发生。所以我上床睡觉,对我预定的云功能无法正常工作感到沮丧,但决定继续努力。
但是第二天,我检查了日志,看来它确实起作用了,但它在太平洋时间太平洋的12:00 am运行。
有什么想法为什么要在太平洋时间午夜而不是世界标准时间运行?
(我将通过更改所有这些变量并观察其如何影响计划的云功能来进行一番猜测和检查,但是如果有人知道,我想也可以在这里问一下谢谢!)
答案 0 :(得分:2)
Scheduled functions由Google Cloud Scheduler安排的时间触发。使用Firebase CLI进行部署时,会自动为您创建Cloud Scheduler中的条目。如果您点击进入Cloud console to show your schedules,则会看到时区设置为“美国/洛杉矶”,即PST。
使用功能构建器API设置时区。您可以在documentation中阅读有关内容。
答案 1 :(得分:1)
我做这样的事情
exports.scheduledFunction = functions.pubsub
.schedule("0 4 * * *")
.timeZone("Asia/Baku")
.onRun((context) => {
groupCustomers.set({});
tables.set({});
calledCustomers.set({});
groups.set({
A: { name: "Altering", activeOnTablet: false },
});
return null;
});