使用 Cron 排程 Canary 執行 - Amazon CloudWatch

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用 Cron 排程 Canary 執行

當您排程 Canary 時,使用 Cron 表達式為您提供靈活性。Cron 表達式包含五個或六個欄位,其排序如下表所示。欄位以空格隔開。根據您是使用 CloudWatch 主控台建立初期測試,還是或,語法會有所 AWS CLI 不同 AWS SDKs。當您使用主控台時,只會指定前五個欄位。使用 AWS CLI 或時 AWS SDKs,請指定全部六個欄位,且必須*Year欄位指定。

欄位 允許的值 允許的特殊字元

分鐘

0-59

, - * /

小時

0-23

, - * /

D ay-of-month

1-31

, - * ? / L W

一至十二或 JAN-DEC

, - * /

D ay-of-week

1 至 7 號或 SUN-SAT

, - * ? L #

*

特殊字元
  • , (逗號) 在欄位的表達式中包含多個值。例如,在「月份」欄位中JAN,FEB,MAR將包括一月、二月和三月。

  • - (破折號) 特殊字元用於指定範圍。在 Day (日) 欄位,1-15 包含指定月份的 1 至 15 號。

  • * (星號) 特殊字元包含欄位中所有的值。在 Hours (小時) 欄位,* 包含每個小時。您無法在相同運算式的 D ay-of-month 和 D ay-of-week 欄位中使用 *。若您在其中一個欄位使用它,您必須在另一個欄位使用 ?

  • / (斜線) 用於指定增量。在 Minutes (分鐘) 欄位,您可以輸入 1/10 指定每十分鐘的間隔,從小時的第一分鐘開始 (例如第 11、第 21、第 31 分鐘等)。

  • ? (問號) 用於表示不限定任何一個。如果您在 D ay-of-month 字段中輸入 7,並且不在乎第七週的哪一天,則可以輸入 在 D 字ay-of-week段中。

  • D ay-of-month 或 D ay-of-week 欄位中的 L 萬用字元會指定月份或週的最後一天。

  • D ay-of-month 欄位中的W萬用字元指定工作日。在 D ay-of-month 欄位中,3W指定最接近月份第三天的星期幾。

  • D ay-of-week 欄位中的 # 萬用字元會指定一個月內星期中指定日期的特定執行個體。例如,3#2 是該月的第二個星期二。3 是指星期二,因為它是每週的第三天,2 指的是一個月內該類型的第二天。

限制
  • 您無法在相同的 cron 運算式中指定 D ay-of-month 和 D ay-of-week 欄位。如果您在其中一個欄位指定了數值 或 * (星號),就必須在另一個欄位中使用 ? (問號)​。

  • 不支援頻率多於一分鐘的 Cron 表達式。

  • 您不能設置 Canary 在執行之前等待一年以上,所以您只能在 Year 欄位中指定 *

範例

當您建立 Canary 時,您可以參考下列 Cron 字串範例。下列範例是使用或建立 AWS CLI 或更新初期測 AWS SDKs試的正確語法。如果您正在使用 CloudWatch 控制台,請*在每個示例中省略 final。

表達式 意義

0 10 * * ? *

每天上午 10 時(UTC)運行

15 12 * * ? *

每天下午 12 時 15 分(UTC)運行

0 18 ? * MON-FRI *

逢星期一至星期五下午 6:00 (UTC) 運行

0 8 1 * ? *

每月第一天上午 8:00 (UTC) 執行

0/10 * ? * MON-SAT *

在每週週一至週六每 10 分鐘執行

0/5 8-17 ? * MON-FRI *

週一至週五上午 8:00 至下午 5:55 之間每五分鐘進行一次 () UTC