我有一个基本的appengine项目,包含多个模块和dispatch.yaml:
我尝试使用以下定义配置单个小时cronjob:
cron:
- description: hourly box purging
url: /api/boxes.purge
schedule: every 1 hours
target: default
我已尝试将其添加到所关注的模块中,因此请将上述定义放在文件中:' my-project / boxes / cron.yaml'并运行appcfg.py cron_info boxes/
。我的终端似乎表明一切顺利:
hourly box purging:
URL: /api/boxes.purge
Schedule: every 1 hours (UTC)
2015-04-30 10:08:00Z, 0:59:55 from now
2015-04-30 11:08:00Z, 1:59:55 from now
2015-04-30 12:08:00Z, 2:59:55 from now
2015-04-30 13:08:00Z, 3:59:55 from now
2015-04-30 14:08:00Z, 4:59:55 from now
Appengine Developer控制台无法反映这一点,并且未运行cron作业。它确实在本地开发小组中显示。
将定义放在项目的根目录中(除了dispatch.yaml)会产生相同的结果。我试过的其他事情(徒劳):重新部署所有代码appcfg.py update_dispatch
,等待一段时间再刷新开发者控制台。
希望有人能够帮助我找到明显的错误,或者确认他们是一些错误。
答案 0 :(得分:0)
在文档的Configuration部分中说明:
可选的应用程序级配置文件(dispatch.yaml, cron.yaml,index.yaml和queue.yaml)包含在顶层 app目录。
我同意,段落背景似乎留有解释空间(通常...... )。但引用的文本也表明这些文件被认为是应用级配置。所以我会把它们放在最顶端。
关于更新:例如,我注意到index.yaml文件在我第一次部署时与其他多模块应用程序一起上传 NOT ,我必须明确使用 appcfg.py update_indexes 。单个模块应用程序不会发生这种情况。也许 appcfg.py update_cron 也需要明确吗?