Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Membuat mesin status Step Functions yang menggunakan Lambda
Dalam tutorial ini, Anda akan membuat alur kerja satu langkah menggunakan AWS Step Functions untuk memanggil fungsi. AWS Lambda
catatan
Fungsi Langkah didasarkan pada mesin dan tugas negara. Dalam Fungsi Langkah, mesin status disebut alur kerja, yang merupakan serangkaian langkah yang digerakkan oleh peristiwa. Setiap langkah dalam alur kerja disebut status. Misalnya, status Tugas mewakili unit kerja yang dilakukan AWS layanan lain, seperti memanggil yang lain Layanan AWS atau API. Contoh menjalankan alur kerja yang melakukan tugas disebut eksekusi di Fungsi Langkah.
Untuk informasi selengkapnya, lihat:
Lambda sangat cocok untuk Task state, karena fungsi Lambda tanpa server dan mudah ditulis. Anda dapat menulis kode di Konsol Manajemen AWS atau editor favorit Anda. AWS menangani detail menyediakan lingkungan komputasi untuk fungsi Anda dan menjalankannya.
Langkah 1: Membuat fungsi Lambda
Fungsi Lambda Anda menerima data acara dan mengembalikan pesan ucapan.
penting
Pastikan fungsi Lambda Anda berada di bawah AWS akun yang Wilayah AWS sama dan dengan mesin status Anda.
-
Buka konsol Lambda
dan pilih Create function. -
Pilih halaman Buat fungsi, pilih Penulis dari scratch.
-
Untuk Nama fungsi, masukkan
HelloFunction. -
Pertahankan pilihan default untuk semua opsi lainnya, lalu pilih Buat fungsi.
-
Setelah fungsi Lambda Anda dibuat, salin Nama Sumber Daya Amazon (ARN) fungsi yang ditampilkan. Berikut ini adalah contoh ARN:
arn:aws:lambda:region:123456789012:function:HelloFunction -
Salin kode berikut untuk fungsi Lambda ke bagian sumber kode
HelloFunctionhalaman.export const handler = async (event) => { return "Hello from " + event.who + "!"; };Kode ini menyusun sapaan menggunakan bidang
whodata input, yang disediakan oleh objekeventyang diteruskan ke fungsi Anda. Anda menambahkan data input untuk fungsi ini nanti, ketika Anda memulai eksekusi baru. Fungsi mengembalikan salam yang dirakit sebagai outputnya. -
Pilih Deploy.
Langkah 2: Uji fungsi Lambda
Uji fungsi Lambda Anda untuk melihatnya beroperasi.
-
Pilih Uji.
-
Untuk Nama peristiwa, masukkan
HelloEvent. -
Ganti data Event JSON dengan yang berikut ini.
{ "who": "AWS Step Functions" }Entri
"who"sesuai dengan bidangevent.whodi fungsi Lambda Anda, menyelesaikan sapaan. Anda akan memasukkan data input yang sama ketika Anda menjalankan mesin status Anda. -
Pilih Simpan dan kemudian pilih U ji.
-
Untuk meninjau hasil pengujian, di bawah Hasil eksekusi, perluas Detail.
Langkah 3: Buat mesin negara
Gunakan konsol Step Functions untuk membuat mesin status yang memanggil fungsi Lambda yang Anda buat di Langkah 1.
-
Buka konsol Step Func
tions, pilih State machines dari menu, lalu pilih Create state machine. penting
Pastikan bahwa mesin status Anda berada di bawah AWS akun dan Wilayah yang sama dengan fungsi Lambda yang Anda buat sebelumnya.
-
Pilih Buat dari kosong.
-
Beri nama mesin status Anda, lalu pilih Lanjutkan untuk mengedit mesin status Anda di Workflow Studio.
-
Di browser Negara di sebelah kiri, pastikan Anda telah memilih tab T indakan. Kemudian, seret dan lepas API In AWS Lambda voke ke status kosong berlabel Drag first state di sini.
-
Di panel In spektur di sebelah kanan, konfigurasikan fungsi Lambda:
-
Di bagian Parameter API, pilih fungsi Lambda yang Anda buat sebelumnya di daftar dropdown Nama fungsi.
-
Simpan pilihan default di daftar dropdown Payload.
-
-
(Opsional) Pilih Definisi untuk melihat definisi mesin status Amazon States Language (ASL), yang secara otomatis dihasilkan berdasarkan pilihan Anda di tab Tindakan dan panel Inspektur.
-
Tentukan nama untuk mesin status Anda. Untuk melakukan ini, pilih ikon edit di sebelah nama mesin status default MyStateMachine. Kemudian, di Konfigurasi mesin negara, tentukan nama di kotak nama mesin negara.
Misalnya, masukkan nama
LambdaStateMachine.catatan
Nama mesin status, eksekusi, dan tugas aktivitas tidak boleh melebihi 80 karakter panjangnya. Nama-nama ini harus unik untuk akun dan AWS Wilayah Anda, dan tidak boleh berisi hal-hal berikut:
-
Spasi putih
-
Karakter wildcard (
? *) -
Karakter tanda kurung (
< > { } [ ]) -
Karakter khusus (
" # % \ ^ | ~ ` $ & , ; : /) -
Karakter kontrol (
\\u0000-\\u001fatau\\u007f-\\u009f).
Fungsi Langkah menerima nama untuk mesin status, eksekusi, aktivitas, dan label yang berisi karakter non-ASCII. Karena karakter tersebut akan CloudWatch mencegah Amazon mencatat data, sebaiknya gunakan hanya karakter ASCII sehingga Anda dapat melacak metrik Fungsi Langkah.
-
-
(Opsional) Dalam konfigurasi mesin status, tentukan pengaturan alur kerja lainnya, seperti jenis mesin status dan peran eksekusinya.
Untuk tutorial ini, simpan semua pilihan default di pengaturan mesin State.
-
Pilih Buat.
-
Di kotak dialog Kon firmasi pembuatan peran, pilih Kon firmasi untuk melanjutkan.
Anda juga dapat memilih Lihat pengaturan peran untuk kembali ke konfigurasi mesin Status.
catatan
Jika Anda menghapus IAM role yang Step Functions buat, Step Functions tidak dapat membuatnya kembali nanti. Demikian pula, jika Anda mengubah peran (misalnya, dengan menghapus Step Functions dari principal dalam kebijakan IAM), Step Functions tidak dapat memulihkan pengaturan aslinya nanti.
Langkah 4: Jalankan mesin status
Setelah Anda membuat mesin status Anda, Anda dapat menjalankannya.
-
Pada halaman State machines, pilih LambdaStateMachine.
-
Pilih Mulai Eksekusi.
Ko tak dialog Mulai eksekusi ditampilkan.
-
(Opsional) Masukkan nama eksekusi khusus untuk mengganti default yang dihasilkan.
Non-ASCII nama dan pencatatan
Fungsi Langkah menerima nama untuk mesin status, eksekusi, aktivitas, dan label yang berisi karakter non-ASCII. Karena karakter tersebut akan CloudWatch mencegah Amazon mencatat data, sebaiknya gunakan hanya karakter ASCII sehingga Anda dapat melacak metrik Fungsi Langkah.
-
Di area Input, ganti contoh data eksekusi dengan yang berikut ini.
{ "who" : "AWS Step Functions" }"who"adalah nama kunci yang fungsi Lambda Anda gunakan untuk mendapatkan nama orang untuk menyapa. -
Pilih Mulai Eksekusi.
Eksekusi mesin status Anda dimulai, dan halaman baru yang menunjukkan eksekusi Anda yang sedang berjalan ditampilkan.
-
Konsol Step Functions mengarahkan Anda ke halaman yang diberi judul dengan ID eksekusi Anda. Halaman ini dikenal sebagai halaman Detail Eksekusi. Di halaman ini, Anda dapat meninjau hasil eksekusi saat eksekusi berlangsung atau setelah selesai.
Untuk meninjau hasil eksekusi, pilih status individual pada tampilan Grafik, lalu pilih tab individual pada Detail langkah panel untuk melihat detail setiap negara termasuk masukan, keluaran, dan definisi masing-masing. Untuk detail tentang informasi eksekusi yang dapat Anda lihat di halaman Detail Eksekusi, lihatIkhtisar detail eksekusi.
catatan
Anda juga dapat meneruskan payload saat memanggil Lambda dari mesin status. Untuk informasi selengkapnya dan contoh tentang memanggil Lambda dengan meneruskan payload di Parameters lapangan, lihat. Memohon AWS Lambda Fungsi dengan Step Functions