我正在尝试更改云功能的默认区域。客户端我做了如下更改:
const firebaseFunctions = require("firebase-functions");
const functions = firebaseFunctions.region("europe-west3");
现在,当我部署时,我可以看到正确的区域。但是当我去Google Cloud的日志时,我看到少了2小时,所以调度程序不会触发我的功能。
在文档中,我读到您可以从Google Cloud Console获取和更改默认区域。这是我的控制台:
****@cloudshell:~ (*****)$ gcloud config set functions/region europe-west3
Updated property [functions/region].
****@cloudshell:~ (project)$ gcloud config get-value compute/region
Your active configuration is: [cloudshell-*****]
europe-west3
可能是传播问题?还是我错过了什么?
[编辑]函数的触发方式如下:
functions.pubsub.schedule('0 6 * * *').onRun(async (context) => {
...
}
我期望的是:功能在6:00 AM触发
[SOLVED]默认的区域已经改变了,但是我在Cloud Scheduler中的函数的区域没有改变。修改:
- 进入Firebase->函数
- 打开你的功能选项并按"在云调度程序中打开">
- 在Cloud Scheduler中选择您的功能并按"编辑">
- 选择您喜欢的时区
也许不是最好的做法,但它是有效的。如果你知道更好的方法,请留下答案
你能解释一下你的云记录问题吗?
您可以使用.region("europe-west3")
选择Firebase功能的区域,这是正确的。这将把函数部署到该区域。
但是,gcloud
是一个单独的命令,并且只使用gcloud config
适用于后续的gcloud
命令;您没有使用gcloud
,因此不会受到该更改的影响。