如何取消或停止Google App Engine Cron作业

Oli*_*ver 1 java cron google-app-engine

我将使用CRON作业的应用程序部署到了Google App Engine。我遵循了教程。它工作正常,我可以在GAE控制台中确认它。在我的Stackdriver日志中,我还可以看到CRON作业正在运行。

但是,cron.xml在我再次部署应用程序之后,对文件所做的所有更改均不适用。我什至删除了cron.xml文件并再次部署了我的应用程序-无效。我不希望该CRON工作超过任何配额。

  1. 是否可以通过GAE控制台取消/禁用/删除CRON作业?
  2. 我通过修改和删除cron.xml文件来取消CRON作业是否做错了什么?

Gus*_*ema 5

现在,使用gcloud工具有些不同

1-设置适当的项目:

gcloud config set project my-project

2-创建具有以下内容的文件cron.yaml cron:

3-上传新的cron文件

gcloud app deploy cron.yaml

  • 似乎空的cron.yaml会出现此错误:“错误:gcloud崩溃(MalformedCronfigurationFile):空的cron配置。” 因此,我认为您至少应添加“ cron:”作为内容,然后重新部署。 (3认同)

Dan*_*scu 3

某些情况下(特别是根据我的经验,多服务应用程序),仅上传应用程序/服务可能不会自动更新 cron 配置。最有可能的是因为 cron 配置不是服务级别的配置,它是应用程序级别的配置,独立于特定服务。

这就是为什么有专门用于部署 cron 配置的命令。来自上传 cron 作业

选项 2:仅上传您的 cron 更新

要仅更新 cron 配置而不上传应用程序的其余部分,请运行以下命令:

./appengine-java-sdk/bin/appcfg.sh update_cron [YOUR_APP_DIR]
Run Code Online (Sandbox Code Playgroud)

在其正下方,您可以删除所有 cron 作业- 基本上是上传一个空的 cron 配置文件(而不是仅删除该文件):

要删除所有 cron 作业: