Jenis dan tujuan pemberitahuan peristiwa - Amazon Simple Storage Service

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Jenis dan tujuan pemberitahuan peristiwa

Amazon S3 mendukung beberapa jenis tujuan notifikasi peristiwa tempat notifikasi dapat diterbitkan. Anda dapat menentukan jenis peristiwa dan tujuan ketika mengonfigurasi notifikasi peristiwa Anda. Hanya satu tujuan yang dapat ditentukan untuk setiap pemberitahuan peristiwa. Pemberitahuan peristiwa Amazon S3 mengirim satu entri peristiwa untuk setiap pesan notifikasi.

Tujuan peristiwa yang didukung

Amazon S3 dapat mengirimkan pesan pemberitahuan peristiwa ke tujuan berikut.

  • Topik Amazon Simple Notification Service (Amazon SNS)

  • Antrean Amazon Simple Queue Service (Amazon SQS)

  • AWS Lambda

  • Amazon EventBridge

Namun, hanya satu jenis tujuan yang dapat ditentukan untuk setiap pemberitahuan peristiwa.

catatan

Anda harus memberikan izin Amazon S3 untuk mem-posting pesan ke topik Amazon SNS atau antrean Amazon SQS. Anda juga harus memberikan izin Amazon S3 untuk menjalankan AWS Lambda fungsi atas nama Anda. Untuk petunjuk tentang cara memberikan izin ini, lihat memberikan izin untuk memublikasikan pesan pemberitahuan peristiwa ke tujuan.

Topik Amazon SNS

Amazon SNS adalah layanan perpesanan push yang fleksibel, dan dikelola penuh. Anda dapat menggunakan layanan ini untuk mendorong pesan ke perangkat seluler atau layanan terdistribusi. Dengan SNS, Anda dapat memublikasikan pesan satu kali, dan mengirimkannya satu atau beberapa kali. Saat ini SNS Standar hanya diizinkan sebagai tujuan notifikasi peristiwa S3, sedangkan SNS FIFO tidak diizinkan.

Amazon SNS mengoordinasikan dan mengelola pengiriman dan pengiriman pesan ke titik akhir atau klien yang berlangganan. Anda dapat menggunakan konsol Amazon SNS untuk membuat topik Amazon SNS yang dapat dikirimkan pemberitahuan Anda.

Topiknya harus Wilayah AWS sama dengan bucket Amazon S3 Anda. Untuk petunjuk tentang cara membuat topik Amazon SNS, lihat Memulai dengan Amazon SNS di Panduan Pengembang Amazon Simple Notification Service dan FAQ Amazon SNS.

Sebelum Anda dapat menggunakan topik Amazon SNS yang Anda buat sebagai tujuan pemberitahuan peristiwa, Anda memerlukan hal berikut:

  • Amazon Resource Name (ARN) untuk topik Amazon SNS

  • Berlangganan topik Amazon SNS yang valid. Dengan itu, pelanggan topik diberi tahu saat pesan dipublikasikan ke topik Amazon SNS Anda.

Antrean Amazon SQS

Amazon SQS menawarkan antrean hostingan yang andal dan dapat diskalakan untuk menyimpan pesan saat mereka bepergian antar komputer. Anda dapat menggunakan Amazon SQS untuk mengirimkan volume data apa pun tanpa memerlukan layanan lain untuk selalu tersedia. Anda dapat menggunakan konsol Amazon SQS untuk membuat antrean Amazon SQS yang dapat dikirimkan pemberitahuan Anda.

Antrian Amazon SQS harus sama Wilayah AWS dengan bucket Amazon S3 Anda. Untuk petunjuk tentang cara membuat antrean Amazon SQS, lihat Apa itu Amazon Simple Queue Service dan Memulai dengan Amazon SQS di Panduan Pengembang Amazon Simple Storage Service.

Sebelum Anda dapat menggunakan antrean Amazon SQS sebagai tujuan pemberitahuan peristiwa, Anda memerlukan berikut ini:

  • Amazon Resource Name (ARN) untuk antrean Amazon SQS

