脚本在超时后自动继续/重启

时间:2013-02-06 00:39:10

标签: google-apps-script

我使用默认服务GroupsManager和Group扫描域中的所有组,检查某个组是否没有所有者,并在这种情况下设置默认所有者。

域中的组数量几乎为2000,这导致我超时。我在处理每个组的循环中尝试了一个try / catch语句,但Google在超时时杀死了脚本。

我很高兴批量执行此操作,但是如果超时发生后我怎样才能继续执行我的脚本?或者我应该监视执行时间并使用某种睡眠?

或者我必须面对现实并在每次超时后重新启动脚本。

真的需要对此作出回应,谢谢!

/ Don Pedro

1 个答案:

答案 0 :(得分:1)

您不应该让脚本超时,而是尝试使用计时器触发器在特定时间间隔内一次处理有限数量的项目。

嗯,我想你可以回答说这说起来容易做起来难......但实际上很简单:

  1. 确定大约3分钟内可以检查的群组数量(最长执行时间为5',但保持舒适的余地总是更好)
  2. 计算已处理的组并将此计数器值放在某处...最好是scriptProperties
  3. 每10分钟左右设置一个计时器触发器,从您刚刚记忆的数字索引的组(触发器can be set programmatically开始调用您的函数,并在脚本编辑器的ressource菜单中手动删除)
  4. 当您到达任务结束时(再次手动或以编程方式)终止计时器
  5. 希望这会给你足够的启示。