Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Memulai alur kerja Fungsi Langkah sebagai respons terhadap peristiwa
Anda dapat mengeksekusi mesin AWS Step Functions status sebagai respons terhadap peristiwa yang dirutekan oleh EventBridge aturan Amazon ke Fungsi Langkah sebagai target.
Tutorial berikut menunjukkan cara mengkonfigurasi mesin status sebagai target EventBridge aturan Amazon. Setiap kali file ditambahkan ke bucket Amazon Simple Storage Service (Amazon S3), EventBridge aturan akan memulai mesin status.
Contoh praktis dari pendekatan ini dapat berupa mesin status yang menjalankan analisis Amazon Rekognition pada file gambar yang ditambahkan ke bucket untuk mengkategorikan dan menetapkan kata kunci.
Dalam tutorial ini, Anda memulai eksekusi mesin Helloworld status dengan mengunggah file ke bucket Amazon S3. Kemudian Anda meninjau contoh input eksekusi tersebut untuk mengidentifikasi informasi yang disertakan dalam masukan dari pemberitahuan peristiwa Amazon S3 yang dikirimkan ke EventBridge.
Prasyarat: Buat Mesin Status
Sebelum Anda dapat mengonfigurasi mesin status sebagai EventBridge target Amazon, Anda harus membuat mesin status.
-
Untuk membuat mesin state dasar, gunakan Creating state machine yang menggunakan tutorial fungsi Lambda.
-
Jika Anda sudah memiliki mesin
Helloworldnegara, lanjutkan ke langkah berikutnya.
Langkah 1: Buat Bucket di Amazon S3
Sekarang setelah Anda memiliki mesin Helloworld status, Anda perlu membuat bucket Amazon S3 yang menyimpan file Anda. Pada Langkah 3 dari tutorial ini, Anda mengatur aturan sehingga ketika file diunggah ke bucket ini, EventBridge memicu eksekusi mesin status Anda.
-
Arahkan ke konsol Amazon S3
, lalu pilih Buat bucket untuk membuat bucket tempat Anda ingin menyimpan file dan memicu aturan acara Amazon S3. -
Masukkan Nama bucket, seperti
.username-sfn-tutorialcatatan
Nama bucket harus unik di semua nama bucket yang ada di semua Wil AWS ayah di Amazon S3. Gunakan nama Anda sendiri
usernameuntuk membuat nama ini unik. Anda perlu membuat semua sumber daya di Wilayah yang sama AWS . -
Simpan semua pilihan default pada halaman, dan pilih Buat bucket.
Langkah 2: Aktifkan Pemberitahuan Acara Amazon S3 dengan EventBridge
Setelah Anda membuat bucket Amazon S3, konfigurasikan untuk mengirim peristiwa ke EventBridge setiap kali peristiwa tertentu terjadi di bucket S3 Anda, seperti unggahan file.
-
Arahkan ke konsol Amazon S3
. -
Di Bucket pilih nama bucket yang ingin Anda aktifkan untuk peristiwa.
-
Pilih Properti.
-
Di bagian Notifikasi Acara, pilih Edit di EventBridge subbagian Amazon.
-
Di bawah Kirim notifikasi ke Amazon EventBridge untuk semua acara di bucket ini, pilih Aktif.
-
Pilih Simpan perubahan.
catatan
Setelah Anda mengaktifkan EventBridge, diperlukan waktu sekitar lima menit agar perubahan diterapkan.
Langkah 3: Buat A EventBridge turan Amazon
Setelah Anda memiliki mesin status, dan telah membuat bucket Amazon S3 dan mengonfigurasinya untuk mengirim pemberitahuan acara EventBridge, buat EventBridge aturan.
catatan
Anda harus mengonfigurasi EventBridge aturan di Wil AWS ayah yang sama dengan bucket Amazon S3.
Untuk membuat aturan
-
Arahkan ke EventBridge konsol Amazon
, pilih Buat aturan. Tip
Atau, di panel navigasi di EventBridge konsol, pilih A turan di bawah Bus, lalu pilih Buat aturan.
-
Masukkan Nama untuk aturan Anda (misalnya,
) dan secara opsional masukkan Deskripsi untuk aturan tersebut.S3Step Functions -
Untuk bus acara dan tipe A turan, pertahankan pilihan default.
-
Pilih Berikutnya. Ini membuka halaman pola acara Build.
-
Di bagian Pola acara, lakukan hal berikut:
-
Untuk sumber acara, pertahankan pilihan default AWS acara atau acara EventBridge mitra.
-
Untuk AWS layanan, pilih Layanan Penyimpanan Sederhana (S3).
-
Untuk Jenis acara, pilih Pember itahuan Peristiwa Amazon S3.
-
Pilih Acara tertentu, lalu pilih Ob jek Dibuat.
-
Pilih Bucket tertentu berdasarkan nama dan masukkan nama bucket yang Anda buat di Langkah 1 (
) untuk menyimpan file Anda.username-sfn-tutorial -
Pilih Berikutnya. Ini membuka halaman Pilih target.
-
Untuk membuat target
-
Di Target 1, pertahankan pilihan AWS layanan default.
-
Dalam daftar tar ik- turun Pilih target, pilih Step Functions state machine.
-
Dalam daftar State machine, pilih mesin status yang Anda buat sebelumnya (misalnya,
Helloworld). -
Simpan semua pilihan default pada halaman, dan pilih Ber ikutnya. Ini membuka halaman Configure tag.
-
Pilih Selanjutnya sekali lagi. Ini membuka halaman Review dan buat.
-
Tinjau detail aturan dan pilih Buat aturan.
Aturan dibuat dan halaman A turan ditampilkan, mencantumkan semua EventBridge aturan Amazon Anda.
Langkah 4: Uji Aturan
Sekarang semua sudah berada di tempatnya, uji penambahan file ke bucket Amazon S3, lalu lihat input eksekusi mesin status yang dihasilkan.
-
Tambahkan file ke bucket Amazon S3.
Arahkan ke konsol Amazon S3
, pilih bucket yang Anda buat untuk menyimpan file ( ), lalu pilih Unggah.username-sfn-tutorial -
Tambahkan file, misalnya
, lalu pilih Unggah.test.pngTindakan ini meluncurkan eksekusi mesin status Anda, meneruskan informasi dari AWS CloudTrail sebagai input.
-
Periksa eksekusi untuk mesin status Anda.
Arahkan ke konsol Fungsi Langkah dan pilih mesin status yang digunakan dalam EventBridge aturan Amazon Anda (
Helloworld). -
Pilih eksekusi terbaru dari mesin status itu dan perluas bagian Input Eksekusi.
Input ini mencakup informasi seperti nama bucket dan nama objek. Dalam kasus penggunaan dunia nyata, mesin status dapat menggunakan input ini untuk melakukan tindakan pada objek tersebut.
Contoh Input Eksekusi
Contoh berikut menunjukkan input tipikal ke eksekusi mesin status.
{ "version": "0", "id": "6c540ad4-0671-9974-6511-756fbd7771c3", "detail-type": "Object Created", "source": "aws.s3", "account": "123456789012", "time": "2023-06-23T23:45:48Z", "region": "us-east-2", "resources": [ "arn:aws:s3:::" ], "detail": { "version": "0", "bucket": { "name": "username-sfn-tutorial" }, "object": { "key": "test.png", "size": 800704, "etag": "f31d8546bb67845b4d3048cde533b937", "sequencer": "00621049BA9A8C712B" }, "request-id": "79104EXAMPLEB723", "requester": "123456789012", "source-ip-address": "200.0.100.11", "reason": "PutObject" } }username-sfn-tutorial