【问题标题】:Testing non-default App Engine cron jobs测试非默认 App Engine cron 作业
【发布时间】:2012-08-02 23:33:47
【问题描述】:

我在 Google App Engine (Java) 中设置了 Cron 作业,并将其部署到非默认版本。以下是 cron.xml 的摘录:

<cron>
  <url>/_ah/cron/argosCheck</url>
  <schedule>every 1 hours</schedule>
</cron>

cron 作业出现在仪表板上,但失败:

/_ah/cron/argosCheck
<description>Trigger an Argos Web Services poll</description>
Trigger an Argos Web Services poll   every 1 hours (UTC) 
2012/08/05 22:05:12 on time Failed

我已验证处理程序有效,我可以手动触发该过滤器。 其他 cron 作业在默认版本中工作正常。 问题是:我是否需要指定一个绝对 URL 以部署该 cron 作业的非默认版本为目标? cron 作业的调度程序是否仅使用默认版本运行? (不记得在任何地方读过,但如果它在文档中并且我错过了,请告诉我)

类似于这个问题Testing non-default App Engine task queues

【问题讨论】:

    标签: java google-app-engine cron


    【解决方案1】:

    两个音符:

    1. 您不应在/_ah/* 路径上注册您的处理程序(servlet)。这是为系统服务保留的。如果映射错误,您可能会阻止访问系统提供的 url。
    2. 您可以使用target parameter with Cron 定义应用版本。

    【讨论】:

    • 谢谢,我去看看2。看不到在/_ah/*下注册有什么问题,除了控制台,系统服务真的不多。实在想不出别的了。无论如何,Vosao(GAE 的 CMS)在 /_ah/ 下注册了很多服务,因此有很多应用程序使用该路径。
    • 太棒了,“目标参数”看起来正是我需要的:-)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2010-11-17
    • 1970-01-01
    • 2017-11-30
    • 2019-11-01
    • 2018-07-06
    • 2019-04-14
    • 1970-01-01
    相关资源
    最近更新 更多