catatan

Antrean Amazon Simple Queue Service FIFO (First-In-First-Out) tidak didukung sebagai tujuan pemberitahuan peristiwa Amazon S3. Untuk mengirim pemberitahuan untuk acara Amazon S3 ke antrian FIFO Amazon SQS, Anda dapat menggunakan Amazon. EventBridge Untuk informasi selengkapnya, lihat Mengaktifkan Amazon EventBridge.

Fungsi Lambda

Anda dapat menggunakan AWS Lambda untuk memperluas AWS layanan lain dengan logika khusus, atau membuat backend Anda sendiri yang beroperasi pada AWS skala, kinerja, dan keamanan. Dengan Lambda, Anda dapat membuat aplikasi terpisah berbasis peristiwa yang berjalan hanya saat diperlukan. Anda juga dapat menggunakannya untuk menskalakan aplikasi ini secara otomatis dari beberapa permintaan sehari hingga ribuan detik.

Lambda dapat menjalankan kode kustom sebagai respons terhadap peristiwa bucket Amazon S3. Anda unggah kode kustom Anda ke Lambda dan membuat apa yang disebut fungsi Lambda. Saat Amazon S3 mendeteksi peristiwa dari jenis tertentu, Amazon S3 dapat memublikasikan acara ke AWS Lambda dan memanggil fungsi Anda di Lambda. Sebagai respons, Lambda menjalankan fungsi Anda. Salah satu jenis peristiwa yang mungkin dideteksi, misalnya, adalah peristiwa yang dibuat objek.

Anda dapat menggunakan AWS Lambda konsol untuk membuat fungsi Lambda yang menggunakan AWS infrastruktur untuk menjalankan kode atas nama Anda. Fungsi Lambda harus berada di Wilayah yang sama dengan bucket S3. Anda juga harus memiliki nama atau ARN dari fungsi Lambda untuk mengatur fungsi Lambda sebagai tujuan notifikasi peristiwa.

Awas

Jika notifikasi Anda akhirnya menulis ke bucket yang sama yang memicu notifikasi, ini dapat menyebabkan loop eksekusi. Misalnya, jika bucket memicu fungsi Lambda setiap kali suatu objek diunggah, dan fungsinya mengunggah sebuah objek ke bucket, maka fungsi tersebut secara tidak langsung memicu fungsi itu sendiri. Untuk menghindari hal ini, gunakan dua bucket, atau konfigurasikan pemicu agar hanya berlaku pada prefiks yang digunakan untuk objek masuk.

Untuk informasi selengkapnya dan contoh penggunaan notifikasi Amazon S3 dengan AWS Lambda, lihat Menggunakan AWS Lambda dengan Amazon S3 di AWS Lambda Panduan Pengembang.

Amazon EventBridge

Amazon EventBridge adalah bus acara tanpa server, yang menerima acara dari AWS layanan. Anda dapat mengatur aturan untuk mencocokkan peristiwa dan mengirimkannya ke target, seperti layanan AWS atau titik akhir HTTP. Untuk informasi selengkapnya, lihat Apa yang ada EventBridge di Panduan EventBridge Pengguna Amazon.

Tidak seperti tujuan lain, Anda dapat mengaktifkan atau menonaktifkan acara yang akan dikirimkan EventBridge untuk ember. Jika Anda mengaktifkan pengiriman, semua acara dikirim ke EventBridge. Selain itu, Anda dapat menggunakan EventBridge aturan untuk merutekan acara ke target tambahan.

Jenis event yang didukung untuk SQS, SNS, dan Lambda

Amazon S3 dapat menerbitkan peristiwa dari jenis berikut. Anda menentukan jenis peristiwa ini di konfigurasi pemberitahuan.

Jenis peristiwa Deskripsi

s3:TestEvent

Ketika notifikasi diaktifkan, Amazon S3 menerbitkan notifikasi tes. Hal ini untuk memastikan bahwa topik ada dan bahwa pemilik bucket memiliki izin untuk mempublikasikan topik tertentu.

