GCP云功能响应错误的原因是什么



我有一个GCP云函数,它是通过Pub/子主题触发的。该函数只是将数据存储数据备份到云存储。该函数运行良好,但我得到了
Function execution took 933 ms. Finished with status: response error,我不明白为什么?据我所知,我遵循GCP文档中的内容。

我的代码如下:

/* receives pub/sub message which is triggered every 24h. 
*/
exports.subscribe = async (message, context) => {
console.log('CHRON HANDLER STARTED');
await this.backupDB();
return Promise.resolve();
}
const bucket = 'gs://XXX_db_backups';
exports.backupDB = async () => {
try {
const databaseName = client.databasePath('XXX', '(default)');
await client.exportDocuments({
name: databaseName,
outputUriPrefix: bucket,
collectionIds: ['backuptest', ],
});    
} catch (error) {
console.log(error);
}
console.log('DB BACKUP SUCCESS');
};

编辑1完整的错误消息为:2022-04-09T10:30:15.076043374Z test-chron-handler yuthy3qj84sr Function execution took 933 ms. Finished with status: response error事实上,它甚至没有在云功能日志中标记为错误,它只是一条记录功能结束的常规状态消息。但正如你所看到的,完成状态确实是一个错误。

当函数返回200以外的任何值时,这似乎是当前已知的问题。甚至201和204在日志中给出响应错误。它似乎只影响日志而不影响实际响应。我已经在我的设置中验证了这一点。

在这个SO问题中:

GCP日志显示函数";函数执行耗时xxx毫秒。已完成,状态为:响应错误";只要我的标头状态代码不是200

编写了以下评论:

产品团队意识到了这个问题,他们今天已经更新了如果更改被恢复,则可以预期以前的行为不久将恢复。如果一天后你遇到任何错误,请告诉我或者两个Priyathree Bhadra 4月19日11:02

当函数的响应大小超过10MB1时,就会出现此问题。我认为您达到了最大响应大小,即功能的10MB。

欲了解更多信息,请访问这些stackoverflow链接2&3.

最新更新