Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan ekspresi cron dan rate untuk menjadwalkan aturan di Amazon EventBridge
Bila Anda membuat aturan terjadwal di EventBridge Anda dapat menentukan pola jadwal yang menentukan kapan EventBridge menjalankan aturan:
Gunakan ekspresi cron untuk menjalankan aturan pada waktu dan tanggal tertentu.
Gunakan ekspresi tingkat untuk menjalankan aturan secara berkala.
Ekspresi Cron
Ekspresi cron memiliki enam bidang yang diperlukan, yang dipisahkan oleh spasi putih.
Sintaksis
cron(fields)
Bidang | Nilai-nilai | Wildcard |
---|---|---|
Menit |
0-59 |
, - * / |
Jam |
0-23 |
, - * / |
D ay-of-month |
1-31 |
, - * ? / L W |
Bulan |
1-12 atau JAN - DEC |
, - * / |
D ay-of-week |
1-7 atau SUN - SAT |
, - * ? L # |
Tahun |
1970-2199 |
, - * / |
Wildcard
-
Wildcard , (koma) mencakup nilai tambahan. Di bidang Bulan,, JANFEB, MAR termasuk Januari, Februari, dan Maret.
-
Wildcard - (tanda hubung) menentukan rentang. Di bidang Tanggal, 1-15 mencakup tanggal 1 hingga 15 pada bulan yang ditentukan.
-
Wildcard * (bintang) mencakup semua nilai di bidang. Di bidang Jam, * mencakup setiap jam. Anda tidak dapat menggunakan* di ay-of-week bidang D ay-of-month dan D. Jika Anda menggunakannya di satu bidang, Anda harus menggunakan ? di bidang lain.
-
Wildcard / (garis miring) menentukan kenaikan. Di bidang menit, Anda bisa memasukkan 1/10 untuk menentukan setiap menit kesepuluh, mulai dari menit pertama jam (sebagai contoh, menit ke-11, 21, dan 31, dan seterusnya).
-
Wildcard ? (tanda tanya) menentukan pilihan apa pun. Di ay-of-month bidang D Anda bisa memasukkan 7 dan jika ada hari dalam seminggu yang dapat diterima, Anda bisa masuk? di ay-of-week bidang D.
-
Wildcard L di ay-of-week bidang D ay-of-month atau D menentukan hari terakhir bulan atau minggu.
-
W
Wildcard di ay-of-month bidang D menentukan hari kerja. Di ay-of-month bidang D,3W
tentukan hari kerja yang paling dekat dengan hari ketiga bulan itu. -
Wildcard # di ay-of-week bidang D menentukan contoh tertentu dari hari yang ditentukan dalam seminggu dalam sebulan. Sebagai contoh, 3#2 akan menjadi hari Selasa kedua setiap bulan: 3 mengacu pada hari Selasa karena itu adalah hari ketiga setiap minggu, dan 2 mengacu pada hari kedua dari jenis tersebut dalam bulan tersebut.
catatan
Jika Anda menggunakan karakter '#', Anda hanya dapat menentukan satu ekspresi di day-of-week bidang. Sebagai contoh,
"3#1,6#3"
tidak valid karena ditafsirkan sebagai dua ekspresi.
Batasan
-
Anda tidak dapat menentukan ay-of-week bidang D ay-of-month dan D dalam ekspresi cron yang sama. Jika Anda menentukan nilai atau * (bintang) di salah satu bidang, Anda harus menggunakan ? (tanda tanya) di bidang lain.
-
Ekspresi cron yang mengarah ke tingkat lebih cepat dari 1 menit tidak didukung.
Contoh
Anda dapat menggunakan contoh string cron berikut saat membuat aturan dengan jadwal.
Menit | Jam | Hari dalam sebulan | Bulan | Hari dalam seminggu | Tahun | Arti |
---|---|---|---|---|---|---|
0 |
10 |
* |
* |
? |
* |
Jalankan pukul 10:00 pagi (UTC+0) setiap hari |
15 |
12 |
* |
* |
? |
* |
Jalankan pukul 12:15 siang (UTC+0) setiap hari |
0 |
18 |
? |
* |
MON-FRI |
* |
Jalankan pukul 6:00 sore (UTC+0) setiap Senin sampai Jumat |
0 |
8 |
1 |
* |
? |
* |
Jalankan pukul 8:00 pagi (UTC+0) setiap hari pertama setiap bulan |
0/15 |
* |
* |
* |
? |
* |
Jalankan setiap 15 menit |
0/10 |
* |
? |
* |
MON-FRI |
* |
Jalankan setiap 10 menit Senin hingga Jumat |
0/5 |
8-17 |
? |
* |
MON-FRI |
* |
Jalankan setiap 5 menit Senin sampai Jumat antara pukul 8:00 pagi dan 17:55 sore (UTC+0) |
0/30 |
20-2 |
? |
* |
MON-FRI |
* |
Jalankan setiap 30 menit Senin sampai Jumat antara pukul 10:00 malam pada hari mulai hingga 2:00 pagi pada hari berikutnya () UTC Jalankan dari pukul 12:00 hingga 2:00 pagi pada Senin pagi ()UTC. |
Contoh berikut membuat aturan yang berjalan setiap hari pada pukul 12:00 UTC +0.
aws events put-rule --schedule-expression "cron(0 12 * * ? *)" --name
MyRule1
Contoh berikut membuat aturan yang berjalan setiap hari, pada pukul 14:05 dan 14:35 +0. UTC
aws events put-rule --schedule-expression "cron(5,35 14 * * ? *)" --name
MyRule2
Contoh berikut membuat aturan yang berjalan pada pukul 10:15 UTC +0 pada hari Jumat terakhir setiap bulan selama tahun 2019 hingga 2022.
aws events put-rule --schedule-expression "cron(15 10 ? * 6L 2019-2022)" --name
MyRule3
Ekspresi rate
Ekspresi tingkat dimulai ketika Anda membuat aturan acara terjadwal, dan kemudian aturan berjalan pada jadwal yang ditetapkan.
Ekspresi tingkat memiliki dua bidang yang diperlukan, yang dipisahkan oleh spasi putih.
Sintaksis
rate(value unit)
- nilai
-
Bilangan positif
- unit
-
Unit waktu. Unit yang berbeda diperlukan untuk nilai 1, seperti
minute
, dan nilai lebih dari 1, sepertiminutes
.Nilai yang valid: menit | menit-menit | jam | jam-jam | hari | hari-hari
Batasan
Jika nilai sama dengan 1, maka unit harus tunggal. Jika nilai lebih besar dari 1, unit harus jamak. Misalnya, tingkat(1 jam-jam) dan tarif(5 jam) tidak valid, tetapi tarif (1 jam) dan tarif(5 jam-jam) berlaku.
Contoh
Contoh berikut menunjukkan cara menggunakan ekspresi tingkat dengan AWS CLI
put-rule
perintah. Contoh pertama memicu aturan setiap menit, yang berikutnya memicunya setiap lima menit, contoh ketiga memicunya sekali dalam satu jam, dan contoh terakhir memicunya sekali sehari.
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