기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
Amazon에서 cron 및 rate 표현식을 사용하여 규칙 스케줄링 EventBridge
에서 EventBridge 스케줄링된 규칙을 생성할 때 규칙 EventBridge 실행 시기를 결정하는 스케줄 패턴을 지정할 수 있습니다.
cron 표현식을 사용하면 특정 시간과 날짜에 규칙을 실행할 수 있습니다.
일정 간격으로 규칙을 실행하려면 비율 표현식을 사용하십시오.
cron 표현식
cron 표현식에는 각각 공백으로 구분되는 필수 필드 6개가 있습니다.
구문
cron(fields)
필드 | 값 | 와일드카드 |
---|---|---|
Minutes |
0~59 |
, - * / |
시간 |
0~23 |
, - * / |
D ay-of-month |
1~31 |
, - * ? / L W |
월 |
1-12 또는 JAN - DEC |
, - * / |
D ay-of-week |
1-7 또는 SUN - SAT |
, - * ? L # |
연도 |
1970~2199 |
, - * / |
와일드카드
-
,(쉼표) 와일드카드는 추가 값을 포함합니다. 월 MAR 필드에는 1월 JANFEB, 2월, 3월이 포함됩니다.
-
-(대시) 와일드카드는 범위를 지정합니다. ‘일’ 필드에서 1-15는 지정된 달의 1일에서 15일까지 포함한다는 의미입니다.
-
*(별표) 와일드카드는 필드의 모든 값을 포함합니다. ‘시간’ 필드에서 *는 모든 시간을 포함한다는 의미입니다. ay-of-month D와 D ay-of-week 필드 모두에 *를 사용할 수 없습니다. 필드 중 하나에 사용할 경우 다른 하나에는 반드시 ?를 사용해야 합니다.
-
/(슬래시) 와일드카드로 증분을 지정합니다. 예를 들어, '분' 필드에 1/10을 입력하면 지정한 시간의 1분부터 시작해서 매 10분 간격을 지정할 수 있습니다(즉, 11분, 21분, 31분 등).
-
?(물음표) 와일드카드는 any를 지정합니다. 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 필드에서 해당 월의 3일에 가장 가까운 요일을3W
지정합니다. -
D ay-of-week 필드의 # 와일드카드는 한 달 내 특정 요일의 특정 인스턴스를 지정합니다. 예를 들어, 3#2는 그 달의 두 번째 화요일입니다. 3은 각 주의 셋째 날이므로 화요일을 나타내고 2는 그 달의 두 번째 해당 요일입니다.
참고
'#' 문자를 사용하는 경우 day-of-week 필드에 표현식을 하나만 정의할 수 있습니다. 예를 들어
"3#1,6#3"
은(는) 두 개의 표현식으로 해석되기 때문에 유효하지 않습니다.
제한 사항
-
동일한 cron 표현식에 D ay-of-month ay-of-week 필드와 D 필드를 지정할 수 없습니다. 필드 중 하나에 값 또는 *(별표)를 지정하는 경우 다른 필드에는 ?(물음표)를 사용해야 합니다.
-
1분보다 빠른 속도로 이어지는 cron 표현식은 지원되지 않습니다.
예
예약에 따라 규칙을 생성할 때는 다음과 같이 동일한 cron 문자열을 사용할 수 있습니다.
분 | 시간 | 일 | 월 | 요일 | 연도 | 의미 |
---|---|---|---|---|---|---|
0 |
10 |
* |
* |
? |
* |
매일 오전 10시 (UTC+0) 에 실행 |
15 |
12 |
* |
* |
? |
* |
매일 오후 12시 15분 (UTC+0) 에 실행 |
0 |
18 |
? |
* |
MON-FRI |
* |
매주 월요일부터 금요일까지 오후 6시 (UTC+0) 에 실행 |
0 |
8 |
1 |
* |
? |
* |
매월 1일 오전 8시 (UTC+0) 에 운영 |
0/15 |
* |
* |
* |
? |
* |
15분마다 실행 |
0/10 |
* |
? |
* |
MON-FRI |
* |
월요일부터 금요일까지 10분마다 실행 |
0/5 |
8~17 |
? |
* |
MON-FRI |
* |
월요일부터 금요일까지 오전 8시부터 오후 5시 55분까지 5분 간격으로 실행 (+0) UTC |
0/30 |
20-2 |
? |
* |
MON-FRI |
* |
시작 당일 오후 10시부터 다음 날 오전 2시까지 월요일부터 금요일까지 30분 간격으로 운행 () UTC 월요일 아침 12시부터 오전 2시까지 운행합니다 (). UTC |
다음 예제에서는 매일 오후 12:00 +0에 실행되는 규칙을 생성합니다. UTC
aws events put-rule --schedule-expression "cron(0 12 * * ? *)" --name
MyRule1
다음 예제에서는 매일 오후 2시 5분과 오후 2시 35분 +0에 실행되는 규칙을 만듭니다. UTC
aws events put-rule --schedule-expression "cron(5,35 14 * * ? *)" --name
MyRule2
다음 예제에서는 2019년부터 2022년까지 매월 마지막 금요일 오전 10시 15분 UTC +0시에 실행되는 규칙을 생성합니다.
aws events put-rule --schedule-expression "cron(15 10 ? * 6L 2019-2022)" --name
MyRule3
rate 표현식
rate 표현식은 예약된 이벤트 규칙을 생성할 때 시작되며, 정의된 일정에 따라 실행됩니다.
rate 표현식에는 각각 공백으로 구분되는 필수 필드 2개가 있습니다.
구문
rate(value unit)
- 값
-
양수.
- unit
-
시간 단위. 1의 값(예:
minute
)과 1을 초과하는 값(예:minutes
)은 서로 다른 단위가 필요합니다.유효값: 분 | 분 | 시간 | 시간 | 일 | 일
제한 사항
값이 1과 같을 경우에는 단위가 단수여야 합니다. 값이 1보다 크면 단위는 복수여야 합니다. 예를 들어, rate(1 hours)와 rate(5 hour)는 잘못된 식이며, rate(1 hour)와 rate(5 hours)가 유효한 식입니다.
예
다음 예제는 명령과 함께 요금 표현식을 사용하는 방법을 보여줍니다. AWS CLI
put-rule
첫 번째 예제는 1분마다 규칙을 트리거하고, 두 번째 예제는 5분마다 규칙을 트리거하며, 다음은 한 시간에 한 번 트리거하고, 마지막 예제는 하루에 한 번 트리거합니다.
aws events put-rule --schedule-expression "rate(1 minute)" --name
MyRule2
aws events put-rule --schedule-expression "rate(5 minutes)" --name
MyRule3
aws events put-rule --schedule-expression "rate(1 hour)" --name
MyRule4
aws events put-rule --schedule-expression "rate(1 day)" --name
MyRule5