Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google app engine 即使没有定义Cron.yaml文件,Google Appengine也会运行Cron任务_Google App Engine_Python 2.7_Cron - Fatal编程技术网

Google app engine 即使没有定义Cron.yaml文件,Google Appengine也会运行Cron任务

Google app engine 即使没有定义Cron.yaml文件,Google Appengine也会运行Cron任务,google-app-engine,python-2.7,cron,Google App Engine,Python 2.7,Cron,即使没有定义一个CRON.yaml文件,我也开始从CRON服务接收错误 cron任务每4小时运行一次 为了纠正这种行为,我真的不知道该从哪里着手。请告诉我需要什么样的信息来纠正错误 时钟守护作业 第一个Cron错误 Cron作业:/admin/push/feedbackservice/process-查询APNS反馈服务并删除非活动设备 计划/上次运行/上次状态(所有时间均为UTC):每4小时(UTC) 2014/06/10 07:00:23准时失败 第二个Cron错误 Cron作业:/admi

即使没有定义一个CRON.yaml文件,我也开始从CRON服务接收错误

cron任务每4小时运行一次

为了纠正这种行为,我真的不知道该从哪里着手。请告诉我需要什么样的信息来纠正错误

时钟守护作业 第一个Cron错误 Cron作业:/admin/push/feedbackservice/process-查询APNS反馈服务并删除非活动设备

计划/上次运行/上次状态(所有时间均为UTC):每4小时(UTC) 2014/06/10 07:00:23准时失败

第二个Cron错误 Cron作业:/admin/push/notifications/cleanup-删除已处理通知的不再需要的记录

计划/上次运行/上次状态(所有时间均为UTC):每天04:45(美国/纽约)-2014/06/09 04:45:01准时失败

控制台日志
2014-06-10 09:00:24.064/admin/push/feedbackservice/process404626ms 0kb AppEngine谷歌;(+http://code.google.com/appengine)模块=默认版本=1
0.1.0.1---[10/Jun/2014:00:00:24-0700]“GET/admin/push/feedbackservice/process HTTP/1.1”404 113-“AppEngine Google(+http://code.google.com/appengine)“xxx-dev.appspot.com”ms=627 cpu\u ms=353 cpm\u usd=0.000013队列\u名称=\u cron任务\u名称=471B6C0016980883F8225C35C35B96加载\u请求=1应用程序\u引擎\u发布=1.9.5实例=00c61b17c3c8be02ef95578ba43
I 2014-06-10 09:00:24.063


此请求导致为应用程序启动一个新进程,从而导致首次加载应用程序代码。因此,与应用程序的典型请求相比,此请求可能需要更长的时间并使用更多的CPU。

上面@Greg的提示为我解决了这个问题

请注意事件的完整顺序:

  • 该应用程序的旧版本包括一个每小时运行一次的cron.yaml文件

  • 在后续版本中,我删除了cron.yaml文件,认为这已经足够了,但后来我发现cron作业仍然在运行

  • 上传一个空的cron.yaml文件也不会改变什么

  • 上传了一个只有“cron:”的cron.yaml文件——cron作业刚刚停止

  • 从上面看,我认为事情的工作方式是这样的:当找到cron.yaml文件时,它会被解析,如果语法正确,它的cron作业会加载到应用服务器中。显然,仅仅从后续版本中删除cron.yaml文件,或者加载一个空文件(即不可解析、语法错误)并不能删除cron作业。删除cron作业的唯一方法是加载一个新的、可解析的cron.yaml文件,即带有“cron:”行,但之后没有实际作业


    事实证明,这样做之后,您现在可以从后续版本中删除cron.yaml,而那些旧的cron作业将不再返回。

    是否有多个版本在运行?!也许你曾经有过cron的工作…@Lipis这是一个有趣的评论。我看到两个使用Java部署的代码版本,Java是一种未使用的语言。一个开发人员可能在一周前部署了错误版本的代码?!?我将删除这些未知版本,看看错误是否消失。部署第一行只有“cron:”的cron.yaml将删除以前添加的所有文件。@Greg,我已经创建并部署了2个文件queue.yaml,cron.yaml;它们是“空的”。请注意,文件已存储在每个模块中。但同样的错误依然存在,你知道吗?