如何重新启动失败的 Google Apps 脚本触发器?
Posted
技术标签:
【中文标题】如何重新启动失败的 Google Apps 脚本触发器?【英文标题】:How do I restart a failed Google Apps Script Trigger? 【发布时间】:2020-06-09 18:25:00 【问题描述】:我有很多时间驱动的触发器来查询我的 Cloud SQL 服务器并更新 Google 表格中的信息。
今天,我超过了我的每日配额并收到以下错误消息:
Jun 9, 2020, 7:37:11 AM Error Service invoked too many times for one day: premium jdbc connection.
我的所有触发器在早上 7:40 停止触发。现在是下午 1 点。我可以手动运行我的所有功能,并且它们完成时不会出错。但是,我已删除并重新创建触发器,并且不会在我的帐户上运行任何触发器。我需要等待24小时吗?还有其他地方可以重置触发器吗?我需要创建一个新的 Apps 脚本项目吗?
【问题讨论】:
如果我有那么多触发器,我会以编程方式构建它们,并始终检查我没有创建重复的触发器。 同意。我编写了一个函数来删除所有触发器,然后以编程方式将它们添加回来。没用。此外,我无法为该项目中的新功能创建任何新触发器。我手动删除并添加。没用。我复制了绑定的电子表格,并尝试了新的触发器。没用。最后,我创建了一个新的电子表格,复制/粘贴了所有 GAS 代码,添加了新的触发器。它再次起作用。所以这是项目级别的某种触发器崩溃/禁用,在该项目中无法创建或运行任何触发器。 一旦超出限制,您唯一的解决方案就是等待一段时间。一般不会花一整天的时间。因此,我会检查您的代码并确保您没有创建重复的触发器,或者创建的触发器数量可能超出您的配额所允许的范围。 我会考虑制作一个主脚本,将其他脚本称为库。 来自documentation:Daily quotas are refreshed at the end of a 24-hour window; the exact time of this refresh, however, varies between users.
【参考方案1】:
如 cmets 中所述,我一直等到滚动 24 小时配额刷新(不到 24 小时)。我被用完的配额似乎是滚动的 24 小时使用时间,因此它不会重置为零,它只是在旧使用量减少时为您提供额外的使用时间。
cmets 中的有用建议 - 创建一个主脚本以添加/删除所有触发器,将其他脚本称为库。这使您可以快速删除所有触发器,等待配额重置/刷新,然后缓慢或一次性添加触发器。否则,您的触发器可能会在您的配额有空间时持续触发,从而再次超出您的配额。
【讨论】:
以上是关于如何重新启动失败的 Google Apps 脚本触发器?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用google apps脚本在自定义函数中编辑自定义函数的调用单元格?
我是否需要更改我的Apps脚本代码,因为Google+登录功能已被弃用?