Cloud Functions for Firebase的设置超时不会在控制台中保留;这是一个错误吗?

时间:2017-04-11 18:31:25

标签: firebase firebase-realtime-database google-cloud-functions

更新:我更新了问题,以反映我在问题正文中所描述的内容,以及当时发生的情况。这也证明了为什么我没有将Sanyam的回答标记为正确。控制台中存在一个错误,导致超时值过时。 @MichaelBleigh的回复是最相关的,让我知道问题何时解决。

我有一个Cloud Function,在某些边缘情况下需要超过默认的60秒超时。

问题是,虽然可以在Google Cloud Developer Console的“云功能”部分更改此值,但在每次部署后,它都会恢复为原始默认值。

有没有办法可以将更改保留在此设置中,可能是在其中一个Firebase配置文件中?

4 个答案:

答案 0 :(得分:36)

此处可以更改默认超时https://console.cloud.google.com/functions/list
select function> test function> edit> timeout

答案 1 :(得分:15)

functions v2.0.0开始,您还可以按照"Set timeout and memory allocation"部分下的文档中的说明在函数声明中设置超时:

const runtimeOpts = {
  timeoutSeconds: 300,
  memory: '1GB'
}

exports.myStorageFunction = functions
  .runWith(runtimeOpts)
  .storage
  .object()
  .onFinalize((object) = > {
    // do some complicated things that take a lot of memory and time
  });

发布说明中还突出显示了:

  

您将需要firebase-tools> = v4.0.0。

在Mac上,您可以使用以下命令获取最新的firebase-tools

npm install -g firebase-tools

还要注意上述文档链接中的限制和有效值:

The maximum value for timeoutSeconds is 540, or 9 minutes. 
Valid values for memory are:

128MB
256MB
512MB
1GB
2GB

答案 2 :(得分:3)

选择功能后,然后按"编辑"它位于"更多"下拉到页面底部。当前最大值为540秒。

答案 3 :(得分:1)

Per @ MichaelBleigh的评论。这已在最新版本的Firebase CLI中解决(本文发布时为3.7.0)。

如果您仍遇到此问题,请确保使用的是最新版本的Firebase CLI。