Jika mengaktifkan notifikasi gagal, Anda tidak menerima notifikasi tes.

s3:ObjectCreated:*

s3:ObjectCreated:Put

s3:ObjectCreated:Post

s3:ObjectCreated:Copy

s3:ObjectCreated:CompleteMultipartUpload

Operasi API Amazon S3 sepertiPUT,POST, dan COPY dapat membuat objek. Dengan jenis peristiwa ini, Anda dapat mengaktifkan notifikasi saat objek dibuat menggunakan operasi API tertentu. Atau, Anda dapat menggunakan jenis peristiwa s3:ObjectCreated:* untuk meminta notifikasi terlepas dari API yang digunakan untuk membuat objek.

s3:ObjectCreated:CompleteMultipartUploadtermasuk objek yang dibuat menggunakan UploadPartCopyuntuk operasi Salin.

s3:ObjectRemoved:*

s3:ObjectRemoved:Delete

s3:ObjectRemoved:DeleteMarkerCreated

Dengan menggunakan tipe peristiwa ObjectRemoved, Anda dapat mengaktifkan pemberitahuan saat objek atau batch objek dihapus dari bucket.

Anda dapat meminta pemberitahuan saat objek dihapus atau objek versi dihapus secara permanen menggunakan jenis peristiwa s3:ObjectRemoved:Delete. Atau, Anda dapat meminta notifikasi saat penanda penghapusan dibuat untuk objek versi menggunakan s3:ObjectRemoved:DeleteMarkerCreated. Untuk petunjuk cara menghapus objek berversi, lihat Menghapus versi objek dari bucket dengan dukungan Penentuan Versi. Anda juga dapat menggunakan wildcard s3:ObjectRemoved:* untuk meminta pemberitahuan kapan pun sebuah objek dihapus.

Pemberitahuan peristiwa ini tidak memperingatkan Anda untuk penghapusan otomatis dari konfigurasi siklus aktif atau dari operasi yang gagal.

s3:ObjectRestore:*

s3:ObjectRestore:Post

s3:ObjectRestore:Completed

s3:ObjectRestore:Delete

Dengan menggunakan jenis ObjectRestore acara, Anda dapat menerima pemberitahuan untuk inisiasi dan penyelesaian acara saat memulihkan objek dari kelas penyimpanan Pengambilan Fleksibel Gletser S3, kelas penyimpanan S3 Glacier Deep Archive, tingkat Akses Arsip Tingkat Cerdas S3, dan tingkat Akses Arsip Tingkat Cerdas S3. Anda juga dapat menerima pemberitahuan ketika salinan objek yang dipulihkan kedaluwarsa.

Jenis peristiwa s3:ObjectRestore:Post memberi tahu Anda tentang inisiasi restorasi objek. Jenis peristiwa s3:ObjectRestore:Completed memberi tahu Anda tentang penyelesaian restorasi. Jenis peristiwa s3:ObjectRestore:Delete memberi tahu Anda saat salinan sementara objek yang dipulihkan kedaluwarsa.

s3:ReducedRedundancyLostObject Anda menerima peristiwa notifikasi ini saat Amazon S3 mendeteksi bahwa objek kelas penyimpanan RRS hilang.

s3:Replication:*

s3:Replication:OperationFailedReplication

s3:Replication:OperationMissedThreshold

s3:Replication:OperationReplicatedAfterThreshold

s3:Replication:OperationNotTracked

