【问题标题】:Configure cron job to run every 15 minutes on Jenkins将 cron 作业配置为在 Jenkins 上每 15 分钟运行一次
【发布时间】:2013-10-26 22:44:01
【问题描述】:

如何在 Jenkins 上每 15 分钟运行一次 cron 作业?

这是我尝试过的:

在 Jenkins 上,我有一个作业设置为使用此 cron 语法每 15 分钟运行一次:

14 * * * *

但作业每小时执行一次,而不是 15 分钟。

我收到有关 cron 语法格式的警告:

Spread load evenly by using ‘H * * * *’ rather than ‘14 * * * *’

这可能是 cron 作业每小时执行一次而不是 15 分钟的原因吗?

【问题讨论】:

    标签: unix jenkins cron


    【解决方案1】:

    你的语法有点错误。说:

    */15 * * * * command
      |
      |--> `*/15` would imply every 15 minutes.
    

    * 表示 cron 表达式匹配该字段的所有值。

    / 描述范围的增量。

    【讨论】:

    • 是从 crontab 保存后每 15 分钟运行一次还是每 15 分钟运行一次,例如 1:00、1:15、1:30、1:45?
    • 从整点开始每十五分钟一次:00、15、30、45 等
    【解决方案2】:

    1) 你的 cron 错误。如果您想在 Jenkins 上每 15 分钟运行一次作业,请使用:

    H/15 * * * *
    

    2) 来自 Jenkins Spread load evenly by using ‘...’ rather than ‘...’ 的警告与 JENKINS-17311 一起出现:

    为了允许定期调度的任务在系统上产生均匀的负载,应尽可能使用符号 H(代表“哈希”)。例如,对十几个日常工作使用 0 0 * * * 将导致午夜时出现较大的峰值。相比之下,使用 H H * * * 仍然会每天执行一次每个作业,但不是同时执行一次,更好地使用有限的资源。

    例子:

    • H/15 * * * * - 每十五分钟一次(可能在 :07, :22, :37, :52):
    • H(0-29)/10 * * * * - 每小时前半段每十分钟一次(三次,可能在 :04, :14, :24)
    • H 9-16/2 * * 1-5 - 每个工作日每两小时一次(可能在上午 10:38、下午 12:38、下午 2:38、下午 4:38)
    • H H 1,15 1-11 * - 除 12 月外,每月 1 日和 15 日每天一次

    【讨论】:

    • 使用“H/15 * * * *”会触发以下内联错误:Invalid input: "H/15 * * * *": line 1:2: unexpected token: /
    • 不确定上述评论是否相关,因为H 特定于jenkins
    • 在像 OP 需要的任何 cron 增量/范围规范中使用正斜杠时,我也会收到“意外令牌:/”。我试过单引号/双引号,用反斜杠转义斜杠。解决办法是什么?
    【解决方案3】:

    应该是,

    */15 * * * *  your_command_or_whatever
    

    【讨论】:

      猜你喜欢
      • 2015-03-08
      • 2022-07-07
      • 2023-03-19
      • 1970-01-01
      • 2013-11-27
      • 2012-11-02
      • 2019-06-09
      • 2019-11-30
      • 2014-08-07
      相关资源
      最近更新 更多