如何立即在Google App Engine上运行cron作业?

时间:2014-05-14 12:15:39

标签: google-app-engine

我已将Google App Engine配置为使用ereporter记录例外情况。

cron作业配置为每59分钟运行一次。 cron.yaml如下

cron:
- description: Daily exception report
  url: /_ereporter?sender=xxx.xxx@gmail.com  # The sender must be an app admin.
  schedule: every 59 minutes

如何立即运行。

我在这里尝试做的是模拟500 HTTP错误,并通过cron作业立即查看堆栈跟踪。

3 个答案:

答案 0 :(得分:0)

只需从浏览器转到该网址即可。

答案 1 :(得分:0)

你不能使用cron。 Cron是一个调度系统,你可以让它每分钟运行一次。

或者,您可以将整个处理程序包装在try / except块中,并尝试捕获所有内容。 (例如,您可以对某些DeadlineExceededErrors执行此操作)然后触发调用ereporter处理程序的任务,然后重新引发异常。

然而,在许多情况下,Google基础架构可能是错误500的原因,并且您无法捕获错误。说实话,您可能只能为所有可能的错误500的子集发送电子邮件。最可靠的方法可能是让流程持续监控日志,并从那里发送电子邮件。

请注意,您的电子邮件不是可靠或快速的,因此1分钟的cron周期可能足够快。

答案 2 :(得分:0)

我也在尝试执行此操作时遇到了这个线程。我发现的一个(棘手的)解决方案是在cloudbuild.yaml文件的末尾添加一个curl命令,该命令会根据该线程立即触发该文件。希望这会有所帮助!

Make a curl request in Cloud Build CI/CD pipeline