问题描述
问题
我正在通过googleapis
npm软件包使用来自node.js(Firebase的云函数)的Google Sheets API v4来写入Google Sheets。
偶尔会收到此错误:
Error: Resource has been exhausted (e.g. check quota).
at Gaxios._request (/workspace/node_modules/gaxios/build/src/gaxios.js:89:23)
at process._tickCallback (internal/process/next_tick.js:68:7)
虽然并没有说达到哪个特定配额。
实际上,在那个特定时刻,有许多并发函数执行写入Google表格,但其中一些失败:
GCP控制台
https://console.cloud.google.com/iam-admin/quotas说配额状态很好:
https://console.cloud.google.com/apis/api/sheets.googleapis.com/quotas显示发行时的使用量在配额限制内:
猜测
我怀疑我可能达到“每100秒写请求数每个用户”的配额限制…是因为“按响应代码显示的流量”图表显示为2.03 reqs / sec,因此有203个请求每100秒,并且所有这些都来自一个凭证:
但是,“未显示每用户配额使用情况”,并且错误消息或GCP控制台均未明确指示实际耗尽了什么配额。
此外,对此猜测有一个反论点:上表中的总计“每100秒的请求数”低于100,我假设“每100秒的请求数用户”不能高于总数。
问题
- 根据GCP控制台中的图表得出的结论是否正确,表明我没有达到配额限制?
- 如何确定错误消息中引用了哪个配额限制?
-
Resource has been exhausted (e.g. check quota)
错误背后还有什么其他原因?
根据评论进行更新
- 所触发的云功能:line that calls my repository class method。
- 调用
Spreadsheet
类方法以更新行的repository method itself。 - Spreadsheet method用于准备数据以进行更新/添加。
- 实际method that calls the
googleapis
。
这不是Minimal,Reproducible Example,这是实际使用的代码。在这种情况下,我认为提供一个可复制的示例不值得花时间,因为问题主要与解释错误消息并弄清楚已达到哪个特定配额限制有关。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)