2011-03-06 57 views
0

我刚刚将我的应用程序上传到应用程序引擎,除了cron作业没有运行以外,一切似乎都正常工作。我在我的根目录下的文件cron.yaml这基本上是:应用程序引擎cron作业没有在生产中运行

cron: 
- description: do stuff 
    url: /cron/dostuff 
    schedule: every 1 minutes 

- description: do other stuff 
    url: /cron/dootherstuff 
    schedule: every 1 days 

这映射到我的app.yaml文件中的以下部分:

- url: /cron 
    script: main.py 
    login: admin 

映射到我的主要应用。 PY,它说:

# cron 
('/cron/(.*)',handlers.CronHandler), 

并最终映射到CronHandler程序,像这样:

class CronHandler(BaseHandler): 
    def get(self, mode=""): 
     if mode == "dostuff": 
      # stuff should happen here 

我已经将应用上传到谷歌,并且其他一切似乎都正常工作。当我直接点击cron URL(即myapp.appspot.com/cron/dostuff)时,它可以正常工作。但是cron作业不能自行运行,当我进入仪表板并查看Cron Jobs页面时,我看到了这一点。

enter image description here

任何想法,我做错了吗?

+0

点星不是其他条目所必需的,所以我不认为这很重要,但我只是试了一试。没有骰子。我同意,我希望它至少能显示一些失败的cron作业。 – 2011-03-06 23:32:44

+0

我试过的其他变化是在cron.yaml中调整频率以“安排:每分钟”和“安排:每天”。这也没有奏效。 – 2011-03-06 23:47:31

+0

。*是必需的 - 但我认为你有一个catchall规则,也指向main.py.结果是你的cron处理程序不是管理员专用的。 – 2011-03-07 23:17:59

回答

3

明白了。在没有特定时间的情况下,“天”不是一个有效的时间表。我需要将其改为“每24小时”或“每天00:00”。如果cron.yaml上的文档对选项更清楚一点,那将会很棒。