Dengan menggunakan jenis Replication acara, Anda dapat menerima pemberitahuan untuk konfigurasi replikasi yang mengaktifkan metrik Replikasi S3 atau Kontrol Waktu Replikasi S3 (S3 RTC). Anda dapat memantau minute-by-minute kemajuan peristiwa replikasi dengan melacak byte yang tertunda, operasi tertunda, dan latensi replikasi. Untuk informasi tentang metrik replikasi, lihat Memantau replikasi dengan metrik, pemberitahuan acara, dan status.

  • Jenis peristiwa s3:Replication:OperationFailedReplication memberi tahu Anda saat objek yang memenuhi syarat untuk replikasi gagal mereplikasi.

  • Jenis s3:Replication:OperationMissedThreshold acara memberi tahu Anda ketika objek yang memenuhi syarat untuk replikasi yang menggunakan S3 RTC melebihi ambang batas 15 menit untuk replikasi.

  • Jenis s3:Replication:OperationReplicatedAfterThreshold acara memberi tahu Anda saat objek yang memenuhi syarat untuk replikasi yang menggunakan S3 RTC bereplikasi setelah ambang batas 15 menit.

  • Jenis s3:Replication:OperationNotTracked acara memberi tahu Anda saat objek yang memenuhi syarat untuk replikasi langsung (baik Same-Region Replication [SRR] atau Cross-Region Replication [CRR]) tidak lagi dilacak oleh metrik replikasi.

s3:LifecycleExpiration:*

s3:LifecycleExpiration:Delete

s3:LifecycleExpiration:DeleteMarkerCreated

Dengan menggunakan jenis LifecycleExpiration acara, Anda dapat menerima pemberitahuan saat Amazon S3 menghapus objek berdasarkan konfigurasi Siklus Hidup S3 Anda.

Jenis peristiwa s3:LifecycleExpiration:Delete akan memberi tahu Anda saat objek dalam bucket yang tidak berversi dihapus. Ini juga memberi tahu Anda ketika versi objek dihapus secara permanen oleh konfigurasi Siklus Hidup S3. Jenis peristiwa s3:LifecycleExpiration:DeleteMarkerCreated akan memberi tahu Anda saat Siklus Hidup S3 membuat penanda hapus saat versi objek saat ini dalam bucket berversi dihapus.

s3:LifecycleTransition Anda menerima peristiwa notifikasi ini saat objek dialihkan ke kelas penyimpanan Amazon S3 lainnya dengan konfigurasi Siklus Hidup S3.
s3:IntelligentTiering Anda menerima peristiwa notifikasi ini ketika objek dalam kelas penyimpanan S3 Intelligent-Tiering pindah ke tingkat Archive Access atau tingkat Deep Archive Access.

s3:ObjectTagging:*

s3:ObjectTagging:Put

s3:ObjectTagging:Delete

Dengan menggunakan jenis ObjectTagging acara, Anda dapat mengaktifkan notifikasi saat tag objek ditambahkan atau dihapus dari objek.

Jenis peristiwa s3:ObjectTagging:Put memberi tahu Anda saat tag PUT pada objek atau tag yang ada diperbarui. Jenis peristiwa s3:ObjectTagging:Delete memberi tahu Anda saat tag dihapus dari objek.

s3:ObjectAcl:Put Anda menerima peristiwa pemberitahuan ini ketika ACL PUT pada objek atau ketika ACL yang ada diubah. Peristiwa tidak dihasilkan ketika permintaannya tidak menghasilkan perubahan pada ACL objek.

Jenis acara yang didukung untuk Amazon EventBridge

Untuk daftar jenis acara yang akan dikirimkan Amazon S3 ke Amazon EventBridge, lihat. Menggunakan EventBridge

Pemesanan acara dan duplikat acara

Pemberitahuan Acara Amazon S3 dirancang untuk mengirimkan pemberitahuan setidaknya sekali, tetapi pemberitahuan tersebut tidak dijamin tiba dalam urutan yang sama dengan peristiwa yang terjadi. Pada kesempatan yang jarang terjadi, mekanisme coba ulang Amazon S3 dapat menyebabkan duplikat Pemberitahuan Acara S3 untuk peristiwa objek yang sama. Untuk selengkapnya tentang penanganan kejadian duplikat atau di luar pesanan, lihat Mengelola pemesanan acara dan duplikat peristiwa dengan Pemberitahuan Acara Amazon S3 di AWS Blog Penyimpanan.