

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

# Mengelola siklus hidup objek
<a name="object-lifecycle-mgmt"></a>

Siklus Hidup S3 membantu Anda menyimpan objek secara efektif sepanjang siklus hidupnya dengan mentransisisinya ke kelas penyimpanan berbiaya lebih rendah, atau, menghapus objek kedaluwarsa atas nama Anda. Untuk mengelola siklus hidup objek, buat konfigurasi *Siklus Hidup S3 untuk bucket* Anda. Konfigurasi Siklus Hidup S3 adalah serangkaian aturan yang menetapkan tindakan yang diterapkan Amazon S3 pada sekelompok objek. Ada dua jenis tindakan:
+ **Tindakan transisi**–Tindakan ini menentukan kapan objek bertransisi ke kelas penyimpanan lainnya. Misalnya, Anda dapat memilih untuk melakukan transisi objek ke kelas penyimpanan S3 Standard-IA dalam waktu 30 hari setelah membuatnya, atau mengarsipkan objek ke kelas penyimpanan S3 Glacier Flexible Retrieval satu tahun setelah membuatnya. Untuk informasi selengkapnya, lihat [Memahami dan mengelola kelas penyimpanan Amazon S3](storage-class-intro.md). 

  Ada biaya yang terkait dengan permintaan transisi siklus hidup. Untuk informasi harga, lihat [Harga Amazon S3](https://aws.amazon.com/s3/pricing/).
+ **Tindakan kedaluwarsa**–Tindakan ini menentukan kapan objek kedaluwarsa. Amazon S3 menghapus objek kedaluwarsa atas nama Anda. Misalnya, Anda mungkin memilih untuk kedaluwarsa objek setelah disimpan selama periode kepatuhan peraturan. Untuk informasi selengkapnya, lihat [Mengakhiri objek](lifecycle-expire-general-considerations.md).

  Ada potensi biaya yang terkait dengan kedaluwarsa siklus hidup hanya ketika Anda kedaluwarsa objek di kelas penyimpanan dengan durasi penyimpanan minimum. Untuk informasi selengkapnya, lihat [Biaya durasi penyimpanan minimum](lifecycle-expire-general-considerations.md#lifecycle-expire-minimum-storage).

**penting**  
**Bucket tujuan umum** — Anda tidak dapat menggunakan kebijakan bucket untuk mencegah penghapusan atau transisi oleh aturan Siklus Hidup S3. Misalnya, meskipun kebijakan bucket Anda menolak semua tindakan untuk semua prinsipal, konfigurasi Siklus Hidup S3 Anda tetap berfungsi seperti biasa.

**Objek yang ada dan baru**  
Ketika Anda menambahkan konfigurasi Siklus Hidup ke dalam bucket, aturan konfigurasi berlaku untuk objek yang ada dan objek yang Anda tambahkan kemudian. Misalnya, jika Anda menambahkan aturan konfigurasi Siklus Hidup hari ini dengan tindakan kedaluwarsa yang menyebabkan objek kedaluwarsa 30 hari setelah pembuatan, Amazon S3 akan mengantri untuk menghapus objek yang ada yang berumur lebih dari 30 hari.

**Perubahan dalam penagihan**  
Jika ada penundaan antara saat objek memenuhi syarat untuk tindakan siklus hidup dan saat Amazon S3 mentransfer atau mengakhiri objek Anda, perubahan penagihan akan diterapkan segera setelah objek memenuhi syarat untuk tindakan siklus hidup. Misalnya, jika objek dijadwalkan kedaluwarsa dan Amazon S3 tidak segera kedaluwarsa objek, Anda tidak akan dikenakan biaya penyimpanan setelah waktu kedaluwarsa. 

Satu pengecualian untuk perilaku ini adalah jika Anda memiliki aturan siklus hidup untuk bertransisi ke kelas penyimpanan S3 Intelligent-Tiering. Dalam hal ini, perubahan penagihan tidak terjadi hingga objek telah ditransisikan ke S3 Intelligent-Tiering. Untuk informasi selengkapnya tentang aturan Siklus Hidup S3, lihat [Elemen konfigurasi Siklus Hidup](intro-lifecycle-rules.md). 

**catatan**  
Tidak ada biaya pengambilan data untuk transisi siklus hidup. Namun, ada biaya konsumsi per permintaan saat menggunakan`PUT`,`COPY`, atau aturan siklus hidup untuk memindahkan data ke kelas penyimpanan S3 apa pun. Pertimbangkan biaya konsumsi atau transisi sebelum memindahkan objek ke kelas penyimpanan apa pun. Untuk informasi selengkapnya tentang pertimbangan biaya, lihat [Harga Amazon S3](https://aws.amazon.com/s3/pricing/).

**Memantau pengaruh aturan siklus hidup**  
Untuk memantau efek pembaruan yang dibuat oleh aturan siklus hidup aktif, lihat. [Bagaimana cara memantau tindakan yang diambil oleh aturan siklus hidup saya?](troubleshoot-lifecycle.md#troubleshoot-lifecycle-2)

## Mengelola siklus hidup objek yang lengkap
<a name="lifecycle-config-overview-what"></a>

Dengan aturan konfigurasi Siklus Hidup S3, Anda dapat memberi tahu Amazon S3 untuk mengalihkan objek ke kelas penyimpanan yang lebih murah, mengarsipkan atau menghapusnya. Contoh: 
+ Jika Anda mengunggah log berkala ke bucket, aplikasi Anda mungkin memerlukannya selama seminggu atau sebulan. Setelah itu, Anda mungkin ingin menghapusnya.
+ Beberapa dokumen sering diakses untuk periode waktu terbatas. Setelah itu, dokumen tersebut jarang diakses. Sewaktu-waktu, Anda mungkin tidak memerlukan akses waktu nyata, tetapi organisasi atau peraturan Anda mungkin mengharuskan Anda untuk mengarsipkannya selama periode tertentu. Setelah itu, Anda dapat menghapusnya. 
+ Anda dapat mengunggah beberapa jenis data ke Amazon S3 terutama untuk tujuan pengarsipan. Misalnya, Anda dapat mengarsipkan media digital, catatan keuangan, dan perawatan kesehatan, data urutan genomik mentah, cadangan basis data jangka panjang, dan data yang harus disimpan untuk kepatuhan terhadap peraturan.

Dengan menggabungkan tindakan Siklus Hidup S3 untuk mengelola siklus hidup lengkap objek. Misalnya, bayangkan objek yang Anda buat memiliki siklus hidup yang didefinisikan dengan baik. Pada awalnya, objek sering diakses selama periode 30 hari. Kemudian, objek jarang diakses hingga 90 hari. Setelah itu, objek tidak lagi diperlukan, jadi Anda dapat memilih untuk mengarsipkan atau menghapusnya. 

Dalam skenario ini, Anda dapat membuat aturan Siklus Hidup S3, yaitu Anda menentukan tindakan transisi awal ke penyimpanan S3 Intelligent-Tiering, S3 Standard-IA, atau S3 One Zone-IA, tindakan transisi lain ke penyimpanan S3 Glacier Flexible Retrieval untuk pengarsipan, dan tindakan kedaluwarsa. Saat Anda memindahkan objek dari satu kelas penyimpanan ke kelas penyimpanan lainnya, Anda menghemat biaya penyimpanan. Untuk informasi selengkapnya tentang pertimbangan biaya, lihat [Harga Amazon S3](https://aws.amazon.com/s3/pricing/).

**Topics**
+ [Mengelola siklus hidup objek yang lengkap](#lifecycle-config-overview-what)
+ [Transisi objek menggunakan Siklus Hidup Amazon S3](lifecycle-transition-general-considerations.md)
+ [Mengakhiri objek](lifecycle-expire-general-considerations.md)
+ [Menyetel konfigurasi Siklus Hidup S3 pada bucket](how-to-set-lifecycle-configuration-intro.md)
+ [Bagaimana Siklus Hidup S3 berinteraksi dengan konfigurasi bucket lainnya](lifecycle-and-other-bucket-config.md)
+ [Mengonfigurasi pemberitahuan acara Siklus Hidup S3](lifecycle-configure-notification.md)
+ [Elemen konfigurasi Siklus Hidup](intro-lifecycle-rules.md)
+ [Bagaimana Amazon S3 menangani konflik dalam konfigurasi siklus hidup](lifecycle-conflicts.md)
+ [Contoh konfigurasi Siklus Hidup S3](lifecycle-configuration-examples.md)
+ [Memecahkan masalah Siklus Hidup Amazon S3](troubleshoot-lifecycle.md)

# Transisi objek menggunakan Siklus Hidup Amazon S3
<a name="lifecycle-transition-general-considerations"></a>

Anda dapat menambahkan tindakan transisi ke konfigurasi Siklus Hidup S3 untuk memberi tahu Amazon S3 agar memindahkan objek ke kelas penyimpanan Amazon S3 lainnya. Untuk informasi selengkapnya tentang kelas penyimpanan, lihat [Memahami dan mengelola kelas penyimpanan Amazon S3](storage-class-intro.md). Beberapa contoh kapan Anda dapat menggunakan konfigurasi Siklus Hidup S3 dengan cara ini termasuk berikut ini:
+ Ketika Anda mengetahui bahwa objek jarang diakses, Anda dapat mengalihkannya ke kelas penyimpanan S3 Standard-IA.
+ Anda mungkin ingin mengarsipkan objek yang tidak perlu Anda akses secara real time ke kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive.

**catatan**  
Objek terenkripsi tetap dienkripsi selama proses transisi kelas penyimpanan.

## Transisi yang didukung
<a name="lifecycle-general-considerations-transition-sc"></a>

Dalam konfigurasi Siklus Hidup S3, Anda dapat menentukan aturan untuk transisi objek dari satu kelas penyimpanan ke kelas penyimpanan lainnya guna menghemat biaya penyimpanan. Saat Anda tidak mengetahui pola akses objek Anda, atau pola akses Anda berubah seiring waktu berjalan, Anda dapat melakukan transisi objek ke kelas penyimpanan S3 Intelligent-Tiering untuk penghematan biaya otomatis. Untuk informasi tentang kelas penyimpanan, lihat [Memahami dan mengelola kelas penyimpanan Amazon S3](storage-class-intro.md). 

Amazon S3 mendukung model air terjun untuk transisi antar kelas penyimpanan, seperti yang ditunjukkan pada diagram berikut. 

![\[Grafis air terjun kelas penyimpanan Amazon S3.\]](http://docs.aws.amazon.com/id_id/AmazonS3/latest/userguide/images/lifecycle-transitions-v4.png)


### Transisi siklus hidup yang didukung
<a name="supported-lifecycle-transitions"></a>

Amazon S3 mendukung transisi siklus hidup antara kelas penyimpanan berikut menggunakan konfigurasi Siklus Hidup S3. 
+ Kelas penyimpanan Standar S3 untuk kelas penyimpanan IA Standar S3-IA, S3 Intelligent-Tiering, S3 One Zone-IA, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval, atau S3 Glacier Deep Archive kelas penyimpanan.
+ Kelas penyimpanan S3 Standard-IA ke kelas penyimpanan S3 Intelligent-Tiering, S3 One Zone-IA, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval, atau S3 Glacier Deep Archive.
+ Kelas penyimpanan S3 Intelligent-Tiering dapat bertransisi ke kelas penyimpanan yang berbeda tergantung pada tingkat akses S3 Intelligent-Tiering. Transisi berikut dimungkinkan untuk setiap tingkat akses.
  + Tingkat Akses Sering atau tingkat Akses Jarang ke kelas penyimpanan IA S3 One Zone-IA, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval, atau S3 Glacier Deep Archive.
  + Arsipkan tingkat Akses Instan ke S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval, atau kelas penyimpanan S3 Glacier Deep Archive.
  + Arsipkan Tingkat Akses ke S3 Glacier Flexible Retrieval, atau kelas penyimpanan S3 Glacier Deep Archive.
  + Tingkat akses Deep Archive ke kelas penyimpanan S3 Glacier Deep Archive.
+ Kelas penyimpanan S3 One Zone-IA ke kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive.
+ Kelas penyimpanan S3 Glacier Instant Retrieval ke kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive.
+ Kelas penyimpanan S3 Glacier Flexible Retrieval ke kelas penyimpanan S3 Glacier Deep Archive.

**catatan**  
Untuk mengaktifkan versi atau membuat versi bucket yang ditangguhkan, Anda tidak dapat mentransisikan objek dengan status replikasi atau. `Pending` `Failed`

## Kendala dan pertimbangan untuk transisi
<a name="lifecycle-configuration-constraints"></a>

Transisi kelas penyimpanan siklus hidup memiliki kendala berikut:

**Objek yang lebih kecil dari 128 KB tidak akan bertransisi secara default ke kelas penyimpanan apa pun**  
Amazon S3 menerapkan perilaku default ke konfigurasi Siklus Hidup S3 yang mencegah objek yang lebih kecil dari 128 KB dialihkan ke kelas penyimpanan apa pun. Kami tidak menyarankan transisi objek kurang dari 128 KB karena Anda dikenakan biaya permintaan transisi untuk setiap objek. Ini berarti, untuk objek yang lebih kecil, biaya transisi dapat lebih besar daripada penghematan penyimpanan. Untuk informasi selengkapnya tentang biaya permintaan transisi, lihat **Permintaan & pengambilan data** di tab **Penyimpanan & permintaan** di halaman [harga Amazon S3](https://aws.amazon.com/s3/pricing/).

 Untuk mengizinkan objek yang lebih kecil bertransisi, Anda dapat menambahkan [filter ukuran objek](intro-lifecycle-rules.md#intro-lifecycle-rules-filter) ke aturan transisi Siklus Hidup yang menentukan ukuran minimum kustom (`ObjectSizeGreaterThan`) atau ukuran maksimum (). `ObjectSizeLessThan` Untuk informasi selengkapnya, lihat [Contoh: Mengizinkan objek yang lebih kecil dari 128 KB untuk dialihkan](lifecycle-configuration-examples.md#lc-small-objects). 

**catatan**  
Pada bulan September 2024 Amazon S3 memperbarui perilaku transisi default untuk objek kecil, sebagai berikut:  
**Perilaku transisi default yang diperbarui** — Mulai September 2024, perilaku default mencegah objek yang lebih kecil dari 128 KB dialihkan ke kelas penyimpanan apa pun.
**Perilaku transisi default sebelumnya** — Sebelum September 2024, perilaku default memungkinkan objek yang lebih kecil dari 128 KB untuk dialihkan hanya ke kelas penyimpanan S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive.
Konfigurasi yang dibuat sebelum September 2024 mempertahankan perilaku transisi sebelumnya kecuali Anda memodifikasinya. Artinya, jika Anda membuat, mengedit, atau menghapus aturan, perilaku transisi default untuk konfigurasi Anda berubah ke perilaku yang diperbarui. Jika kasus penggunaan membutuhkan, Anda dapat mengubah perilaku transisi default sehingga objek yang lebih kecil dari 128KB akan bertransisi ke S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive. Untuk melakukan ini, gunakan `x-amz-transition-default-minimum-object-size` header opsional dalam [PutBucketLifecycleConfiguration](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)permintaan.

**Objek harus disimpan setidaknya selama 30 hari sebelum beralih ke S3 Standard-IA atau S3 One Zone-IA**  
Sebelum Anda melakukan transisi objek ke S3 Standard-IA atau S3 One Zone-IA, Anda harus menyimpannya setidaknya 30 hari di Amazon S3. Misalnya, Anda tidak dapat membuat aturan Siklus Hidup untuk memindahkan objek ke kelas penyimpanan S3 Standard-IA satu hari setelah Anda membuatnya. Amazon S3 tidak mendukung transisi ini dalam 30 hari pertama karena objek yang lebih baru sering diakses atau dihapus lebih cepat daripada yang sesuai untuk penyimpanan S3 Standard-IA atau S3 One Zone-IA.

Demikian pula, jika Anda sedang melakukan transisi objek lama (dalam bucket berversi), Anda hanya dapat melakukan transisi objek yang setidaknya 30 hari lamanya ke penyimpanan S3 Standard-IA atau S3 One Zone-IA. Untuk daftar durasi penyimpanan minimum untuk semua kelas penyimpanan, lihat[Membandingkan kelas penyimpanan Amazon S3](storage-class-intro.md#sc-compare).

**Anda dikenakan biaya untuk mentransisikan objek sebelum durasi penyimpanan minimumnya**  
Kelas penyimpanan tertentu memiliki durasi penyimpanan objek minimum. Jika Anda mengalihkan objek dari kelas penyimpanan ini sebelum durasi minimum, Anda akan dikenakan biaya untuk sisa durasi tersebut. Untuk informasi selengkapnya tentang kelas penyimpanan mana yang memiliki durasi penyimpanan minimum, lihat[Membandingkan kelas penyimpanan Amazon S3](storage-class-intro.md#sc-compare).

Anda tidak dapat membuat aturan Siklus Hidup tunggal yang mentransisikan objek dari satu kelas penyimpanan ke kelas penyimpanan lainnya sebelum periode durasi penyimpanan minimum berlalu.

 Misalnya, S3 Glacier Instant Retrieval memiliki durasi penyimpanan minimum 90 hari. Anda tidak dapat menentukan aturan siklus hidup yang mentransisikan objek ke S3 Glacier Instant Retrieval setelah 4 hari, lalu mentransisikan objek ke S3 Glacier Deep Archive setelah 20 hari. Dalam hal ini transisi S3 Glacier Deep Archive harus terjadi setelah setidaknya 94 hari.

Anda dapat menentukan dua aturan untuk mencapai hal ini, tetapi Anda membayar biaya penyimpanan durasi minimum. Untuk informasi selengkapnya tentang pertimbangan biaya, lihat [Harga Amazon S3](https://aws.amazon.com/s3/pricing/).

Untuk informasi selengkapnya tentang membuat Siklus Hidup S3, lihat. [Menyetel konfigurasi Siklus Hidup S3 pada bucket](how-to-set-lifecycle-configuration-intro.md)

## Transisi ke kelas penyimpanan S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive (pengarsipan objek)
<a name="before-deciding-to-archive-objects"></a>

Dengan menggunakan konfigurasi Siklus Hidup S3, Anda dapat mentransisikan objek ke kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive untuk pengarsipan.

Sebelum mengarsipkan objek, pelajari bagian berikut untuk pertimbangan yang relevan.

### Pertimbangan umum
<a name="transition-glacier-general-considerations"></a>

Berikut ini adalah pertimbangan umum yang perlu Anda pertimbangkan sebelum mengarsipkan objek:
+ Objek terenkripsi tetap dienkripsi selama proses transisi kelas penyimpanan.
+ Objek yang disimpan di kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive tidak tersedia secara waktu nyata.

  Objek yang diarsipkan adalah objek Amazon S3, tetapi sebelum Anda dapat mengakses objek yang diarsipkan, Anda harus memulihkan salinan sementara terlebih dahulu. Salinan objek yang dipulihkan hanya tersedia selama durasi yang Anda tentukan dalam permintaan pemulihan. Setelah itu, Amazon S3 menghapus salinan sementara, dan objek tetap diarsipkan di S3 Glacier Flexible Retrieval. 

  Anda dapat memulihkan objek dengan menggunakan konsol Amazon S3 atau secara terprogram dengan menggunakan pustaka pembungkus AWS SDK atau Amazon S3 REST API dalam kode Anda. Untuk informasi selengkapnya, lihat [Memulihkan objek yang diarsipkan](restoring-objects.md).
+ Objek yang disimpan di kelas penyimpanan S3 Glacier Flexible Retrieval hanya dapat dialihkan ke kelas penyimpanan S3 Glacier Deep Archive.

  Anda dapat menggunakan aturan konfigurasi Siklus Hidup S3 untuk mengonversi kelas penyimpanan objek dari S3 Glacier Flexible Retrieval ke kelas penyimpanan S3 Glacier Deep Archive saja. Jika Anda ingin mengubah kelas penyimpanan objek yang disimpan dalam S3 Glacier Flexible Retrieval ke kelas penyimpanan selain S3 Glacier Deep Archive, Anda harus menggunakan operasi pemulihan untuk membuat salinan sementara dari objek terlebih dahulu. Kemudian gunakan operasi penyalinan untuk menimpa objek yang menentukan S3 Standard, S3 Intelligent-Tiering, S3 Standard-IA, S3 One Zone-IA, atau Reduced Redundancy sebagai kelas penyimpanan.
+ Transisi objek ke kelas penyimpanan S3 Glacier Deep Archive hanya dapat menggunakan satu cara.

  Anda tidak dapat menggunakan aturan konfigurasi Siklus Hidup S3 untuk mengonversi kelas penyimpanan objek dari S3 Glacier Deep Archive ke kelas penyimpanan lainnya. Jika Anda ingin mengubah kelas penyimpanan dari objek yang diarsipkan ke kelas penyimpanan lain, Anda harus menggunakan operasi pemulihan untuk membuat salinan sementara dari objek terlebih dahulu. Kemudian gunakan operasi penyalinan untuk menimpa objek yang menentukan S3 Standard, S3 Intelligent-Tiering, S3 Standard-IA, S3 One Zone-IA, S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval, atau Reduced Redundancy Storage sebagai kelas penyimpanan.
**catatan**  
Operasi Salin untuk objek yang dipulihkan tidak didukung di konsol S3 Amazon untuk objek di kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive. Untuk jenis operasi Copy ini, gunakan AWS Command Line Interface (AWS CLI), the AWS SDKs, atau REST API.

  Objek yang disimpan di kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive hanya dapat dilihat dan tersedia melalui Amazon S3. Mereka tidak tersedia melalui layanan Amazon Glacier yang terpisah.

  Ini adalah objek Amazon S3, dan Anda dapat mengaksesnya hanya dengan menggunakan konsol Amazon S3 atau API Amazon S3. Anda tidak dapat mengakses objek yang diarsipkan melalui konsol Amazon Glacier terpisah atau Amazon Glacier API.

### Pertimbangan biaya
<a name="glacier-pricing-considerations"></a>

Jika Anda berencana untuk mengarsipkan data yang jarang diakses selama beberapa bulan atau tahun, kelas penyimpanan S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive dapat mengurangi biaya penyimpanan Anda. Namun, untuk memastikan bahwa kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive sesuai bagi Anda, pertimbangkan hal berikut ini:
+ **Biaya overhead penyimpanan**–Saat Anda melakukan transisi objek ke kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive, jumlah penyimpanan tetap ditambahkan ke setiap objek untuk mengakomodasi metadata pengelolaan objek.
  + Untuk setiap objek yang diarsipkan ke S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive, Amazon S3 menggunakan penyimpanan 8 KB untuk nama objek dan metadata lainnya. Amazon S3 menyimpan metadata ini sehingga Anda bisa mendapatkan daftar objek yang diarsipkan secara waktu nyata dengan menggunakan API Amazon S3. Untuk informasi selengkapnya, lihat [Get Bucket (Daftar Objek)](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketGET.html). Anda dikenakan tarif Standar S3 untuk penyimpanan tambahan ini.
  +  Untuk setiap objek yang diarsipkan ke S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive, Amazon S3 menambahkan penyimpanan 32 KB untuk indeks dan metadata terkait. Data ekstra ini diperlukan untuk mengidentifikasi dan memulihkan objek Anda. Anda dikenakan tarif S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive untuk penyimpanan tambahan ini.

  Jika Anda mengarsipkan objek kecil, pertimbangkan biaya penyimpanan ini. Pertimbangkan juga untuk menggabungkan banyak objek kecil menjadi sejumlah kecil objek besar untuk mengurangi biaya overhead.
+ **Jumlah hari yang Anda rencanakan untuk menyimpan objek yang diarsipkan**–S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive adalah solusi pengarsipan jangka panjang. Periode durasi penyimpanan minimal adalah 90 hari untuk kelas penyimpanan S3 Glacier Flexible Retrieval dan 180 hari untuk S3 Glacier Deep Archive. Menghapus data yang diarsipkan ke Amazon Glacier tidak dikenakan biaya jika objek yang Anda hapus diarsipkan selama lebih dari periode durasi penyimpanan minimal. Jika Anda menghapus atau menimpa objek yang diarsipkan dalam periode durasi minimal, Amazon S3 mengenakan biaya penghapusan dini prorata. Untuk informasi tentang biaya penghapusan awal, lihat “Bagaimana saya dikenakan biaya untuk menghapus objek dari Amazon Glacier yang berusia kurang dari 90 hari?” pertanyaan di [FAQ Amazon S3](https://aws.amazon.com/s3/faqs/#Amazon_S3_Glacier). 
+ **Biaya permintaan transisi S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive**–Masing-masing objek yang Anda transisikan ke kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive merupakan satu permintaan transisi. Ada biaya untuk setiap permintaan tersebut. Jika Anda berencana untuk mentransisikan banyak objek, pertimbangkan biaya permintaan. Jika Anda mengarsipkan campuran objek yang menyertakan objek kecil, terutama yang di bawah 128KB, sebaiknya gunakan filter ukuran objek siklus hidup untuk menyaring objek kecil dari transisi Anda guna mengurangi biaya permintaan.
+ **Biaya pemulihan data S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive**–S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive dirancang untuk pengarsipan data jangka panjang yang jarang Anda akses. Untuk informasi tentang biaya pemulihan data, lihat “Berapa biaya untuk mengambil data dari Amazon Glacier?” pertanyaan di [FAQ Amazon S3](https://aws.amazon.com/s3/faqs/#Amazon_S3_Glacier). Untuk informasi tentang cara memulihkan data dari Amazon Glacier, lihat. [Memulihkan objek yang diarsipkan](restoring-objects.md) 

**catatan**  
Siklus Hidup S3 mentransisikan objek ke S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive secara asinkron. Mungkin ada penundaan antara tanggal transisi dalam aturan konfigurasi Siklus Hidup S3 dan tanggal transisi fisik. Dalam hal ini Anda dikenakan tarif default dari kelas penyimpanan tempat Anda beralih berdasarkan tanggal transisi yang ditentukan dalam aturan.

Halaman detail produk Amazon S3 menyediakan informasi harga dan contoh perhitungan untuk mengarsipkan objek Amazon S3. Untuk informasi selengkapnya, lihat topik berikut:
+  “Bagaimana biaya penyimpanan saya dihitung untuk objek Amazon S3 yang diarsipkan ke Amazon Glacier?” di [FAQ Amazon S3](https://aws.amazon.com/s3/faqs/#Amazon_S3_Glacier). 
+  “Bagaimana saya dikenakan biaya untuk menghapus objek dari Amazon Glacier yang berusia kurang dari 90 hari?” di [FAQ Amazon S3](https://aws.amazon.com/s3/faqs/#Amazon_S3_Glacier). 
+  “Berapa biaya untuk mengambil data dari Amazon Glacier?” di [FAQ Amazon S3](https://aws.amazon.com/s3/faqs/#Amazon_S3_Glacier). 
+  [Harga Amazon S3](https://aws.amazon.com/s3/pricing/) untuk biaya penyimpanan untuk berbagai kelas penyimpanan. 

### Memulihkan objek yang diarsipkan
<a name="restore-glacier-objects-concepts"></a>

Objek yang diarsipkan tidak dapat diakses secara real time. Anda harus memulai permintaan pemulihan terlebih dahulu, kemudian menunggu hingga salinan sementara objek tersedia selama durasi yang Anda tentukan dalam permintaan. Setelah Anda menerima salinan sementara dari objek yang dipulihkan, kelas penyimpanan objek tetaplah S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive. (Permintaan operasi A [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectHEAD.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectHEAD.html)atau [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html)API akan mengembalikan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive sebagai kelas penyimpanan.) 

**catatan**  
Saat memulihkan arsip, Anda membayar untuk arsip tersebut (S3 Glacier Flexible Retrieval atau tingkat S3 Glacier Deep Archive) dan salinan yang Anda pulihkan sementara (tingkat penyimpanan S3 Standard). Untuk informasi selengkapnya tentang harga, silakan lihat [Harga Amazon S3](https://aws.amazon.com/s3/pricing/). 

Anda dapat memulihkan salinan objek secara terprogram atau dengan menggunakan konsol Amazon S3. Amazon S3 hanya memproses satu permintaan pemulihan pada satu waktu per objek. Untuk informasi selengkapnya, lihat [Memulihkan objek yang diarsipkan](restoring-objects.md).

# Mengakhiri objek
<a name="lifecycle-expire-general-considerations"></a>

Anda dapat menambahkan tindakan transisi ke konfigurasi Siklus Hidup S3 untuk memberi tahu Amazon S3 agar menghapus objek di akhir masa pakainya. Saat objek mencapai akhir masa pakainya berdasarkan konfigurasi siklus hidupnya, Amazon S3 mengambil `Expiration` tindakan berdasarkan status Pembuatan Versi [S3 tempat](Versioning.md) bucket berada:
+ **Bucket nonversioned** — Amazon S3 mengantri objek untuk dihapus dan menghapusnya secara asinkron, menghapus objek secara permanen. 
+ **Bucket dengan dukungan Penentuan Versi**–Jika versi objek saat ini bukan penanda hapus, Amazon S3 menambahkan penanda hapus dengan ID versi unik. Ini membuat versi saat ini menjadi versi lama, dan penanda hapus menjadi versi saat ini. 
+ **Bucket dengan Penentuan Versi ditangguhkan**–Amazon S3 membuat penanda hapus dengan null sebagai ID versi. Penanda hapus ini menggantikan versi objek apa pun dengan ID versi null dalam hierarki versi, yang secara efektif menghapus objek. 

Untuk bucket berversi (yaitu, berkemampuan versi atau ditangguhkan versi), ada beberapa pertimbangan yang memandu cara Amazon S3 menangani tindakan tersebut. `Expiration` Untuk bucket dengan dukungan Penentuan Versi atau Penentuan Versi ditangguhkan, berlaku berikut ini:
+ Kedaluwarsa objek hanya berlaku untuk versi objek saat ini (tidak memiliki dampak pada versi objek lama).
+ Amazon S3 tidak mengambil tindakan apa pun jika ada satu atau beberapa versi objek dan penanda hapus adalah versi saat ini.
+ Jika versi objek saat ini adalah satu-satunya versi objek dan juga merupakan penanda hapus (juga disebut sebagai *penanda hapus objek kedaluwarsa*, ketika semua versi objek dihapus dan Anda hanya memiliki penanda hapus yang tersisa), Amazon S3 menghapus penanda hapus objek kedaluwarsa. Anda juga dapat menggunakan `Expiration` tindakan untuk mengarahkan Amazon S3 untuk menghapus penanda penghapusan objek yang kedaluwarsa. Sebagai contoh, lihat [Menghapus penanda penghapusan objek yang kedaluwarsa dalam bucket berkemampuan versi](lifecycle-configuration-examples.md#lifecycle-config-conceptual-ex7).
+ Anda dapat menggunakan elemen `NoncurrentVersionExpiration` tindakan untuk mengarahkan Amazon S3 untuk menghapus versi objek noncurrent secara permanen. Objek yang dihapus ini tidak dapat dipulihkan. Anda dapat mendasarkan kedaluwarsa ini pada sejumlah hari tertentu sejak objek menjadi tidak aktif. Selain jumlah hari, Anda juga dapat memberikan jumlah maksimum versi noncurrent untuk dipertahankan (antara 1 dan 100). Nilai ini menentukan berapa banyak versi lama yang harus ada sebelum Amazon S3 dapat melakukan tindakan terkait pada versi tertentu. Untuk menentukan jumlah maksimum versi noncurrent, Anda juga harus menyediakan `Filter` elemen. Jika Anda tidak menentukan `Filter` elemen, Amazon S3 menghasilkan `InvalidRequest` kesalahan saat Anda memberikan jumlah maksimum versi noncurrent. Untuk informasi selengkapnya tentang menggunakan elemen `NoncurrentVersionExpiration` tindakan, lihat[Elemen untuk mendeskripsikan tindakan siklus hidup](intro-lifecycle-rules.md#intro-lifecycle-rules-actions).
+ Amazon S3 tidak mengambil tindakan apa pun pada versi objek yang tidak terkini yang menerapkan konfigurasi Kunci Objek S3.
+ Untuk objek dengan status `Failed` replikasi `Pending` atau, Amazon S3 tidak mengambil tindakan apa pun pada versi objek saat ini atau yang tidak saat ini.

Untuk informasi selengkapnya, lihat [Mempertahankan beberapa versi objek dengan Versi S3](Versioning.md).

**penting**  
Jika Anda memiliki beberapa aturan dalam konfigurasi Siklus Hidup S3, objek dapat memenuhi syarat untuk beberapa tindakan Siklus Hidup S3 pada hari yang sama. Dalam kasus tersebut, Amazon S3 mengikuti aturan umum ini:  
Penghapusan permanen lebih diutamakan daripada transisi.
Transisi lebih diutamakan daripada pembuatan penanda [hapus](DeleteMarker.md).
Ketika objek memenuhi syarat untuk transisi S3 Glacier Flexible Retrieval dan S3 Standard-IA (atau S3 One Zone-IA) transisi, Amazon S3 memilih transisi S3 Glacier Flexible Retrieval.
 Sebagai contoh, lihat [Contoh filter yang tumpang tindih dan tindakan siklus hidup yang bertentangan](lifecycle-conflicts.md#lifecycle-config-conceptual-ex5). 

**Objek yang ada dan baru**  
Ketika Anda menambahkan konfigurasi Siklus Hidup ke dalam bucket, aturan konfigurasi berlaku untuk objek yang ada dan objek yang Anda tambahkan kemudian. Misalnya, jika Anda menambahkan aturan konfigurasi Siklus Hidup hari ini dengan tindakan kedaluwarsa yang menyebabkan objek dengan awalan tertentu kedaluwarsa 30 hari setelah pembuatan, Amazon S3 akan mengantri untuk menghapus objek yang ada yang berusia lebih dari 30 hari dan yang memiliki awalan yang ditentukan.

**penting**  
Anda tidak dapat menggunakan kebijakan bucket untuk mencegah penghapusan atau transisi oleh aturan Siklus Hidup S3. Misalnya, meskipun kebijakan bucket Anda menolak semua tindakan untuk semua prinsipal, konfigurasi Siklus Hidup S3 Anda tetap berfungsi seperti biasa.

## Cara mengetahui kapan objek akan kedaluwarsa
<a name="lifecycle-expire-when"></a>

Untuk mengetahui kapan versi objek saat ini dijadwalkan kedaluwarsa, gunakan operasi [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectHEAD.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectHEAD.html)atau [https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html](https://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectGET.html)API. Operasi API ini mengembalikan header respons yang memberikan tanggal dan waktu di mana versi objek saat ini tidak lagi dapat di-cache. 

**catatan**  
Mungkin ada penundaan antara tanggal kedaluwarsa dan tanggal ketika Amazon S3 menghapus objek. Anda tidak dikenakan biaya kedaluwarsa atau waktu penyimpanan yang terkait dengan objek yang telah kedaluwarsa. 
Sebelum memperbarui, menonaktifkan, atau menghapus aturan Siklus Hidup, gunakan operasi `LIST` API (seperti, [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html), dan [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)) atau untuk memverifikasi [Membuat katalog dan menganalisis data Anda dengan S3 Inventory](storage-inventory.md) bahwa Amazon S3 telah mentransisikan dan menghapus objek yang memenuhi syarat berdasarkan kasus penggunaan Anda.

## Biaya durasi penyimpanan minimum
<a name="lifecycle-expire-minimum-storage"></a>

Jika Anda membuat aturan kedaluwarsa Siklus Hidup S3 yang menyebabkan objek dalam penyimpanan S3 Standard-IA atau S3 One Zone-IA selama kurang dari 30 hari kedaluwarsa, Anda akan dikenakan biaya selama 30 hari. Jika Anda membuat aturan kedaluwarsa Siklus Hidup yang menyebabkan objek dalam penyimpanan S3 Glacier Flexible Retrieval selama kurang dari 90 hari kedaluwarsa, Anda akan dikenakan biaya selama 90 hari. Jika Anda membuat aturan kedaluwarsa Siklus Hidup yang menyebabkan objek dalam penyimpanan S3 Glacier Deep Archive selama kurang dari 180 hari kedaluwarsa, Anda akan dikenakan biaya selama 180 hari.

Untuk informasi selengkapnya, lihat [Harga Amazon S3](https://aws.amazon.com/s3/pricing/).

# Menyetel konfigurasi Siklus Hidup S3 pada bucket
<a name="how-to-set-lifecycle-configuration-intro"></a>

Anda dapat menyetel konfigurasi Siklus Hidup Amazon S3 pada bucket menggunakan konsol Amazon S3, AWS Command Line Interface (AWS CLI), API REST Amazon S3, atau Amazon S3 AWS SDKs REST. Untuk informasi tentang konfigurasi Siklus Hidup S3, lihat [Mengelola siklus hidup objek](object-lifecycle-mgmt.md).

**catatan**  
Untuk melihat atau mengedit konfigurasi siklus hidup bucket direktori, gunakan AWS CLI AWS SDKs, atau Amazon S3 REST API. Untuk informasi selengkapnya, lihat [Bekerja dengan Siklus Hidup S3 untuk bucket direktori](directory-buckets-objects-lifecycle.md).

Dalam konfigurasi Siklus Hidup S3, Anda menggunakan *aturan siklus hidup* untuk menentukan tindakan yang ingin dilakukan Amazon S3 selama masa pakai objek. Misalnya, Anda dapat menentukan aturan untuk mentransisikan objek ke kelas penyimpanan lain, objek arsip, atau objek kedaluwarsa (hapus) setelah jangka waktu tertentu.

## Pertimbangan Siklus Hidup S3
<a name="lifecycle-considerations"></a>

Sebelum Anda mengatur konfigurasi siklus hidup, perhatikan hal berikut ini:

**Penundaan propagasi konfigurasi siklus hidup**  
Saat Anda menambahkan konfigurasi Siklus Hidup S3 ke dalam bucket, biasanya ada beberapa jeda sebelum konfigurasi Siklus Hidup baru atau yang diperbarui sepenuhnya disebarkan ke semua sistem Amazon S3. Perkirakan penundaan beberapa menit sebelum konfigurasi benar-benar berpengaruh. Penundaan ini juga dapat terjadi saat Anda menghapus konfigurasi Siklus Hidup S3.

**Transisi atau penundaan kedaluwarsa**  
Ada penundaan antara saat aturan siklus hidup terpenuhi dan saat tindakan untuk aturan selesai. Misalnya, seperangkat objek kedaluwarsa oleh aturan siklus hidup pada 1 Januari. Meskipun aturan kedaluwarsa telah dipenuhi pada 1 Januari, Amazon S3 mungkin tidak benar-benar menghapus objek ini sampai berhari-hari atau bahkan berminggu-minggu kemudian. Penundaan ini terjadi karena Siklus Hidup S3 mengantri objek untuk transisi atau kedaluwarsa secara asinkron. Saat Anda menambahkan atau memodifikasi aturan Siklus Hidup, Siklus Hidup S3 dapat segera mulai memproses objek yang memenuhi syarat atau dengan beberapa penundaan. Saat Siklus Hidup S3 membuat penanda hapus atau mentransisikan objek, stempel waktu disetel ke UTC tengah malam pada hari tindakan terjadi, terlepas dari waktu aktual tindakan itu diambil. Namun, perubahan dalam penagihan biasanya diterapkan ketika aturan siklus hidup dipenuhi, bahkan jika tindakan tidak selesai. Untuk informasi selengkapnya, lihat [Perubahan dalam penagihan](#lifecycle-billing). Untuk memantau efek pembaruan yang dibuat oleh aturan siklus hidup aktif, lihat [Bagaimana cara memantau tindakan yang diambil oleh aturan siklus hidup saya?](troubleshoot-lifecycle.md#troubleshoot-lifecycle-2)

**catatan**  
Ketika aturan siklus hidup dibuat atau dimodifikasi, objek yang sudah memenuhi kriteria kelayakan dapat segera diproses.

**Memperbarui, menonaktifkan, atau menghapus aturan siklus hidup**  
Saat Anda menonaktifkan atau menghapus aturan siklus hidup, Amazon S3 berhenti menjadwalkan objek baru untuk dihapus atau dialihkan setelah penundaan kecil. Objek yang sudah dijadwalkan menjadi tidak dijadwalkan dan tidak dihapus atau ditransisikan.

**catatan**  
Sebelum memperbarui, menonaktifkan, atau menghapus aturan siklus hidup, gunakan operasi `LIST` API (seperti, [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListObjectsV2.html), dan [https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_ListMultipartUploads.html)) atau untuk memverifikasi [Membuat katalog dan menganalisis data Anda dengan S3 Inventory](storage-inventory.md) bahwa Amazon S3 telah mentransisikan dan menghapus objek yang memenuhi syarat berdasarkan kasus penggunaan Anda. Jika Anda mengalami masalah dengan memperbarui, menonaktifkan, atau menghapus aturan siklus hidup, lihat. [Memecahkan masalah Siklus Hidup Amazon S3](troubleshoot-lifecycle.md)

**Objek yang ada dan baru**  
Ketika Anda menambahkan konfigurasi Siklus Hidup ke dalam bucket, aturan konfigurasi berlaku untuk objek yang ada dan objek yang Anda tambahkan kemudian. Misalnya, jika Anda menambahkan aturan konfigurasi Siklus Hidup hari ini dengan tindakan kedaluwarsa yang menyebabkan objek dengan awalan tertentu kedaluwarsa 30 hari setelah pembuatan, Amazon S3 akan mengantri untuk menghapus objek yang ada yang berusia lebih dari 30 hari dan yang memiliki awalan yang ditentukan.

**Memantau pengaruh aturan siklus hidup**  
Untuk memantau efek pembaruan yang dibuat oleh aturan siklus hidup aktif, lihat [Bagaimana cara memantau tindakan yang diambil oleh aturan siklus hidup saya?](troubleshoot-lifecycle.md#troubleshoot-lifecycle-2)

**Perubahan penagihan**  
Mungkin ada jeda antara saat aturan konfigurasi Siklus Hidup dipenuhi dan saat tindakan yang dipicu dengan memenuhi aturan diambil. Namun, perubahan penagihan terjadi segera setelah aturan konfigurasi Siklus Hidup dipenuhi, meskipun tindakan belum diambil.

Misalnya, setelah waktu kedaluwarsa objek, Anda tidak dikenakan biaya untuk penyimpanan, meskipun objek tidak segera dihapus. Demikian juga, segera setelah waktu transisi objek berlalu, Anda dikenakan biaya tingkat penyimpanan S3 Glacier Flexible Retrieval, bahkan jika objek tidak segera dialihkan ke kelas penyimpanan S3 Glacier Flexible Retrieval. 

Namun, transisi siklus hidup ke kelas penyimpanan S3 Intelligent-Tiering adalah pengecualian. Perubahan penagihan tidak terjadi sampai setelah objek bertransisi ke kelas penyimpanan S3 Intelligent-Tiering. 

**Aturan ganda atau bertentangan**  
Jika Anda memiliki beberapa aturan dalam konfigurasi Siklus Hidup S3, objek dapat memenuhi syarat untuk beberapa tindakan Siklus Hidup S3 pada hari yang sama. Dalam kasus tersebut, Amazon S3 mengikuti aturan umum ini:
+ Penghapusan permanen lebih diutamakan daripada transisi.
+ Transisi lebih diutamakan daripada pembuatan penanda [hapus](DeleteMarker.md).
+ Ketika objek memenuhi syarat untuk transisi S3 Glacier Flexible Retrieval dan S3 Standard-IA (atau S3 One Zone-IA) transisi, Amazon S3 memilih transisi S3 Glacier Flexible Retrieval.

 Sebagai contoh, lihat [Contoh filter yang tumpang tindih dan tindakan siklus hidup yang bertentangan](lifecycle-conflicts.md#lifecycle-config-conceptual-ex5). 

## Cara mengatur konfigurasi Siklus Hidup S3
<a name="how-to-set-lifecycle-configuration"></a>

Anda dapat menyetel konfigurasi Siklus Hidup Amazon S3 pada bucket tujuan umum menggunakan konsol Amazon S3, AWS Command Line Interface (AWS CLI), API REST Amazon S3, atau Amazon S3 AWS SDKs REST. 

Untuk informasi tentang AWS CloudFormation templat dan contoh, lihat [Bekerja dengan AWS CloudFormation templat](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/template-guide.html) dan [https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucket.html#aws-resource-s3-bucket--examples](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-s3-bucket.html#aws-resource-s3-bucket--examples)di *Panduan CloudFormation Pengguna*.

### Menggunakan konsol S3
<a name="create-lifecycle"></a>

Anda dapat menentukan aturan siklus hidup untuk semua objek atau subset objek dalam bucket dengan menggunakan awalan bersama (nama objek yang dimulai dengan string umum) atau tag. Dalam aturan siklus hidup, Anda dapat menentukan tindakan khusus untuk versi objek saat ini dan noncurrent. Untuk informasi selengkapnya, lihat berikut ini:
+ [Mengelola siklus hidup objek](object-lifecycle-mgmt.md)
+ [Mempertahankan beberapa versi objek dengan Versi S3](Versioning.md)

**Untuk membuat aturan siklus hidup**

1. Masuk ke Konsol Manajemen AWS dan buka konsol Amazon S3 di. [https://console.aws.amazon.com/s3/](https://console.aws.amazon.com/s3/)

1. Di panel navigasi kiri, pilih **Bucket tujuan umum**.

1. Dalam daftar bucket, pilih nama bucket yang ingin Anda buat aturan siklus hidup.

1. Pilih tab **Manajemen**, dan pilih **Buat aturan siklus hidup**.

1. Di **Nama aturan siklus hidup**, masukkan nama untuk aturan Anda. 

   Nama dalam bucket harus unik. 

1. Pilih cakupan aturan siklus hidup: 
   + Untuk menerapkan aturan siklus hidup ini pada *semua objek dengan awalan atau tanda khusus*, pilih **Batasi cakupan ke awalan atau tanda tertentu**. 
     + Untuk membatasi cakupan dengan awalan, di **Awalan**, masukkan awalan. 
     + Untuk membatasi cakupan berdasarkan tanda, pilih **Tambahkan tanda**, dan masukkan kunci dan nilai tanda.

     Untuk informasi selengkapnya tentang awalan nama objek, lihat [Menamai objek Amazon S3](object-keys.md). Untuk informasi selengkapnya tentang tag objek, lihat [Mengkategorikan objek Anda menggunakan tag](object-tagging.md). 
   + Untuk menerapkan aturan siklus hidup ini ke *semua objek di bucket*, pilih **Aturan ini berlaku untuk *semua* objek di bucket**, lalu pilih **Saya mengakui bahwa aturan ini berlaku untuk semua objek di** bucket.

1. Untuk memfilter aturan berdasarkan ukuran objek, Anda dapat memilih **Tentukan ukuran objek minimum**, **Tentukan ukuran objek maksimum**, atau kedua opsi.
   + Saat Anda menentukan nilai untuk **ukuran objek Minimum atau ukuran** **objek Maksimum**, nilainya harus lebih besar dari 0 byte dan hingga 50 TB. Anda dapat menentukan nilai ini dalam bita, KB, MB, atau GB.
   + Saat Anda menentukan kedua nilai, ukuran objek maksimum harus lebih besar dari ukuran objek minimum.
**catatan**  
**Ukuran objek Minimum** dan filter **ukuran objek Maksimum** mengecualikan nilai yang ditentukan. Misalnya, jika Anda menyetel filter untuk objek kedaluwarsa yang memiliki **ukuran objek Minimum** 128 KB, objek yang persis 128 KB tidak akan kedaluwarsa. Sebaliknya, aturan hanya berlaku untuk objek yang berukuran lebih besar dari 128 KB.

1. Di bawah **Tindakan aturan siklus hidup**, pilih tindakan yang Anda ingin aturan siklus hidup Anda lakukan:
   + Transisikan versi objek *saat ini* antar kelas penyimpanan
   + Transisikan versi objek *sebelumnya* antar kelas penyimpanan
   + Akhiri versi objek *saat ini*
**catatan**  
Untuk bucket yang tidak mengaktifkan Versi [S3, versi saat](Versioning.md) ini yang kedaluwarsa menyebabkan Amazon S3 menghapus objek secara permanen. Untuk informasi selengkapnya, lihat [Tindakan Siklus Hidup dan kondisi Penentuan Versi bucket](intro-lifecycle-rules.md#lifecycle-actions-bucket-versioning-state).
   + Hapus secara permanen versi objek *sebelumnya*
   + Hapus penanda hapus yang kedaluwarsa atau unggahan multibagian yang belum selesai 

   Tergantung pada tindakan yang Anda pilih, opsi yang berbeda akan muncul.

1. Untuk mentransisikan versi objek *saat ini* di antara kelas penyimpanan, di bawah **Transisi versi objek saat ini di antara kelas penyimpanan**, lakukan hal berikut:

   1. Dalam **transisi kelas Storage**, pilih kelas penyimpanan untuk transisi. Untuk daftar kemungkinan transisi, lihat[Transisi siklus hidup yang didukung](lifecycle-transition-general-considerations.md#supported-lifecycle-transitions). Anda dapat memilih dari kelas penyimpanan berikut:
      + S3 Standard-IA
      + S3 Intelligent-Tiering
      + S3 One Zone-IA
      + S3 Glacier Instant Retrieval
      + S3 Glacier Flexible Retrieval
      + S3 Glacier Deep Archive

   1. Di **Hari setelah pembuatan objek**, masukkan jumlah hari setelah pembuatan untuk melakukan transisi objek.

   Untuk informasi selengkapnya tentang kelas penyimpanan, lihat [Memahami dan mengelola kelas penyimpanan Amazon S3](storage-class-intro.md). Anda dapat menentukan transisi untuk versi objek saat ini atau sebelumnya atau untuk versi saat ini dan versi sebelumnya. Penentuan Versi memungkinkan Anda untuk menyimpan beberapa versi dari sebuah objek di dalam satu bucket. Untuk informasi selengkapnya tentang penentuan versi, lihat [Menggunakan konsol S3](manage-versioning-examples.md#enable-versioning).
**penting**  
Saat Anda memilih kelas penyimpanan S3 Glacier Instant Retrieval, S3 Glacier Flexible Retrieval, atau Glacier Deep Archive, objek Anda tetap berada di Amazon S3. Anda tidak dapat mengaksesnya secara langsung melalui layanan Amazon Glacier yang terpisah. Untuk informasi selengkapnya, lihat [Transisi objek menggunakan Siklus Hidup Amazon S3](lifecycle-transition-general-considerations.md). 

1. Untuk mentransisikan versi *noncurrent* objek antar kelas penyimpanan, di bawah **Transisi versi noncurrent objek antar kelas penyimpanan**, lakukan hal berikut:

   1. Dalam **transisi kelas Storage**, pilih kelas penyimpanan untuk transisi. Untuk daftar kemungkinan transisi, lihat[Transisi siklus hidup yang didukung](lifecycle-transition-general-considerations.md#supported-lifecycle-transitions). Anda dapat memilih dari kelas penyimpanan berikut:
      + S3 Standard-IA
      + S3 Intelligent-Tiering
      + S3 One Zone-IA
      + S3 Glacier Instant Retrieval
      + S3 Glacier Flexible Retrieval
      + S3 Glacier Deep Archive

   1. Dalam **Hari setelah objek menjadi tidak** aktif, masukkan jumlah hari setelah pembuatan untuk transisi objek.

1. Untuk mengakhiri versi objek *saat ini*, di bawah **Akhiri versi objek saat ini**, di **Jumlah hari setelah pembuatan objek**, masukkan jumlah hari.
**penting**  
Dalam bucket nonversioned, tindakan kedaluwarsa menghasilkan Amazon S3 menghapus objek secara permanen. Untuk informasi lebih lanjut tentang tindakan siklus hidup, lihat [Elemen untuk mendeskripsikan tindakan siklus hidup](intro-lifecycle-rules.md#intro-lifecycle-rules-actions).

1. Untuk menghapus objek versi sebelumnya secara permanen, di bawah **Hapus objek versi sebelumnya secara permanen**, di **Hari setelah objek menjadi versi lama**, masukkan jumlah hari. Anda dapat secara opsional menentukan jumlah versi yang lebih baru untuk dipertahankan dengan memasukkan nilai di bawah **Jumlah versi yang lebih baru untuk dipertahankan**.

1. Di Bawah **Hapus penanda hapus yang kedaluwarsa atau unggahan multibagian yang belum selesai**, pilih **Hapus penanda hapus objek kedaluwarsa** dan **Hapus unggahan multibagian yang belum selesai**. Kemudian, masukkan jumlah hari setelah inisiasi pengunggahan multibagian yang ingin Anda akhiri dan bersihkan unggahan multibagian yang belum selesai.

   Untuk informasi lebih lanjut tentang unggahan multibagian, lihat [Mengunggah dan menyalin objek menggunakan unggahan multipart di Amazon S3](mpuoverview.md).

1. Pilih **Buat aturan**.

   Jika aturan tidak berisi kesalahan apa pun, Amazon S3 mengaktifkannya, dan Anda dapat melihatnya di tab **Manajemen** pada **Aturan siklus hidup**.

### Menggunakan AWS CLI
<a name="set-lifecycle-cli"></a>

Anda dapat menggunakan AWS CLI perintah berikut untuk mengelola konfigurasi Siklus Hidup S3:
+ `put-bucket-lifecycle-configuration`
+ `get-bucket-lifecycle-configuration`
+ `delete-bucket-lifecycle`

*Untuk petunjuk cara menyiapkan AWS CLI, lihat [Mengembangkan dengan Amazon S3 menggunakan AWS CLI](https://docs.aws.amazon.com/AmazonS3/latest/API/setup-aws-cli.html) di Referensi API Amazon S3.*

Konfigurasi Amazon Siklus Hidup S3 adalah berkas XML. Tetapi ketika Anda menggunakan AWS CLI, Anda tidak dapat menentukan format XMLnya. Anda harus menentukan format JSON sebagai gantinya. Berikut ini adalah contoh konfigurasi siklus hidup XMLdan konfigurasi JSON setara yang dapat Anda tentukan dalam sebuah perintah. AWS CLI

Pertimbangkan contoh konfigurasi Siklus Hidup S3 berikut.

**Example Contoh 1**  

**Example**  

```
<LifecycleConfiguration>
    <Rule>
        <ID>ExampleRule</ID>
        <Filter>
           <Prefix>documents/</Prefix>
        </Filter>
        <Status>Enabled</Status>
        <Transition>        
           <Days>365</Days>        
           <StorageClass>GLACIER</StorageClass>
        </Transition>    
        <Expiration>
             <Days>3650</Days>
        </Expiration>
    </Rule>
</LifecycleConfiguration>
```

```
{
    "Rules": [
        {
            "Filter": {
                "Prefix": "documents/"
            },
            "Status": "Enabled",
            "Transitions": [
                {
                    "Days": 365,
                    "StorageClass": "GLACIER"
                }
            ],
            "Expiration": {
                "Days": 3650
            },
            "ID": "ExampleRule"
        }
    ]
}
```

**Example Contoh 2**  

**Example**  

```
<LifecycleConfiguration xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
    <Rule>
        <ID>id-1</ID>
        <Expiration>
            <Days>1</Days>
        </Expiration>
        <Filter>
            <And>
                <Prefix>myprefix</Prefix>
                <Tag>
                    <Key>mytagkey1</Key>
                    <Value>mytagvalue1</Value>
                </Tag>
                <Tag>
                    <Key>mytagkey2</Key>
                    <Value>mytagvalue2</Value>
                </Tag>
            </And>
        </Filter>
        <Status>Enabled</Status>    
    </Rule>
</LifecycleConfiguration>
```

```
{
    "Rules": [
        {
            "ID": "id-1",
            "Filter": {
                "And": {
                    "Prefix": "myprefix", 
                    "Tags": [
                        {
                            "Value": "mytagvalue1", 
                            "Key": "mytagkey1"
                        }, 
                        {
                            "Value": "mytagvalue2", 
                            "Key": "mytagkey2"
                        }
                    ]
                }
            }, 
            "Status": "Enabled", 
            "Expiration": {
                "Days": 1
            }
        }
    ]
}
```

Anda dapat menguji `put-bucket-lifecycle-configuration` sebagai berikut.

**Untuk menguji konfigurasi**

1. Simpan konfigurasi Siklus Hidup JSON dalam sebuah file (misalnya,). *`lifecycle.json`* 

1. Jalankan AWS CLI perintah berikut untuk menyetel konfigurasi Siklus Hidup di bucket Anda. Ganti `user input placeholders` dengan informasi Anda sendiri.

   ```
   $ aws s3api put-bucket-lifecycle-configuration  \
   --bucket amzn-s3-demo-bucket  \
   --lifecycle-configuration file://lifecycle.json
   ```

1. Untuk memverifikasi, ambil konfigurasi Siklus Hidup S3 dengan menggunakan perintah sebagai `get-bucket-lifecycle-configuration` AWS CLI berikut:

   ```
   $ aws s3api get-bucket-lifecycle-configuration  \
   --bucket amzn-s3-demo-bucket
   ```

1. Untuk menghapus konfigurasi Siklus Hidup S3, gunakan `delete-bucket-lifecycle` AWS CLI perintah sebagai berikut:

   ```
   aws s3api delete-bucket-lifecycle \
   --bucket amzn-s3-demo-bucket
   ```

### Menggunakan AWS SDKs
<a name="manage-lifecycle-using-sdk"></a>

------
#### [ Java ]

Anda dapat menggunakan AWS SDK for Java untuk mengelola konfigurasi Siklus Hidup S3 bucket. Untuk informasi selengkapnya tentang mengelola konfigurasi Siklus Hidup S3, lihat [Mengelola siklus hidup objek](object-lifecycle-mgmt.md).

**catatan**  
Saat Anda menambahkan konfigurasi Siklus Hidup S3 ke bucket, Amazon S3 menggantikan konfigurasi Siklus Hidup bucket saat ini, jika ada. Untuk memperbarui konfigurasi, Anda mengambilnya, membuat perubahan yang diinginkan, kemudian menambahkan konfigurasi yang direvisi ke bucket.

Untuk mengelola konfigurasi siklus hidup menggunakan AWS SDK for Java, Anda dapat:
+ Tambahkan konfigurasi Siklus Hidup ke bucket.
+ Ambil konfigurasi Lifecycle dan perbarui dengan menambahkan aturan lain.
+ Tambahkan konfigurasi Siklus Hidup yang dimodifikasi ke bucket. Amazon S3 menggantikan konfigurasi yang ada.
+ Ambil kembali konfigurasi dan verifikasi bahwa ia memiliki jumlah aturan yang tepat dengan mencetak jumlah aturan.
+ Hapus konfigurasi Siklus Hidup dan verifikasi bahwa konfigurasi tersebut telah dihapus dengan mencoba mengambilnya kembali.

*Untuk contoh cara menyetel konfigurasi siklus hidup pada bucket dengan AWS SDK for Java, lihat [Menyetel konfigurasi siklus hidup pada bucket di Referensi API Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/API/s3_example_s3_PutBucketLifecycleConfiguration_section.html).*

------
#### [ .NET ]

Anda dapat menggunakan AWS SDK untuk .NET untuk mengelola konfigurasi Siklus Hidup S3 pada bucket. Untuk informasi selengkapnya tentang mengelola konfigurasi Siklus Hidup, lihat [Mengelola siklus hidup objek](object-lifecycle-mgmt.md). 

**catatan**  
Saat Anda menambahkan konfigurasi Siklus Hidup, Amazon S3 menggantikan konfigurasi yang ada pada bucket yang ditentukan. Untuk memperbarui konfigurasi, Anda harus mengembalikan konfigurasi Siklus Hidup terlebih dahulu, membuat perubahan, kemudian menambahkan konfigurasi Siklus Hidup yang telah direvisi ke bucket.

Contoh berikut menunjukkan cara menggunakan konfigurasi Siklus Hidup bucket AWS SDK untuk .NET untuk menambah, memperbarui, dan menghapus konfigurasi Siklus Hidup bucket. Contoh kode melakukan hal sebagai berikut:
+ Menambahkan konfigurasi Siklus Hidup ke dalam bucket. 
+ Membuka kembali konfigurasi Siklus Hidup dan memperbaruinya dengan menambahkan aturan lain. 
+ Menambahkan konfigurasi Siklus Hidup yang telah dimodifikasi ke dalam bucket. Amazon S3 menggantikan konfigurasi Siklus Hidup yang ada.
+ Mengambil kembali konfigurasi dan memverifikasinya dengan mencetak jumlah aturan dalam konfigurasi.
+ Menghapus konfigurasi Siklus Hidup dan memverifikasi penghapusan.

Untuk informasi tentang menyiapkan dan menjalankan contoh kode, lihat [Memulai AWS SDK untuk .NET di](https://docs.aws.amazon.com/sdk-for-net/v3/developer-guide/net-dg-config.html) *Panduan AWS SDK untuk .NET Pengembang*. 

```
using Amazon;
using Amazon.S3;
using Amazon.S3.Model;
using System;
using System.Collections.Generic;
using System.Threading.Tasks;

namespace Amazon.DocSamples.S3
{
    class LifecycleTest
    {
        private const string bucketName = "*** bucket name ***";
        // Specify your bucket region (an example region is shown).
        private static readonly RegionEndpoint bucketRegion = RegionEndpoint.USWest2;
        private static IAmazonS3 client;
        public static void Main()
        {
            client = new AmazonS3Client(bucketRegion);
            AddUpdateDeleteLifecycleConfigAsync().Wait();
        }

        private static async Task AddUpdateDeleteLifecycleConfigAsync()
        {
            try
            {
                var lifeCycleConfiguration = new LifecycleConfiguration()
                {
                    Rules = new List<LifecycleRule>
                        {
                            new LifecycleRule
                            {
                                 Id = "Archive immediately rule",
                                 Filter = new LifecycleFilter()
                                 {
                                     LifecycleFilterPredicate = new LifecyclePrefixPredicate()
                                     {
                                         Prefix = "glacierobjects/"
                                     }
                                 },
                                 Status = LifecycleRuleStatus.Enabled,
                                 Transitions = new List<LifecycleTransition>
                                 {
                                      new LifecycleTransition
                                      {
                                           Days = 0,
                                           StorageClass = S3StorageClass.Glacier
                                      }
                                  },
                            },
                            new LifecycleRule
                            {
                                 Id = "Archive and then delete rule",
                                  Filter = new LifecycleFilter()
                                 {
                                     LifecycleFilterPredicate = new LifecyclePrefixPredicate()
                                     {
                                         Prefix = "projectdocs/"
                                     }
                                 },
                                 Status = LifecycleRuleStatus.Enabled,
                                 Transitions = new List<LifecycleTransition>
                                 {
                                      new LifecycleTransition
                                      {
                                           Days = 30,
                                           StorageClass = S3StorageClass.StandardInfrequentAccess
                                      },
                                      new LifecycleTransition
                                      {
                                        Days = 365,
                                        StorageClass = S3StorageClass.Glacier
                                      }
                                 },
                                 Expiration = new LifecycleRuleExpiration()
                                 {
                                       Days = 3650
                                 }
                            }
                        }
                };

                // Add the configuration to the bucket. 
                await AddExampleLifecycleConfigAsync(client, lifeCycleConfiguration);

                // Retrieve an existing configuration. 
                lifeCycleConfiguration = await RetrieveLifecycleConfigAsync(client);

                // Add a new rule.
                lifeCycleConfiguration.Rules.Add(new LifecycleRule
                {
                    Id = "NewRule",
                    Filter = new LifecycleFilter()
                    {
                        LifecycleFilterPredicate = new LifecyclePrefixPredicate()
                        {
                            Prefix = "YearlyDocuments/"
                        }
                    },
                    Expiration = new LifecycleRuleExpiration()
                    {
                        Days = 3650
                    }
                });

                // Add the configuration to the bucket. 
                await AddExampleLifecycleConfigAsync(client, lifeCycleConfiguration);

                // Verify that there are now three rules.
                lifeCycleConfiguration = await RetrieveLifecycleConfigAsync(client);
                Console.WriteLine("Expected # of rulest=3; found:{0}", lifeCycleConfiguration.Rules.Count);

                // Delete the configuration.
                await RemoveLifecycleConfigAsync(client);

                // Retrieve a nonexistent configuration.
                lifeCycleConfiguration = await RetrieveLifecycleConfigAsync(client);

            }
            catch (AmazonS3Exception e)
            {
                Console.WriteLine("Error encountered ***. Message:'{0}' when writing an object", e.Message);
            }
            catch (Exception e)
            {
                Console.WriteLine("Unknown encountered on server. Message:'{0}' when writing an object", e.Message);
            }
        }

        static async Task AddExampleLifecycleConfigAsync(IAmazonS3 client, LifecycleConfiguration configuration)
        {

            PutLifecycleConfigurationRequest request = new PutLifecycleConfigurationRequest
            {
                BucketName = bucketName,
                Configuration = configuration
            };
            var response = await client.PutLifecycleConfigurationAsync(request);
        }

        static async Task<LifecycleConfiguration> RetrieveLifecycleConfigAsync(IAmazonS3 client)
        {
            GetLifecycleConfigurationRequest request = new GetLifecycleConfigurationRequest
            {
                BucketName = bucketName
            };
            var response = await client.GetLifecycleConfigurationAsync(request);
            var configuration = response.Configuration;
            return configuration;
        }

        static async Task RemoveLifecycleConfigAsync(IAmazonS3 client)
        {
            DeleteLifecycleConfigurationRequest request = new DeleteLifecycleConfigurationRequest
            {
                BucketName = bucketName
            };
            await client.DeleteLifecycleConfigurationAsync(request);
        }
    }
}
```

------
#### [ Ruby ]

Anda dapat menggunakan AWS SDK untuk Ruby untuk mengelola konfigurasi Siklus Hidup S3 pada bucket dengan menggunakan kelas. [https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html](https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/S3/BucketLifecycle.html) Untuk informasi selengkapnya tentang mengelola konfigurasi Siklus Hidup S3, lihat [Mengelola siklus hidup objek](object-lifecycle-mgmt.md). 

------

### Penggunaan API REST
<a name="manage-lifecycle-using-rest"></a>

Topik berikut dalam *Referensi API Amazon Simple Storage Service* menjelaskan operasi REST API yang terkait dengan konfigurasi Siklus Hidup S3: 
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_GetBucketLifecycleConfiguration.html)
+ [https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_DeleteBucketLifecycle.html)

## Pemecahan Masalah Siklus Hidup S3
<a name="lifecycle-troubleshoot"></a>

Untuk masalah umum yang mungkin terjadi saat bekerja dengan Siklus Hidup S3, lihat. [Memecahkan masalah Siklus Hidup Amazon S3](troubleshoot-lifecycle.md)

# Bagaimana Siklus Hidup S3 berinteraksi dengan konfigurasi bucket lainnya
<a name="lifecycle-and-other-bucket-config"></a>

Selain konfigurasi Siklus Hidup S3, Anda dapat mengaitkan konfigurasi lain dengan bucket Anda. Bagian ini menjelaskan bagaimana konfigurasi Siklus Hidup S3 berkaitan dengan konfigurasi bucket lainnya.

## Siklus Hidup S3 dan Versi S3
<a name="lifecycle-versioning-support-intro"></a>

Anda dapat menambahkan konfigurasi Siklus Hidup S3 ke bucket tanpa versi dan bucket dengan dukungan Penentuan Versi. Untuk informasi selengkapnya, lihat [Mempertahankan beberapa versi objek dengan Versi S3](Versioning.md). 

Bucket yang dengan dukungan Penentuan Versi mempertahankan satu versi objek saat ini, dan nol atau lebih versi objek yang lama. Anda dapat menentukan aturan siklus hidup terpisah untuk versi objek saat ini dan noncurrent.

Untuk informasi selengkapnya, lihat [Elemen konfigurasi Siklus Hidup](intro-lifecycle-rules.md).

**penting**  
Jika Anda memiliki beberapa aturan dalam konfigurasi Siklus Hidup S3, objek dapat memenuhi syarat untuk beberapa tindakan Siklus Hidup S3 pada hari yang sama. Dalam kasus tersebut, Amazon S3 mengikuti aturan umum ini:  
Penghapusan permanen lebih diutamakan daripada transisi.
Transisi lebih diutamakan daripada pembuatan penanda [hapus](DeleteMarker.md).
Saat sebuah objek memenuhi syarat untuk transisi S3 Glacier Flexible Retrieval dan S3 Standard-IA (atau S3 One Zone-IA), Amazon S3 memilih transisi S3 Glacier Flexible Retrieval.
 Sebagai contoh, lihat [Contoh filter yang tumpang tindih dan tindakan siklus hidup yang bertentangan](lifecycle-conflicts.md#lifecycle-config-conceptual-ex5). 

## Siklus Hidup S3 dan
<a name="lifecycle-and-replication"></a>

Bila Anda mengaktifkan keduanya dan Siklus Hidup S3 di bucket, Siklus Hidup S3 memblokir tindakan kedaluwarsa dan transisi pada objek dengan atau status replikasi. `PENDING` `FAILED` Ini memastikan bahwa Siklus Hidup tidak bekerja pada objek hingga objek berhasil direplikasi ke bucket tujuan mereka.

Objek bertransisi ke status `FAILED` replikasi untuk masalah seperti izin peran replikasi yang hilang, izin AWS Key Management Service (AWS KMS), atau izin bucket. Untuk informasi selengkapnya, lihat [Memecahkan masalah replikasi](replication-troubleshoot.md).

Objek dengan status `FAILED` replikasi akan terus mengeluarkan biaya penyimpanan setelah kedaluwarsa Siklus Hidup atau tanggal kelayakan transisi hingga masalah replikasi teratasi. Setelah Anda memperbaiki konfigurasi replikasi yang mendasari atau izin IAM, objek baru akan mereplikasi secara otomatis. Namun, objek yang sudah memiliki status `FAILED` replikasi tidak akan mencoba ulang secara otomatis—Anda harus menggunakan Replikasi Batch S3 untuk mereplikasi mereka, atau menghapusnya menggunakan Operasi Batch S3 jika tidak lagi diperlukan. AWS Lambda Setelah objek berhasil mereplikasi (atau dihapus), Lifecycle akan melanjutkan pemrosesannya sesuai dengan aturan yang dikonfigurasi. Untuk mengidentifikasi objek dengan status `FAILED` replikasi, Anda dapat menggunakan CloudWatch metrik Amazon (`OperationFailedReplication`) untuk memantau jumlah kegagalan dan tren di tingkat bucket, atau menggunakan laporan Inventaris Amazon S3, Amazon S3 API (atau)`HeadObject`, `GetObject` atau Pemberitahuan Acara Amazon S3 untuk detail tingkat objek.

## Konfigurasi Siklus Hidup S3 pada bucket berkemampuan MFA
<a name="lifecycle-general-considerations-mfa-enabled-bucket"></a>

Konfigurasi Siklus Hidup S3 pada bucket otentikasi multi-faktor yang dikonfigurasi untuk penghapusan MFA tidak didukung. Untuk informasi selengkapnya, lihat [Mengonfigurasi penghapusan MFA](MultiFactorAuthenticationDelete.md).

## Siklus hidup S3 dan logging
<a name="lifecycle-general-considerations-logging"></a>

Tindakan Siklus Hidup Amazon S3 tidak ditangkap oleh AWS CloudTrail pencatatan tingkat objek. CloudTrailmenangkap permintaan API yang dibuat ke titik akhir Amazon S3 eksternal, sedangkan tindakan Siklus Hidup S3 dilakukan dengan menggunakan titik akhir Amazon S3 internal. 

Anda dapat mengaktifkan log akses server Amazon S3 di bucket S3 untuk menangkap tindakan terkait S3 Lifecycle, seperti transisi objek ke kelas penyimpanan lain dan kedaluwarsa objek yang menghasilkan penghapusan permanen atau penghapusan logis. Untuk informasi selengkapnya, lihat [Pencatatan permintaan dengan pencatatan akses server](ServerLogs.md).

Jika Anda telah mengaktifkan log di bucket Anda, log akses server Amazon S3 melaporkan hasil dari operasi berikut.


| Log operasi | Deskripsi | 
| --- | --- | 
|  `S3.EXPIRE.OBJECT`  |  Amazon S3 menghapus objek secara permanen karena tindakan siklus hidup. `Expiration`  | 
|  `S3.CREATE.DELETEMARKER`  |  Amazon S3 secara logis menghapus versi saat ini dengan menambahkan penanda hapus di bucket berkemampuan versi.  | 
|  `S3.TRANSITION_SIA.OBJECT`  |  Amazon S3 mentransisikan objek ke kelas penyimpanan S3 Standard-IA.  | 
|  `S3.TRANSITION_ZIA.OBJECT`  |  Amazon S3 mentransisikan objek ke kelas penyimpanan S3 Standard-IA.  | 
|  `S3.TRANSITION_INT.OBJECT`  |  Amazon S3 mentransisikan objek ke kelas penyimpanan S3 Intelligent-Tiering.  | 
|  `S3.TRANSITION_GIR.OBJECT`  |  Amazon S3 memulai transisi objek ke kelas penyimpanan S3 Glacier Instant Retrieval.  | 
|  `S3.TRANSITION.OBJECT`  |  Amazon S3 memulai transisi objek ke kelas penyimpanan S3 Glacier Flexible Retrieval.  | 
|  `S3.TRANSITION_GDA.OBJECT`  |  Amazon S3 memulai transisi objek ke kelas penyimpanan S3 Glacier Deep Archive.  | 
|  `S3.DELETE.UPLOAD`  |  Amazon S3 membatalkan unggahan multipart yang tidak lengkap.  | 

**catatan**  
Catatan log akses server Amazon S3 dikirimkan dengan upaya terbaik dan tidak dapat digunakan untuk penghitungan lengkap semua permintaan Amazon S3. 

# Mengonfigurasi pemberitahuan acara Siklus Hidup S3
<a name="lifecycle-configure-notification"></a>

Untuk menerima pemberitahuan saat Amazon S3 menghapus objek atau mentransisikannya ke kelas penyimpanan Amazon S3 lain sebagai hasil dari mengikuti aturan Siklus Hidup S3, Anda dapat mengatur pemberitahuan peristiwa Amazon S3.

Anda dapat menerima pemberitahuan untuk peristiwa Siklus Hidup S3 berikut:
+ **Peristiwa transisi** — Dengan menggunakan jenis `s3:LifecycleTransition` peristiwa, Anda dapat menerima pemberitahuan saat objek dialihkan dari satu kelas penyimpanan Amazon S3 ke kelas penyimpanan Amazon S3 lainnya dengan konfigurasi Siklus Hidup S3.
+ **Peristiwa kedaluwarsa (hapus)** - Dengan menggunakan jenis `LifecycleExpiration` acara, Anda dapat menerima pemberitahuan kapan pun Amazon S3 menghapus objek berdasarkan konfigurasi Siklus Hidup S3 Anda. 

  Ada dua jenis acara kedaluwarsa: 
  + Jenis `s3:LifecycleExpiration:Delete` acara akan memberi tahu Anda saat objek dalam bucket yang tidak berversi dihapus. `s3:LifecycleExpiration:Delete`juga memberi tahu Anda ketika versi objek dihapus secara permanen oleh konfigurasi Siklus Hidup S3.
  +  Jenis `s3:LifecycleExpiration:DeleteMarkerCreated` peristiwa akan memberi tahu Anda saat Siklus Hidup S3 membuat penanda hapus setelah versi objek saat ini dalam bucket berversi dihapus. Siklus Hidup S3 menetapkan waktu pembuatan penanda hapus menjadi 00:00 UTC (tengah malam) hari ini. Waktu pembuatan ini mungkin berbeda dari waktu acara dalam `s3:LifecycleExpiration:DeleteMarkerCreated` pemberitahuan yang dikirim S3. Untuk informasi selengkapnya, lihat [Menghapus versi objek dari bucket dengan dukungan Penentuan Versi](DeletingObjectVersions.md).

Amazon S3 dapat mempublikasikan pemberitahuan acara ke topik Amazon Simple Notification Service (Amazon SNS), antrian Amazon Simple Queue Service (Amazon SQS), atau fungsi. AWS Lambda Untuk informasi selengkapnya, lihat [Notifikasi Peristiwa Amazon S3](EventNotifications.md).

Untuk petunjuk tentang cara mengonfigurasi Pemberitahuan Acara Amazon S3, lihat [Mengaktifkan notifikasi peristiwa menggunakan Amazon SQS, Amazon SNS,](how-to-enable-disable-notification-intro.md) dan. AWS Lambda

Berikut ini adalah contoh pesan yang dikirimkan Amazon S3 untuk menerbitkan peristiwa `s3:LifecycleExpiration:Delete`. Untuk informasi selengkapnya, lihat [Struktur pesan peristiwa](notification-content-structure.md).

```
 1. {  
 2.    "Records":[  
 3.       {  
 4.          "eventVersion":"2.3",
 5.          "eventSource":"aws:s3",
 6.          "awsRegion":"us-west-2",
 7.          "eventTime":"1970-01-01T00:00:00.000Z",
 8.          "eventName":"LifecycleExpiration:Delete",
 9.          "userIdentity":{  
10.             "principalId":"s3.amazonaws.com"
11.          },
12.          "requestParameters":{  
13.             "sourceIPAddress":"s3.amazonaws.com"
14.          },
15.          "responseElements":{  
16.             "x-amz-request-id":"C3D13FE58DE4C810",
17.             "x-amz-id-2":"FMyUVURIY8/IgAtTv8xRjskZQpcIZ9KG4V5Wp6S7S/JRWeUWerMUE5JgHvANOjpD"
18.          },
19.          "s3":{  
20.             "s3SchemaVersion":"1.0",
21.             "configurationId":"testConfigRule",
22.             "bucket":{  
23.                "name":"amzn-s3-demo-bucket",
24.                "ownerIdentity":{  
25.                   "principalId":"A3NL1KOZZKExample"
26.                },
27.                "arn":"arn:aws:s3:::amzn-s3-demo-bucket"
28.             },
29.             "object":{  
30.                "key":"expiration/delete",
31.                "sequencer":"0055AED6DCD90281E5",              
32.             }
33.          }
34.       }
35.    ]
36. }
```

Pesan yang dikirim Amazon S3 untuk mempublikasikan `s3:LifecycleTransition` acara juga menyertakan informasi berikut:

```
1. "lifecycleEventData":{
2.     "transitionEventData": {
3.         "destinationStorageClass": the destination storage class for the object
4.     }
5. }
```

# Elemen konfigurasi Siklus Hidup
<a name="intro-lifecycle-rules"></a>

Konfigurasi Siklus Hidup S3 terdiri dari aturan Siklus Hidup yang menyertakan berbagai elemen yang menjelaskan tindakan yang dilakukan Amazon S3 selama masa pakai objek. Setiap bucket S3 dapat memiliki satu konfigurasi siklus hidup yang ditetapkan padanya, yang dapat berisi hingga 1.000 aturan. Anda menetapkan konfigurasi Siklus Hidup Amazon S3 sebagai XML, yang terdiri dari satu atau beberapa aturan Siklus Hidup, di mana setiap aturan terdiri dari satu atau beberapa elemen.

```
<LifecycleConfiguration>
    <Rule>
         <Element>
    </Rule>
    <Rule>
         <Element>
         <Element>
    </Rule>
</LifecycleConfiguration>
```

Setiap aturan terdiri atas hal berikut:
+ Metadata aturan yang menyertakan ID aturan, dan status yang menunjukkan apakah aturan diaktifkan atau dinonaktifkan. Jika aturan dinonaktifkan, Amazon S3 tidak akan melakukan tindakan yang ditentukan dalam aturan tersebut.
+ Filter yang mengidentifikasi objek yang aturan berlaku. Anda dapat menentukan filter dengan menggunakan ukuran objek, key prefix objek, satu atau beberapa tag objek, atau kombinasi filter.
+ Satu atau beberapa tindakan transisi atau kedaluwarsa dengan tanggal atau periode waktu dalam masa pakai objek saat Anda ingin Amazon S3 melakukan tindakan tertentu. 

**Topics**
+ [Elemen ID](#intro-lifecycle-rule-id)
+ [Elemen status](#intro-lifecycle-rule-status)
+ [Elemen filter](#intro-lifecycle-rules-filter)
+ [Elemen untuk mendeskripsikan tindakan siklus hidup](#intro-lifecycle-rules-actions)
+ [Menambahkan filter ke aturan Siklus Hidup](intro-lifecycle-filters.md)

Bagian berikut menjelaskan elemen XML dalam konfigurasi Siklus Hidup S3. Untuk contoh konfigurasi, lihat [Contoh konfigurasi Siklus Hidup S3](lifecycle-configuration-examples.md).

## Elemen ID
<a name="intro-lifecycle-rule-id"></a>

Konfigurasi siklus hidup diatur pada tingkat bucket, dengan setiap bucket memiliki konfigurasi siklus hidupnya sendiri. Konfigurasi Siklus Hidup S3 dapat memiliki hingga 1.000 aturan per bucket. Batas ini tidak dapat disesuaikan. `<ID>`Elemen secara unik mengidentifikasi aturan dalam konfigurasi siklus hidup bucket. Panjang ID dibatasi hingga 255 karakter.

## Elemen status
<a name="intro-lifecycle-rule-status"></a>

Nilai `<Status>` elemen dapat berupa `Enabled` atau`Disabled`. Jika aturan dinonaktifkan, Amazon S3 tidak akan melakukan tindakan yang ditentukan dalam aturan tersebut.

## Elemen filter
<a name="intro-lifecycle-rules-filter"></a>

Aturan Siklus Hidup S3 dapat diterapkan ke semua atau subset objek dalam bucket berdasarkan `<Filter>` elemen yang Anda tentukan dalam aturan. 

Anda dapat memfilter objek berdasarkan awalan kunci, tag objek, atau kombinasi keduanya (dalam hal ini Amazon S3 menggunakan `AND` logis untuk menggabungkan filter). Untuk contoh dan informasi selengkapnya tentang filter, lihat[Menambahkan filter ke aturan Siklus Hidup](intro-lifecycle-filters.md).
+ **Menentukan filter dengan menggunakan awalan kunci** — Contoh ini menunjukkan aturan Siklus Hidup S3 yang berlaku untuk subset objek berdasarkan awalan nama kunci (). `logs/` Misalnya, aturan Siklus Hidup berlaku untuk objek`logs/mylog.txt`,`logs/temp1.txt`, dan. `logs/test.txt` Aturan tidak berlaku untuk objek `example.jpg`.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Prefix>logs/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
      ...
  </LifecycleConfiguration>
  ```

  Jika Anda ingin menerapkan tindakan siklus hidup ke subset objek berdasarkan awalan nama kunci yang berbeda, tentukan aturan terpisah. Pada setiap aturan, tentukan filter berbasis awalan. Misalnya, untuk mendeskripsikan tindakan siklus hidup objek dengan awalan kunci `projectA/` dan`projectB/`, Anda menentukan dua aturan sebagai berikut: 

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Prefix>projectA/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
  
      <Rule>
          <Filter>
             <Prefix>projectB/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
  </LifecycleConfiguration>
  ```

  Untuk informasi selengkapnya tentang kunci objek, lihat [Menamai objek Amazon S3](object-keys.md). 
+ **Menentukan filter berdasarkan tag objek** - Dalam contoh berikut, aturan Lifecycle menentukan filter berdasarkan tag (`key`) dan value (). `value` Aturan ini kemudian hanya berlaku untuk subset objek dengan tag tertentu.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Tag>
                <Key>key</Key>
                <Value>value</Value>
             </Tag>
          </Filter>
          transition/expiration actions
          ...
      </Rule>
  </LifecycleConfiguration>
  ```

  Anda dapat menentukan filter berdasarkan beberapa tag. Anda harus membungkus tag dalam `<And>` elemen, seperti yang ditunjukkan pada contoh berikut. Aturan tersebut mengarahkan Amazon S3 untuk melakukan tindakan siklus hidup pada objek dengan dua tag (dengan kunci dan nilai tag khusus).

  ```
  <LifecycleConfiguration>
      <Rule>
        <Filter>
           <And>
              <Tag>
                 <Key>key1</Key>
                 <Value>value1</Value>
              </Tag>
              <Tag>
                 <Key>key2</Key>
                 <Value>value2</Value>
              </Tag>
               ...
            </And>
        </Filter>
        transition/expiration actions
      </Rule>
  </Lifecycle>
  ```

  Aturan Siklus Hidup berlaku untuk objek yang memiliki kedua tag yang ditentukan. Amazon S3 menjalankan `AND` logis. Perhatikan hal-hal berikut:
  + *Setiap tag harus sama persis dengan kunci dan nilai.* Jika Anda hanya menentukan `<Key>` elemen dan tidak ada `<Value>` elemen, aturan hanya akan berlaku untuk objek yang cocok dengan kunci tag dan yang *tidak* memiliki nilai yang ditentukan.
  + Aturan ini berlaku untuk subset objek yang memiliki semua tag yang ditentukan dalam aturan. Jika sebuah objek memiliki tag tambahan yang ditentukan, aturan tersebut akan tetap berlaku.
**catatan**  
Ketika Anda menentukan beberapa tag di filter, setiap kunci tag harus unik.
+ **Menentukan filter berdasarkan awalan dan satu atau beberapa tag** — Dalam aturan Siklus Hidup, Anda dapat menentukan filter berdasarkan awalan kunci dan satu atau beberapa tag. Sekali lagi, Anda harus membungkus semua elemen filter ini dalam `<And>` elemen, sebagai berikut:

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
            <And>
               <Prefix>key-prefix</Prefix>
               <Tag>
                  <Key>key1</Key>
                  <Value>value1</Value>
               </Tag>
               <Tag>
                  <Key>key2</Key>
                  <Value>value2</Value>
               </Tag>
                ...
            </And>
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```

  Amazon S3 menggabungkan filter ini dengan menggunakan logika. `AND` Artinya, aturan berlaku untuk subset objek dengan key prefix yang ditentukan dan tag yang ditentukan. Filter hanya dapat memiliki satu awalan, dan nol atau lebih tag.
+ Anda dapat menentukan **filter kosong**, yang dalam hal demikian aturan berlaku untuk semua objek dalam bucket.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```
+ Untuk memfilter aturan berdasarkan **ukuran objek**, Anda dapat menentukan ukuran minimum (`ObjectSizeGreaterThan`) atau ukuran maksimum (`ObjectSizeLessThan`), atau Anda dapat menentukan rentang ukuran objek.

  Besar objek dalam byte. Secara default, objek yang lebih kecil dari 128 KB tidak akan dialihkan ke kelas penyimpanan apa pun, kecuali Anda menentukan ukuran minimum (`ObjectSizeGreaterThan`) yang lebih kecil atau ukuran maksimum (`ObjectSizeLessThan`). Untuk informasi selengkapnya, lihat [Contoh: Mengizinkan objek yang lebih kecil dari 128 KB untuk dialihkan](lifecycle-configuration-examples.md#lc-small-objects).

  ```
                      <LifecycleConfiguration>
      <Rule>
          <Filter>
              <ObjectSizeGreaterThan>500</ObjectSizeGreaterThan>   
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```
**catatan**  
`ObjectSizeLessThan`Filter `ObjectSizeGreaterThan` dan mengecualikan nilai yang ditentukan. Misalnya, jika Anda menyetel objek berukuran 128 KB hingga 1024 KB untuk berpindah dari kelas penyimpanan Standar S3 ke kelas penyimpanan IA Standar S3, objek yang persis 1024 KB dan 128 KB tidak akan beralih ke IA Standar S3. Sebagai gantinya, aturan hanya akan berlaku untuk objek yang lebih besar dari 128 KB dan berukuran kurang dari 1024 KB. 

  Jika Anda menentukan rentang ukuran objek, bilangan bulat `ObjectSizeGreaterThan` harus kurang dari nilai `ObjectSizeLessThan`. Saat menggunakan lebih dari satu filter, Anda harus membungkus filter dalam elemen `<And>`. Contoh berikut menunjukkan bagaimana menentukan objek dalam kisaran antara 500 byte dan 64.000 byte. 

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
              <And>
                  <Prefix>key-prefix</Prefix>
                  <ObjectSizeGreaterThan>500</ObjectSizeGreaterThan>
                  <ObjectSizeLessThan>64000</ObjectSizeLessThan>
              </And>    
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```

## Elemen untuk mendeskripsikan tindakan siklus hidup
<a name="intro-lifecycle-rules-actions"></a>

Anda dapat mengarahkan Amazon S3 untuk melakukan tindakan tertentu dalam masa pakai objek dengan menentukan satu atau beberapa tindakan yang telah ditentukan berikut dalam aturan Siklus Hidup S3. Efek tindakan ini tergantung pada keadaan Penentuan Versi bucket Anda. 
+ **`Transition`elemen tindakan** - Anda menentukan `Transition` tindakan untuk mengalihkan objek dari satu kelas penyimpanan ke kelas penyimpanan lainnya. Untuk informasi selengkapnya tentang objek transisi, lihat [Transisi yang didukung](lifecycle-transition-general-considerations.md#lifecycle-general-considerations-transition-sc). Saat tanggal atau periode waktu tertentu dalam masa pakai objek tercapai, Amazon S3 melakukan transisi. 

  Untuk bucket berversi (bucket dengan dukungan Penentuan Versi atau dengan ditangguhkan), tindakan `Transition` berlaku untuk versi objek saat ini. Untuk mengelola versi lama, Amazon S3 menentukan tindakan `NoncurrentVersionTransition` (dijelaskan nanti dalam topik ini).
+ **`Expiration`elemen tindakan** — `Expiration` Tindakan kedaluwarsa objek yang diidentifikasi dalam aturan dan berlaku untuk objek yang memenuhi syarat di salah satu kelas penyimpanan Amazon S3. Untuk informasi selengkapnya tentang kelas penyimpanan, lihat [Memahami dan mengelola kelas penyimpanan Amazon S3](storage-class-intro.md). Amazon S3 membuat semua objek kedaluwarsa tidak tersedia. Apakah objek secara permanen dihapus tergantung pada status Penentuan Versi bucket. 
  + **Bucket nonversioned** — `Expiration` Tindakan ini menghasilkan Amazon S3 menghapus objek secara permanen. 
  + **Bucket berversi**–Untuk bucket berversi (yaitu, dengan dukungan Penentuan Versi atau dengan Penentuan Versi ditangguhkan), ada beberapa pertimbangan yang memandu cara Amazon S3 menangani tindakan `Expiration`. Untuk bucket dengan dukungan Penentuan Versi atau Penentuan Versi ditangguhkan, berlaku berikut ini:
    + Tindakan `Expiration` hanya berlaku untuk versi saat ini (tidak memiliki dampak pada versi objek lama).
    + Amazon S3 tidak mengambil tindakan apa pun jika ada satu atau beberapa versi objek dan penanda hapus adalah versi saat ini.
    + Jika versi objek saat ini adalah satu-satunya versi objek dan juga merupakan penanda hapus (juga disebut sebagai *penanda hapus objek kedaluwarsa*, ketika semua versi objek dihapus dan Anda hanya memiliki penanda hapus yang tersisa), Amazon S3 menghapus penanda hapus objek kedaluwarsa. Anda juga dapat menggunakan tindakan kedaluwarsa guna mengarahkan Amazon S3 untuk menghapus penanda hapus objek yang kedaluwarsa. Sebagai contoh, lihat [Menghapus penanda penghapusan objek yang kedaluwarsa dalam bucket berkemampuan versi](lifecycle-configuration-examples.md#lifecycle-config-conceptual-ex7). 

    Untuk informasi selengkapnya, lihat [Mempertahankan beberapa versi objek dengan Versi S3](Versioning.md).

    Pertimbangkan juga hal berikut saat mengatur Amazon S3 untuk mengelola kedaluwarsa:
    + **Bucket dengan dukungan Penentuan Versi** 

      Jika versi objek saat ini bukan penanda hapus, Amazon S3 menambahkan penanda hapus dengan ID versi unik. Ini membuat versi saat ini menjadi versi lama, dan penanda hapus menjadi versi saat ini. 
    + **Bucket dengan Penentuan Versi ditangguhkan** 

      Dalam bucket yang ditangguhkan versi, tindakan kedaluwarsa menyebabkan Amazon S3 membuat penanda hapus dengan ID versi. `null` Penanda hapus ini menggantikan versi objek apa pun dengan ID versi null dalam hierarki versi, yang secara efektif menghapus objek. 

Selain itu, Amazon S3 memberikan tindakan berikut yang dapat Anda gunakan untuk mengelola versi objek lama dalam bucket berversi (yaitu, dengan dukungan Penentuan Versi dan Penentuan Versi ditangguhkan).
+ **`NoncurrentVersionTransition`elemen tindakan** - Gunakan tindakan ini untuk menentukan kapan Amazon S3 mentransisikan objek ke kelas penyimpanan yang ditentukan. Anda dapat mendasarkan transisi ini pada sejumlah hari tertentu sejak objek menjadi noncurrent (`<NoncurrentDays>`). Selain jumlah hari, Anda juga dapat menentukan jumlah versi noncurrent (`<NewerNoncurrentVersions>`) yang akan dipertahankan (antara 1 dan 100). Nilai ini menentukan berapa banyak versi noncurrent yang lebih baru yang harus ada sebelum Amazon S3 dapat mentransisikan versi tertentu. Amazon S3 akan mentransisikan versi noncurrent tambahan apa pun di luar nomor yang ditentukan untuk dipertahankan. Agar transisi terjadi, nilai `<NoncurrentDays>` **dan** `<NewerNoncurrentVersions>` nilai harus dilampaui.

  Untuk menentukan jumlah versi noncurrent yang akan dipertahankan, Anda juga harus menyediakan `<Filter>` elemen. Jika Anda tidak menentukan `<Filter>` elemen, Amazon S3 menghasilkan `InvalidRequest` kesalahan saat Anda menentukan jumlah versi noncurrent yang akan dipertahankan.

  Untuk informasi selengkapnya tentang objek transisi, lihat [Transisi yang didukung](lifecycle-transition-general-considerations.md#lifecycle-general-considerations-transition-sc). Untuk detail tentang cara Amazon S3 menghitung tanggal saat Anda menentukan jumlah hari dalam tindakan `NoncurrentVersionTransition`, lihat [Aturan siklus hidup: Berdasarkan usia objek](#intro-lifecycle-rules-number-of-days).
+ **`NoncurrentVersionExpiration`elemen tindakan** - Gunakan tindakan ini untuk mengarahkan Amazon S3 untuk menghapus versi objek yang tidak aktif secara permanen. Objek yang dihapus ini tidak dapat dipulihkan. Anda dapat mendasarkan kedaluwarsa ini pada sejumlah hari tertentu sejak objek menjadi noncurrent (). `<NoncurrentDays>` Selain jumlah hari, Anda juga dapat menentukan jumlah versi noncurrent (`<NewerNoncurrentVersions>`) yang akan dipertahankan (antara 1 dan 100). Nilai ini menentukan berapa banyak versi noncurrent yang lebih baru yang harus ada sebelum Amazon S3 dapat kedaluwarsa versi tertentu. Amazon S3 akan secara permanen menghapus versi noncurrent tambahan di luar nomor yang ditentukan untuk disimpan. Agar penghapusan terjadi, nilai `<NoncurrentDays>` **dan** `<NewerNoncurrentVersions>` nilai harus dilampaui.

  Untuk menentukan jumlah versi noncurrent yang akan dipertahankan, Anda juga harus menyediakan `<Filter>` elemen. Jika Anda tidak menentukan `<Filter>` elemen, Amazon S3 menghasilkan `InvalidRequest` kesalahan saat Anda menentukan jumlah versi noncurrent yang akan dipertahankan.

  Penghapusan objek lama yang tertunda ini dapat membantu ketika Anda perlu memperbaiki penghapusan atau penghapusan yang tidak disengaja. Misalnya, Anda dapat mengonfigurasi aturan kedaluwarsa untuk menghapus versi lama lima hari setelah menjadi versi lama. Misalnya, pada 1/1/2014 pukul 10:30 UTC, Anda membuat objek yang disebut `photo.gif` (versi ID 111111). Pada 1/2/2014 pukul 11:30 UTC, Anda secara tidak sengaja menghapus `photo.gif` (ID versi 111111), yang membuat penanda hapus dengan ID versi baru (seperti ID versi 4857693). Sekarang Anda memiliki waktu lima hari untuk memulihkan versi asli `photo.gif` (ID versi 111111) sebelum penghapusan bersifat permanen. Pada 1/8/2014 pukul 00:00 UTC, aturan Siklus Hidup untuk kedaluwarsa berjalan dan dihapus secara permanen `photo.gif` (ID versi 111111), lima hari setelah menjadi versi noncurrent. 

  Untuk detail tentang cara Amazon S3 menghitung tanggal saat Anda menentukan jumlah hari dalam tindakan `NoncurrentVersionExpiration`, lihat [Aturan siklus hidup: Berdasarkan usia objek](#intro-lifecycle-rules-number-of-days).
**catatan**  
Konfigurasi siklus hidup kedaluwarsa objek tidak menghapus unggahan multibagian yang tidak lengkap. Untuk menghapus unggahan multibagian yang tidak lengkap, Anda harus menggunakan tindakan konfigurasi `AbortIncompleteMultipartUpload` Siklus Hidup yang dijelaskan nanti di bagian ini. 

Selain tindakan transisi dan kedaluwarsa, Anda dapat menggunakan tindakan konfigurasi Siklus Hidup berikut untuk mengarahkan Amazon S3 agar menghentikan unggahan multibagian yang tidak lengkap atau menghapus penanda penghapusan objek kedaluwarsa: 
+ **`AbortIncompleteMultipartUpload`elemen tindakan** - Gunakan elemen ini untuk mengatur waktu maksimum (dalam beberapa hari) yang Anda inginkan agar unggahan multipart tetap berlangsung. Jika unggahan multibagian yang berlaku (ditentukan oleh nama kunci yang `prefix` ditentukan dalam aturan Siklus Hidup) tidak berhasil diselesaikan dalam jangka waktu yang telah ditentukan, Amazon S3 menghentikan unggahan multibagian yang tidak lengkap. Untuk informasi selengkapnya, lihat [Membatalkan unggahan multibagian](abort-mpu.md). 
**catatan**  
Anda tidak dapat menentukan tindakan siklus hidup ini dalam aturan yang memiliki filter yang menggunakan tag objek. 
+ **`ExpiredObjectDeleteMarker`elemen aksi** — Dalam bucket berkemampuan versi, penanda hapus dengan nol versi noncurrent disebut sebagai penanda penghapusan objek *kedaluwarsa*. Anda dapat menggunakan tindakan siklus hidup ini untuk mengarahkan Amazon S3 untuk menghapus penanda penghapusan objek yang kedaluwarsa. Sebagai contoh, lihat [Menghapus penanda penghapusan objek yang kedaluwarsa dalam bucket berkemampuan versi](lifecycle-configuration-examples.md#lifecycle-config-conceptual-ex7).
**catatan**  
Anda tidak dapat menentukan tindakan siklus hidup ini dalam aturan yang memiliki filter yang menggunakan tag objek.

### Cara Amazon S3 menghitung berapa lama sebuah objek menjadi versi lama
<a name="non-current-days-calculations"></a>

Pada bucket dengan dukungan Penentuan Versi, Anda dapat memiliki beberapa versi objek. Selalu ada satu versi saat ini, dan nol atau beberapa versi lama. Setiap kali Anda mengunggah sebuah objek, versi saat ini disimpan sebagai versi lama dan versi baru yang ditambahkan, penerusnya, menjadi versi saat ini. Untuk menentukan jumlah hari saat suatu objek menjadi versi lama, Amazon S3 melihat kapan penerusnya dibuat. Amazon S3 menggunakan jumlah hari sejak penerusnya dibuat sejak jumlah hari suatu objek menjadi versi lama.

**Memulihkan versi sebelumnya dari objek saat menggunakan konfigurasi Siklus Hidup S3**  
Seperti yang dijelaskan dalam[Memulihkan versi sebelumnya](RestoringPreviousVersions.md), Anda dapat menggunakan salah satu dari dua metode berikut untuk mengambil versi objek sebelumnya:  
**Metode 1 — Salin versi noncurrent dari objek ke bucket yang sama.** Objek yang disalin menjadi versi saat ini dari objek tersebut dan semua versi objek dipertahankan.
**Metode 2 — Hapus versi objek saat ini secara permanen.** Ketika Anda menghapus versi objek saat ini, Anda, akibatnya, mengubah versi lama ke versi saat ini dari objek tersebut. 
Saat Anda menggunakan aturan konfigurasi Siklus Hidup S3 dengan bucket berkemampuan versi, sebaiknya gunakan Metode 1 sebagai praktik terbaik.   
Siklus hidup S3 beroperasi di bawah model yang akhirnya konsisten. Versi saat ini yang Anda hapus secara permanen mungkin tidak hilang sampai perubahan menyebar ke semua sistem Amazon S3. (Oleh karena itu, Amazon S3 mungkin untuk sementara tidak mengetahui penghapusan ini.) Sementara itu, aturan siklus hidup yang Anda konfigurasikan untuk mengakhiri objek lama mungkin secara permanen menghapus objek lama, termasuk objek yang ingin Anda pulihkan. Jadi, menyalin versi lama, seperti yang direkomendasikan dalam Metode 1, adalah alternatif yang lebih aman.

### Tindakan Siklus Hidup dan kondisi Penentuan Versi bucket
<a name="lifecycle-actions-bucket-versioning-state"></a>

Tabel berikut merangkum perilaku tindakan aturan konfigurasi Siklus Hidup S3 pada objek sehubungan dengan status pembuatan versi bucket yang berisi objek.


| Tindakan | Bucket yang tanpa versi (Penentuan Versi tidak diaktifkan) | Bucket dengan dukungan Penentuan Versi | Bucket dengan Penentuan Versi ditangguhkan | 
| --- | --- | --- | --- | 
|  `Transition` Ketika suatu tanggal atau periode waktu tertentu dalam masa pakai objek tercapai.  | Amazon S3 mentransisikan objek ke kelas penyimpanan yang ditentukan. | Amazon S3 mentransisikan versi objek saat ini ke kelas penyimpanan yang ditentukan. | Perilaku yang sama dengan bucket yang memiliki dukungan Penentuan Versi. | 
|  `Expiration` Ketika suatu tanggal atau periode waktu tertentu dalam masa pakai objek tercapai.  | ExpirationTindakan menghapus objek, dan objek yang dihapus tidak dapat dipulihkan. | Jika versi saat ini bukan penanda hapus, Amazon S3 membuat penanda hapus, yang menjadi versi saat ini, dan versi saat ini yang ada dipertahankan sebagai versi noncurrent. | Tindakan siklus hidup membuat penanda hapus dengan ID null versi, yang menjadi versi saat ini. Jika ID versi dari versi objek saat ininull, Expiration tindakan akan menghapus versi ini secara permanen. Jika tidak, versi terbaru disimpan sebagai versi lama. | 
|  `NoncurrentVersionTransition` **Untuk versi noncurrent dalam bucket yang diaktifkan versi atau versi yang ditangguhkan, Siklus Hidup S3 mentransisikan objek ketika jumlah hari sejak objek tidak aktif melebihi nilai yang ditentukan di bawah **Hari setelah objek menjadi noncurrent** (`<NoncurrentDays>`) dalam aturan **dan** ketika jumlah versi melebihi nilai yang ditentukan dalam Jumlah versi yang lebih baru untuk dipertahankan () dalam aturan.** `<NewerNoncurrentVersions>`  | NoncurrentVersionTransition tidak berpengaruh. |  Amazon S3 mentransisikan versi objek lama ke kelas penyimpanan yang ditentukan.  | Perilaku yang sama dengan bucket yang diaktifkan versioning-nya. | 
|  `NoncurrentVersionExpiration` **Untuk versi noncurrent dalam bucket yang diaktifkan versi atau versi yang ditangguhkan, Siklus Hidup S3 akan kedaluwarsa objek ketika jumlah hari sejak objek tidak aktif melebihi nilai yang ditentukan dalam **Hari setelah objek menjadi noncurrent** (`<NoncurrentDays>`) dalam aturan **dan** ketika jumlah versi melebihi nilai yang ditentukan dalam Jumlah versi yang lebih baru untuk dipertahankan () dalam aturan.** `<NewerNoncurrentVersions>`  | NoncurrentVersionExpiration tidak berpengaruh. | NoncurrentVersionExpirationTindakan secara permanen menghapus versi noncurrent dari objek, dan objek yang dihapus tidak dapat dipulihkan. | Perilaku yang sama dengan bucket yang memiliki dukungan Penentuan Versi. | 

### Aturan siklus hidup: Berdasarkan usia objek
<a name="intro-lifecycle-rules-number-of-days"></a>

Anda dapat menentukan periode waktu, dalam jumlah hari sejak pembuatan (atau modifikasi) objek, ketika Amazon S3 dapat mengambil tindakan yang ditentukan. 

Saat Anda menentukan jumlah hari dalam tindkaan `Transition` dan `Expiration` dalam konfigurasi Siklus Hidup S3, perhatikan hal berikut:
+ Nilai yang Anda tentukan adalah jumlah hari sejak pembuatan objek ketika tindakan akan terjadi.
+ Amazon S3 menghitung waktu dengan menambahkan jumlah hari yang ditentukan dalam aturan ke waktu pembuatan objek dan membulatkan waktu yang dihasilkan ke hari berikutnya pada tengah malam UTC. Misalnya, jika sebuah objek dibuat pada 1/15/2014 pukul 10:30 UTC dan Anda menentukan 3 hari dalam aturan transisi, maka tanggal transisi objek akan dihitung sebagai 1/19/2014 00:00 UTC. 

**catatan**  
Amazon S3 hanya mempertahankan tanggal modifikasi terakhir untuk setiap objek. Misalnya, konsol Amazon S3 menunjukkan tanggal **modifikasi terakhir** di panel **Properti** objek. Ketika Anda awalnya membuat objek baru, tanggal ini mencerminkan tanggal bahwa objek dibuat. Jika Anda mengganti objek, tanggal akan berubah sesuai dengan perubahan tersebut. Oleh karena itu, tanggal pembuatan identik dengan Tanggal **modifikasi terakhir**. 

Saat menentukan jumlah hari pada tindakan `NoncurrentVersionTransition` dan `NoncurrentVersionExpiration` dalam konfigurasi Siklus Hidup, perhatikan hal berikut:
+ Nilai yang Anda tentukan adalah jumlah hari sejak versi objek menjadi noncurrent (yaitu, ketika objek ditimpa atau dihapus) Amazon S3 akan melakukan tindakan pada objek atau objek yang ditentukan.
+ Amazon S3 menghitung waktu dengan menambahkan jumlah hari yang ditentukan dalam aturan ke waktu ketika versi penerus baru dari objek dibuat dan membulatkan waktu yang dihasilkan ke hari berikutnya pada tengah malam UTC. Misalnya, di bucket Anda, misalkan Anda memiliki versi objek saat ini yang dibuat pada 1/1/2014 pukul 10:30 UTC. Jika versi baru dari objek yang menggantikan versi saat ini dibuat pada 1/15/2014 pukul 10:30 UTC, dan Anda menentukan 3 hari dalam aturan transisi, tanggal transisi objek dihitung sebagai 1/19/2014 00:00 UTC. 

### Aturan siklus hidup: Berdasarkan tanggal tertentu
<a name="intro-lifecycle-rules-date"></a>

Saat menentukan tindakan dalam aturan Siklus Hidup S3, Anda dapat menentukan tanggal kapan Anda ingin Amazon S3 untuk mengambil tindakan. Ketika tanggal tertentu tiba, Amazon S3 menerapkan tindakan ke semua objek yang memenuhi syarat (berdasarkan kriteria filter). 

Jika Anda menentukan tindakan Siklus Hidup S3 dengan tanggal sebelumnya, semua objek yang memenuhi syarat akan segera memenuhi syarat untuk tindakan siklus hidup tersebut.

**penting**  
Tindakan berbasis tanggal bukanlah tindakan satu kali. Amazon S3 terus menerapkan tindakan berbasis tanggal bahkan setelah tanggal berlalu, selama status aturan adalah `Enabled`.  
Misalnya, Anda menentukan `Expiration` tindakan berbasis tanggal untuk menghapus semua objek (asumsikan bahwa tidak ada filter yang ditentukan dalam aturan). Pada tanggal yang ditentukan, Amazon S3 menjadikan mengakhiri semua objek di dalam bucket. Amazon S3 juga terus kedaluwarsa objek baru yang Anda buat di ember. Untuk menghentikan tindakan siklus hidup, Anda harus menghapus tindakan dari aturan siklus hidup, menonaktifkan aturan, atau menghapus aturan dari konfigurasi siklus hidup.

Nilai tanggal harus sesuai dengan format ISO 8601. Waktunya adalah selalu tengah malam UTC. 

**catatan**  
Anda tidak dapat membuat aturan Siklus Hidup berbasis tanggal menggunakan konsol Amazon S3, tetapi Anda dapat melihat, menonaktifkan, atau menghapus aturan tersebut. 

# Menambahkan filter ke aturan Siklus Hidup
<a name="intro-lifecycle-filters"></a>

Filter adalah elemen aturan Lifecyle opsional yang dapat Anda gunakan untuk menentukan objek mana yang diterapkan aturan tersebut.

Elemen-elemen berikut dapat digunakan untuk menyaring objek:

**Awalan kunci**  
Anda dapat memfilter objek berdasarkan awalan. Jika Anda ingin menerapkan tindakan siklus hidup ke subset objek dengan awalan berbeda, buat aturan terpisah untuk setiap tindakan.

**Tag objek**  
Anda dapat memfilter objek berdasarkan satu atau beberapa tag. Setiap tag harus cocok dengan kunci dan nilai dengan tepat, dan, jika Anda menentukan beberapa tag, setiap kunci tag harus unik. Filter dengan beberapa tag objek berlaku untuk subset objek yang memiliki semua tag yang ditentukan. Jika suatu objek memiliki tag tambahan yang ditentukan, filter akan tetap berlaku.  
Jika Anda hanya menentukan `Key` elemen dan tidak ada `Value` elemen, aturan hanya akan berlaku untuk objek yang cocok dengan kunci tag dan yang tidak memiliki nilai yang ditentukan.

**Ukuran objek minimum atau maksimum**  
Anda dapat memfilter objek berdasarkan ukuran. Anda dapat menentukan ukuran minimum (`ObjectSizeGreaterThan`) atau ukuran maksimum (`ObjectSizeLessThan`), atau Anda dapat menentukan rentang ukuran objek dalam filter yang sama. Besar objek dalam byte. Ukuran filter maksimum adalah 50 TB. Amazon S3 menerapkan ukuran objek minimum default ke konfigurasi siklus hidup. Untuk informasi selengkapnya, lihat [Contoh: Mengizinkan objek yang lebih kecil dari 128 KB untuk dialihkan](lifecycle-configuration-examples.md#lc-small-objects).

Anda dapat menggabungkan elemen filter yang berbeda dalam hal ini Amazon S3 menggunakan logika. `AND`

## Contoh filter
<a name="filter-examples"></a>

Contoh berikut menunjukkan bagaimana Anda dapat menggunakan elemen filter yang berbeda:
+ **Menentukan filter dengan menggunakan awalan kunci** — Contoh ini menunjukkan aturan Siklus Hidup S3 yang berlaku untuk subset objek berdasarkan awalan nama kunci (). `logs/` Misalnya, aturan Siklus Hidup berlaku untuk objek`logs/mylog.txt`,`logs/temp1.txt`, dan. `logs/test.txt` Aturan tidak berlaku untuk objek `example.jpg`.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Prefix>logs/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
      ...
  </LifecycleConfiguration>
  ```
**catatan**  
 Jika Anda memiliki satu atau lebih awalan yang dimulai dengan karakter yang sama, Anda dapat menyertakan semua awalan tersebut dalam aturan Anda dengan menentukan awalan parsi tanpa garis miring () di filter. `/` Misalnya, anggaplah Anda memiliki awalan ini:  

  ```
  sales1999/
                  sales2000/
                  sales2001/
  ```
Untuk menyertakan ketiga awalan dalam aturan Anda, tentukan `sales` sebagai awalan dalam aturan siklus hidup Anda.

  Jika Anda ingin menerapkan tindakan siklus hidup ke subset objek berdasarkan awalan nama kunci yang berbeda, tentukan aturan terpisah. Pada setiap aturan, tentukan filter berbasis awalan. Misalnya, untuk mendeskripsikan tindakan siklus hidup objek dengan awalan kunci `projectA/` dan`projectB/`, Anda menentukan dua aturan sebagai berikut: 

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Prefix>projectA/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
  
      <Rule>
          <Filter>
             <Prefix>projectB/</Prefix>
          </Filter>
          transition/expiration actions
           ...
      </Rule>
  </LifecycleConfiguration>
  ```

  Untuk informasi selengkapnya tentang kunci objek, lihat [Menamai objek Amazon S3](object-keys.md). 
+ **Menentukan filter berdasarkan tag objek** - Dalam contoh berikut, aturan Siklus Hidup menentukan filter berdasarkan tag (`key`) dan value (). `value` Aturan ini kemudian hanya berlaku untuk subset objek dengan tag tertentu.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
             <Tag>
                <Key>key</Key>
                <Value>value</Value>
             </Tag>
          </Filter>
          transition/expiration actions
          ...
      </Rule>
  </LifecycleConfiguration>
  ```

  Anda dapat menentukan filter berdasarkan beberapa tag. Anda harus membungkus tag dalam `<And>` elemen, seperti yang ditunjukkan pada contoh berikut. Aturan tersebut mengarahkan Amazon S3 untuk melakukan tindakan siklus hidup pada objek dengan dua tag (dengan kunci dan nilai tag khusus).

  ```
  <LifecycleConfiguration>
      <Rule>
        <Filter>
           <And>
              <Tag>
                 <Key>key1</Key>
                 <Value>value1</Value>
              </Tag>
              <Tag>
                 <Key>key2</Key>
                 <Value>value2</Value>
              </Tag>
               ...
            </And>
        </Filter>
        transition/expiration actions
      </Rule>
  </Lifecycle>
  ```

  Aturan Siklus Hidup berlaku untuk objek yang memiliki kedua tag yang ditentukan. Amazon S3 menjalankan `AND` logis. Perhatikan hal-hal berikut:
  + *Setiap tag harus sama persis dengan kunci dan nilai.* Jika Anda hanya menentukan `<Key>` elemen dan tidak ada `<Value>` elemen, aturan hanya akan berlaku untuk objek yang cocok dengan kunci tag dan yang *tidak* memiliki nilai yang ditentukan.
  + Aturan ini berlaku untuk subset objek yang memiliki semua tag yang ditentukan dalam aturan. Jika sebuah objek memiliki tag tambahan yang ditentukan, aturan tersebut akan tetap berlaku.
**catatan**  
Ketika Anda menentukan beberapa tag di filter, setiap kunci tag harus unik.
+ **Menentukan filter berdasarkan awalan dan satu atau beberapa tag** — Dalam aturan Siklus Hidup, Anda dapat menentukan filter berdasarkan awalan kunci dan satu atau beberapa tag. Sekali lagi, Anda harus membungkus semua elemen filter ini dalam `<And>` elemen, sebagai berikut:

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
            <And>
               <Prefix>key-prefix</Prefix>
               <Tag>
                  <Key>key1</Key>
                  <Value>value1</Value>
               </Tag>
               <Tag>
                  <Key>key2</Key>
                  <Value>value2</Value>
               </Tag>
                ...
            </And>
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```

  Amazon S3 menggabungkan filter ini dengan menggunakan logika. `AND` Artinya, aturan berlaku untuk subset objek dengan key prefix yang ditentukan dan tag yang ditentukan. Filter hanya dapat memiliki satu awalan, dan nol atau lebih tag.
+ **Menentukan filter kosong** — Anda dapat menentukan filter kosong, dalam hal ini aturan berlaku untuk semua objek dalam ember.

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```
+ **> Menentukan filter ukuran objek** - Untuk memfilter aturan berdasarkan ukuran objek, Anda dapat menentukan ukuran minimum (`ObjectSizeGreaterThan`) atau ukuran maksimum (`ObjectSizeLessThan`), atau Anda dapat menentukan berbagai ukuran objek.

  Besar objek dalam byte. Ukuran filter maksimum adalah 50 TB. Beberapa kelas penyimpanan memiliki batasan ukuran objek minimum. Untuk informasi selengkapnya, lihat [Membandingkan kelas penyimpanan Amazon S3](storage-class-intro.md#sc-compare).

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
              <ObjectSizeGreaterThan>500</ObjectSizeGreaterThan>   
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```
**catatan**  
`ObjectSizeLessThan`Filter `ObjectSizeGreaterThan` dan mengecualikan nilai yang ditentukan. Misalnya, jika Anda menyetel objek berukuran 128 KB hingga 1024 KB untuk berpindah dari kelas penyimpanan Standar S3 ke kelas penyimpanan IA Standar S3, objek yang persis 1024 KB dan 128 KB tidak akan beralih ke IA Standar S3. Sebagai gantinya, aturan hanya akan berlaku untuk objek yang lebih besar dari 128 KB dan berukuran kurang dari 1024 KB. 

  Jika Anda menentukan rentang ukuran objek, bilangan bulat `ObjectSizeGreaterThan` harus kurang dari nilai `ObjectSizeLessThan`. Saat menggunakan lebih dari satu filter, Anda harus membungkus filter dalam elemen `<And>`. Contoh berikut menunjukkan bagaimana menentukan objek dalam kisaran antara 500 byte dan 64.000 byte. 

  ```
  <LifecycleConfiguration>
      <Rule>
          <Filter>
              <And>
                  <Prefix>key-prefix</Prefix>
                  <ObjectSizeGreaterThan>500</ObjectSizeGreaterThan>
                  <ObjectSizeLessThan>64000</ObjectSizeLessThan>
              </And>    
          </Filter>
          <Status>Enabled</Status>
          transition/expiration actions
      </Rule>
  </LifecycleConfiguration>
  ```

# Bagaimana Amazon S3 menangani konflik dalam konfigurasi siklus hidup
<a name="lifecycle-conflicts"></a>

Umumnya, Siklus hidup Amazon S3 mengoptimalkan biaya. Misalnya, jika dua kebijakan kedaluwarsa tumpang tindih, kebijakan kedaluwarsa yang lebih pendek akan dipenuhi sehingga data tidak disimpan lebih lama dari yang diharapkan. Demikian pula, jika dua kebijakan transisi tumpang tindih, Siklus Hidup S3 mentransisi objek Anda ke kelas penyimpanan berbiaya rendah.

Dalam kedua kasus tersebut, Siklus Hidup S3 mencoba memilih jalur yang paling murah bagi Anda. Pengecualian untuk aturan umum ini adalah dengan kelas penyimpanan S3 Intelligent-Tiering. S3 Intelligent-Tiering lebih disukai oleh Siklus Hidup S3 daripada kelas penyimpanan mana pun, selain kelas penyimpanan S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive.

Jika Anda memiliki beberapa aturan dalam konfigurasi Siklus Hidup S3, objek dapat memenuhi syarat untuk beberapa tindakan Siklus Hidup S3 pada hari yang sama. Dalam kasus tersebut, Amazon S3 mengikuti aturan umum ini:
+ Penghapusan permanen lebih diutamakan daripada transisi.
+ Transisi lebih diutamakan daripada pembuatan penanda [hapus](DeleteMarker.md).
+ Ketika objek memenuhi syarat untuk transisi S3 Glacier Flexible Retrieval dan S3 Standard-IA (atau S3 One Zone-IA) transisi, Amazon S3 memilih transisi S3 Glacier Flexible Retrieval.

## Contoh filter yang tumpang tindih dan tindakan siklus hidup yang bertentangan
<a name="lifecycle-config-conceptual-ex5"></a>

Anda dapat menentukan konfigurasi Siklus Hidup S3 yang kemudian Anda menentukan tindakan, atau awalan yang tumpang tindih. Contoh berikut menunjukkan cara Amazon S3 menyelesaikan potensi konflik.

**Example 1: Awalan tumpang-tindih (tidak ada konflik)**  
Konfigurasi contoh berikut memiliki dua aturan yang menetapkan awalan yang tumpang tindih sebagai berikut:  
+ Aturan pertama menetapkan filter kosong, yang menunjukkan semua objek dalam bucket. 
+ Aturan kedua menetapkan awalan nama kunci (`logs/`), yang hanya menunjukkan subset objek.
Aturan 1 meminta Amazon S3 menghapus semua objek satu tahun setelah pembuatan. Aturan 2 meminta Amazon S3 mentransisikan subset objek ke kelas penyimpanan S3 Standard-IA 30 hari setelah pembuatan.  

```
 1. <LifecycleConfiguration>
 2.   <Rule>
 3.     <ID>Rule 1</ID>
 4.     <Filter>
 5.     </Filter>
 6.     <Status>Enabled</Status>
 7.     <Expiration>
 8.       <Days>365</Days>
 9.     </Expiration>
10.   </Rule>
11.   <Rule>
12.     <ID>Rule 2</ID>
13.     <Filter>
14.       <Prefix>logs/</Prefix>
15.     </Filter>
16.     <Status>Enabled</Status>
17.     <Transition>
18.       <StorageClass>STANDARD_IA</StorageClass>
19.       <Days>30</Days>
20.     </Transition>
21.    </Rule>
22. </LifecycleConfiguration>
```
Karena tidak ada konflik dalam kasus ini, Amazon S3 akan mentransisikan objek dengan awalan `logs/` ke kelas penyimpanan S3 Standard-IA 30 hari setelah pembuatan. Ketika objek apa pun mencapai satu tahun setelah pembuatan, itu akan dihapus.

**Example 2: Tindakan siklus hidup yang bertentangan**  
Dalam konfigurasi contoh ini, ada dua aturan yang mengarahkan Amazon S3 untuk melakukan dua tindakan berbeda pada set objek yang sama dalam masa aktif objek:  
+ Kedua aturan menentukan awalan nama kunci yang sama, sehingga kedua aturan berlaku pada objek yang sama.
+ Kedua aturan menentukan 365 hari yang sama setelah pembuatan objek saat aturan berlaku.
+ Satu aturan mengarahkan Amazon S3 untuk mentransisi objek ke kelas penyimpanan S3 Standard-IA dan aturan lain ingin Amazon S3 mengakhiri objek pada saat yang sama.

```
<LifecycleConfiguration>
  <Rule>
    <ID>Rule 1</ID>
    <Filter>
      <Prefix>logs/</Prefix>
    </Filter>
    <Status>Enabled</Status>
    <Expiration>
      <Days>365</Days>
    </Expiration>        
  </Rule>
  <Rule>
    <ID>Rule 2</ID>
    <Filter>
      <Prefix>logs/</Prefix>
    </Filter>
    <Status>Enabled</Status>
    <Transition>
      <StorageClass>STANDARD_IA</StorageClass>
      <Days>365</Days>
    </Transition>
   </Rule>
</LifecycleConfiguration>
```
Dalam kasus ini, karena Anda ingin objek kedaluwarsa (dihapus), tidak ada artinya mengubah kelas penyimpanan, jadi Amazon S3 memilih tindakan kedaluwarsa pada objek tersebut.

**Example 3: Awalan tumpang-tindih yang mengakibatkan tindakan siklus hidup yang bertentangan**  
Dalam contoh ini, konfigurasi memiliki dua aturan, yang menetapkan awalan tumpang tindih sebagai berikut:  
+ Aturan 1 menetapkan awalan kosong (menunjukkan semua objek).
+ Aturan 2 menetapkan awalan nama kunci (`logs/`) yang mengidentifikasi bagian dari semua objek.
Untuk subset objek dengan awalan nama kunci `logs/`, tindakan Siklus Hidup S3 dalam kedua aturan berlaku. Satu aturan mengarahkan Amazon S3 transisi objek 10 hari setelah pembuatan, dan aturan lain mengarahkan Amazon S3 mentransisi objek 365 hari setelah pembuatan.   

```
<LifecycleConfiguration>
  <Rule>
    <ID>Rule 1</ID>
    <Filter>
      <Prefix></Prefix>
    </Filter>
    <Status>Enabled</Status>
    <Transition>
      <StorageClass>STANDARD_IA</StorageClass>
      <Days>10</Days> 
    </Transition>
  </Rule>
  <Rule>
    <ID>Rule 2</ID>
    <Filter>
      <Prefix>logs/</Prefix>
    </Filter>
    <Status>Enabled</Status>
    <Transition>
      <StorageClass>STANDARD_IA</StorageClass>
      <Days>365</Days> 
    </Transition>
   </Rule>
</LifecycleConfiguration>
```
Dalam kasus ini, Amazon S3 memilih untuk melakukan transisi 10 hari setelah pembuatan. 

**Example 4: Pemfilteran berbasis tag dan tindakan siklus hidup bertentangan yang diakibatkan**  
Anggaplah Anda memiliki konfigurasi Siklus Hidup S3 berikut yang memiliki dua aturan, masing-masing menetapkan filter tag:  
+ Aturan 1 menetapkan filter berbasis tag (`tag1/value1`). Aturan ini mengarahkan Amazon S3 mentransisi objek ke kelas penyimpanan S3 Glacier Flexible Retrieval 365 hari setelah pembuatan.
+ Aturan 2 menetapkan filter berbasis tag (`tag2/value2`). Aturan ini mengarahkan Amazon S3 untuk mengakhiri objek 14 hari setelah pembuatan.
Konfigurasi Siklus Hidup S3 ditampilkan dalam contoh berikut.  

```
<LifecycleConfiguration>
  <Rule>
    <ID>Rule 1</ID>
    <Filter>
      <Tag>
         <Key>tag1</Key>
         <Value>value1</Value>
      </Tag>
    </Filter>
    <Status>Enabled</Status>
    <Transition>
      <StorageClass>GLACIER</StorageClass>
      <Days>365</Days> 
    </Transition>
  </Rule>
  <Rule>
    <ID>Rule 2</ID>
    <Filter>
      <Tag>
         <Key>tag2</Key>
         <Value>value2</Value>
      </Tag>
    </Filter>
    <Status>Enabled</Status>
    <Expiration>
      <Days>14</Days> 
    </Expiration>
   </Rule>
</LifecycleConfiguration>
```
Jika suatu objek memiliki kedua tag, Amazon S3 harus memutuskan aturan mana yang harus diikuti. Dalam kasus ini, Amazon S3 mengakhiri objek 14 hari setelah pembuatan. Objek dihapus, dan oleh karena itu tindakan transisi tidak berlaku.





# Contoh konfigurasi Siklus Hidup S3
<a name="lifecycle-configuration-examples"></a>

Bagian ini memberikan contoh konfigurasi Siklus Hidup S3. Setiap contoh menunjukkan bagaimana Anda dapat menentukan XML dalam setiap contoh skenario.

**Topics**
+ [Mengarsipkan semua objek dalam satu hari setelah pembuatan](#lifecycle-config-ex1)
+ [Menonaktifkan aturan Siklus Hidup untuk sementara](#lifecycle-config-conceptual-ex2)
+ [Menjajarkan kelas penyimpanan selama masa pakai objek](#lifecycle-config-conceptual-ex3)
+ [Menentukan beberapa aturan](#lifecycle-config-conceptual-ex4)
+ [Menentukan aturan siklus aktif untuk bucket yang diaktifkan versioning-nya](#lifecycle-config-conceptual-ex6)
+ [Menghapus penanda penghapusan objek yang kedaluwarsa dalam bucket berkemampuan versi](#lifecycle-config-conceptual-ex7)
+ [Konfigurasi Lifecycle untuk membatalkan unggahan multibagian](#lc-expire-mpu)
+ [Objek noncurrent yang kedaluwarsa yang tidak memiliki data](#lc-size-rules)
+ [Contoh: Mengizinkan objek yang lebih kecil dari 128 KB untuk dialihkan](#lc-small-objects)

## Mengarsipkan semua objek dalam satu hari setelah pembuatan
<a name="lifecycle-config-ex1"></a>

Setiap aturan Siklus Hidup S3 mencakup filter yang dapat Anda gunakan untuk mengidentifikasi bagian objek dalam bucket Anda yang berlaku aturan Siklus Hidup S3. Konfigurasi Siklus Hidup S3 berikut menunjukkan contoh cara menentukan filter.
+ Dalam aturan konfigurasi Siklus Hidup S3 ini, filter menentukan awalan kunci (`tax/`). Oleh karena itu, aturan berlaku untuk objek dengan awalan nama kunci `tax/`, seperti `tax/doc1.txt` dan `tax/doc2.txt`.

  Aturan tersebut menetapkan dua tindakan yang mengarahkan Amazon S3 untuk melakukan hal berikut:
  + Transisi objek ke kelas penyimpanan S3 Glacier Flexible Retrieval 365 hari (satu tahun) setelah pembuatan.
  + Menghapus objek (tindakan `Expiration`) 3.650 hari (10 tahun) setelah pembuatan.

  ```
  <LifecycleConfiguration>
    <Rule>
      <ID>Transition and Expiration Rule</ID>
      <Filter>
         <Prefix>tax/</Prefix>
      </Filter>
      <Status>Enabled</Status>
      <Transition>
        <Days>365</Days>
        <StorageClass>GLACIER</StorageClass>
      </Transition>
      <Expiration>
        <Days>3650</Days>
      </Expiration>
    </Rule>
  </LifecycleConfiguration>
  ```

  Alih-alih menentukan usia objek dalam hal hari setelah pembuatan, Anda dapat menentukan tanggal untuk setiap tindakan. Namun, Anda tidak dapat menggunakan `Date` dan `Days` dalam aturan yang sama. 
+ Jika Anda ingin aturan Siklus Hidup S3 berlaku pada semua objek dalam bucket, tentukan awalan kosong. Dalam konfigurasi berikut, aturan menentukan tindakan `Transition` yang mengarahkan Amazon S3 untuk melakukan transisi objek ke kelas penyimpanan S3 Glacier Flexible Retrieval 0 hari setelah pembuatan. Aturan ini berarti bahwa objek memenuhi syarat untuk arsip ke S3 Glacier Flexible Retrieval pada tengah malam UTC setelah pembuatan. Untuk informasi selengkapnya tentang batasan siklus hidup, lihat [Kendala dan pertimbangan untuk transisi](lifecycle-transition-general-considerations.md#lifecycle-configuration-constraints).

  ```
  <LifecycleConfiguration>
    <Rule>
      <ID>Archive all object same-day upon creation</ID>
      <Filter>
        <Prefix></Prefix>
      </Filter>
      <Status>Enabled</Status>
      <Transition>
        <Days>0</Days>
        <StorageClass>GLACIER</StorageClass>
      </Transition>
    </Rule>
  </LifecycleConfiguration>
  ```
+ Anda dapat menentukan nol atau satu awalan nama kunci dan nol atau lebih tag objek pada suatu filter. Kode contoh berikut ini menerapkan aturan Siklus Hidup S3 pada subset objek dengan awalan kunci `tax/` dan untuk objek yang memiliki dua tag dengan kunci dan nilai spesifik. Saat Anda menentukan lebih dari satu filter, Anda harus menyertakan elemen `<And>` seperti yang ditunjukkan (Amazon S3 menerapkan `AND` logis untuk menggabungkan kondisi filter yang ditentukan).

  ```
  ...
  <Filter>
     <And>
        <Prefix>tax/</Prefix>
        <Tag>
           <Key>key1</Key>
           <Value>value1</Value>
        </Tag>
        <Tag>
           <Key>key2</Key>
           <Value>value2</Value>
        </Tag>
      </And>
  </Filter>
  ...
  ```

  
+ Anda dapat memfilter objek berdasarkan tag saja. Misalnya, aturan Siklus Hidup S3 berikut berlaku untuk objek yang memiliki dua label yang ditentukan (tidak menyebutkan awalan apa pun).

  ```
  ...
  <Filter>
     <And>
        <Tag>
           <Key>key1</Key>
           <Value>value1</Value>
        </Tag>
        <Tag>
           <Key>key2</Key>
           <Value>value2</Value>
        </Tag>
      </And>
  </Filter>
  ...
  ```

  

**penting**  
Jika Anda memiliki beberapa aturan dalam konfigurasi Siklus Hidup S3, objek dapat memenuhi syarat untuk beberapa tindakan Siklus Hidup S3 pada hari yang sama. Dalam kasus tersebut, Amazon S3 mengikuti aturan umum ini:  
Penghapusan permanen lebih diutamakan daripada transisi.
Transisi lebih diutamakan daripada pembuatan penanda [hapus](DeleteMarker.md).
Saat objek memenuhi syarat untuk transisi S3 Glacier Flexible Retrieval dan S3 Standard-IA (atau S3 One Zone-IA), Amazon S3 memilih transisi Pengambilan Fleksibel S3 Glacier.
 Sebagai contoh, lihat [Contoh filter yang tumpang tindih dan tindakan siklus hidup yang bertentangan](lifecycle-conflicts.md#lifecycle-config-conceptual-ex5). 



## Menonaktifkan aturan Siklus Hidup untuk sementara
<a name="lifecycle-config-conceptual-ex2"></a>

Anda dapat menonaktifkan sementara aturan Siklus Hidup S3 menggunakan elemen. `status` Ini dapat berguna jika Anda ingin menguji aturan baru atau memecahkan masalah dengan konfigurasi Anda, tanpa menimpa aturan yang ada. Konfigurasi Siklus Hidup S3 berikut menetapkan dua aturan:
+ Aturan 1 mengarahkan Amazon S3 untuk melakukan transisi objek dengan awalan `logs/` ke kelas penyimpanan S3 Glacier Flexible Retrieval segera setelah pembuatan. 
+ Aturan 2 mengarahkan Amazon S3 untuk melakukan transisi objek dengan awalan `documents/` ke kelas penyimpanan S3 Glacier Flexible Retrieval segera setelah pembuatan. 

Dalam konfigurasi, Aturan 1 diaktifkan dan Aturan 2 dinonaktifkan. Amazon S3 mengabaikan aturan yang dinonaktifkan.

```
<LifecycleConfiguration>
  <Rule>
    <ID>Rule1</ID>
    <Filter>
      <Prefix>logs/</Prefix>
    </Filter>
    <Status>Enabled</Status>
    <Transition>
      <Days>0</Days>
      <StorageClass>GLACIER</StorageClass>
    </Transition>
  </Rule>
  <Rule>
    <ID>Rule2</ID>
    <Filter>
      <Prefix>documents/</Prefix>
    </Filter>
    <Status>Disabled</Status>
    <Transition>
      <Days>0</Days>
      <StorageClass>GLACIER</StorageClass>
    </Transition>
  </Rule>
</LifecycleConfiguration>
```

## Menjajarkan kelas penyimpanan selama masa pakai objek
<a name="lifecycle-config-conceptual-ex3"></a>

Dalam contoh ini, Anda menggunakan konfigurasi Siklus Hidup S3 untuk menurunkan kelas penyimpanan objek selama masa aktifnya. Penurunan tingkat dapat membantu mengurangi biaya penyimpanan. Untuk informasi selengkapnya tentang harga, lihat [Harga Amazon S3](https://aws.amazon.com/s3/pricing/).

Konfigurasi Siklus Hidup S3 berikut ini menentukan aturan yang berlaku untuk objek dengan awalan nama kunci `logs/`. Aturan menetapkan tindakan berikut ini:
+ Dua tindakan transisi:
  + Transisi objek ke kelas penyimpanan S3 Standard-IA 30 hari setelah pembuatan.
  + Transisi objek ke kelas penyimpanan S3 Glacier Flexible Retrieval 90 hari setelah pembuatan.
+ Satu tindakan kedaluwarsa yang mengarahkan Amazon S3 untuk menghapus objek setahun setelah pembuatan.

```
<LifecycleConfiguration>
  <Rule>
    <ID>example-id</ID>
    <Filter>
       <Prefix>logs/</Prefix>
    </Filter>
    <Status>Enabled</Status>
    <Transition>
      <Days>30</Days>
      <StorageClass>STANDARD_IA</StorageClass>
    </Transition>
    <Transition>
      <Days>90</Days>
      <StorageClass>GLACIER</StorageClass>
    </Transition>
    <Expiration>
      <Days>365</Days>
    </Expiration>
  </Rule>
</LifecycleConfiguration>
```

**catatan**  
Anda dapat menggunakan satu aturan untuk menjelaskan semua tindakan Siklus Hidup S3 jika semua tindakan berlaku pada set objek yang sama (diidentifikasi oleh filter). Jika tidak, Anda dapat menambahkan beberapa aturan dengan masing-masing menetapkan filter yang berbeda.

**penting**  
Jika Anda memiliki beberapa aturan dalam konfigurasi Siklus Hidup S3, objek dapat memenuhi syarat untuk beberapa tindakan Siklus Hidup S3 pada hari yang sama. Dalam kasus tersebut, Amazon S3 mengikuti aturan umum ini:  
Penghapusan permanen lebih diutamakan daripada transisi.
Transisi lebih diutamakan daripada pembuatan penanda [hapus](DeleteMarker.md).
Saat objek memenuhi syarat untuk transisi S3 Glacier Flexible Retrieval dan S3 Standard-IA (atau S3 One Zone-IA), Amazon S3 memilih transisi Pengambilan Fleksibel S3 Glacier.
 Sebagai contoh, lihat [Contoh filter yang tumpang tindih dan tindakan siklus hidup yang bertentangan](lifecycle-conflicts.md#lifecycle-config-conceptual-ex5). 

## Menentukan beberapa aturan
<a name="lifecycle-config-conceptual-ex4"></a>



Anda dapat menentukan beberapa aturan jika Anda menginginkan tindakan Siklus Hidup S3 yang berbeda dari objek yang berbeda. Konfigurasi Siklus Hidup S3 berikut memiliki dua aturan:
+ Aturan 1 berlaku untuk objek dengan awalan nama kunci `classA/`. Aturan ini mengarahkan Amazon S3 untuk melakukan transisi objek ke kelas penyimpanan S3 Glacier Flexible Retrieval satu tahun setelah pembuatan dan mengakhiri objek ini 10 tahun setelah pembuatan.
+ Aturan 2 berlaku untuk objek dengan awalan nama kunci `classB/`. Aturan ini mengarahkan Amazon S3 untuk melakukan transisi objek ke kelas penyimpanan S3 Standard-IA 90 hari setelah pembuatan dan menghapusnya satu tahun setelah pembuatan.

```
<LifecycleConfiguration>
    <Rule>
        <ID>ClassADocRule</ID>
        <Filter>
           <Prefix>classA/</Prefix>        
        </Filter>
        <Status>Enabled</Status>
        <Transition>        
           <Days>365</Days>        
           <StorageClass>GLACIER</StorageClass>       
        </Transition>    
        <Expiration>
             <Days>3650</Days>
        </Expiration>
    </Rule>
    <Rule>
        <ID>ClassBDocRule</ID>
        <Filter>
            <Prefix>classB/</Prefix>
        </Filter>
        <Status>Enabled</Status>
        <Transition>        
           <Days>90</Days>        
           <StorageClass>STANDARD_IA</StorageClass>       
        </Transition>    
        <Expiration>
             <Days>365</Days>
        </Expiration>
    </Rule>
</LifecycleConfiguration>
```

**penting**  
Jika Anda memiliki beberapa aturan dalam konfigurasi Siklus Hidup S3, objek dapat memenuhi syarat untuk beberapa tindakan Siklus Hidup S3 pada hari yang sama. Dalam kasus tersebut, Amazon S3 mengikuti aturan umum ini:  
Penghapusan permanen lebih diutamakan daripada transisi.
Transisi lebih diutamakan daripada pembuatan penanda [hapus](DeleteMarker.md).
Saat objek memenuhi syarat untuk transisi S3 Glacier Flexible Retrieval dan S3 Standard-IA (atau S3 One Zone-IA), Amazon S3 memilih transisi Pengambilan Fleksibel S3 Glacier.
 Sebagai contoh, lihat [Contoh filter yang tumpang tindih dan tindakan siklus hidup yang bertentangan](lifecycle-conflicts.md#lifecycle-config-conceptual-ex5). 

## Menentukan aturan siklus aktif untuk bucket yang diaktifkan versioning-nya
<a name="lifecycle-config-conceptual-ex6"></a>

Misalkan Anda memiliki bucket dengan dukungan Penentuan Versi, yang berarti untuk setiap objek Anda memiliki versi saat ini dan nol atau lebih versi lama. (Untuk informasi selengkapnya tentang Penentuan Versi S3, lihat [Mempertahankan beberapa versi objek dengan Versi S3](Versioning.md).) 

Dalam contoh berikut, Anda ingin mempertahankan sejarah satu tahun, dan mempertahankan 5 versi tidak terkini. Konfigurasi Siklus Hidup S3 mendukung penyimpanan 1 hingga 100 versi objek apa pun. Ketahuilah bahwa lebih dari 5 versi noncurrent yang lebih baru harus ada sebelum Amazon S3 dapat kedaluwarsa versi tertentu. Amazon S3 akan secara permanen menghapus versi noncurrent tambahan di luar nomor yang ditentukan untuk disimpan. Agar penghapusan terjadi, nilai `NoncurrentDays` dan `NewerNoncurrentVersions` nilai harus dilampaui.

Untuk menghemat biaya penyimpanan, Anda ingin memindahkan versi lama ke S3 Glacier Flexible Retrieval 30 hari setelah menjadi versi lama (dengan asumsi objek lama ini adalah data dingin yang tidak memerlukan akses waktu nyata). Selain itu, Anda mengharapkan frekuensi akses versi saat ini berkurang 90 hari setelah pembuatan, jadi Anda dapat memilih untuk memindahkan objek ini ke kelas penyimpanan IA Standar S3.

```
 1. <LifecycleConfiguration>
 2.     <Rule>
 3.         <ID>sample-rule</ID>
 4.         <Filter>
 5.            <Prefix></Prefix>
 6.         </Filter>
 7.         <Status>Enabled</Status>
 8.         <Transition>
 9.            <Days>90</Days>
10.            <StorageClass>STANDARD_IA</StorageClass>
11.         </Transition>
12.         <NoncurrentVersionTransition>      
13.             <NoncurrentDays>30</NoncurrentDays>      
14.             <StorageClass>GLACIER</StorageClass>   
15.         </NoncurrentVersionTransition>    
16.        <NoncurrentVersionExpiration>     
17.             <NewerNoncurrentVersions>5</NewerNoncurrentVersions>
18.             <NoncurrentDays>365</NoncurrentDays>    
19.        </NoncurrentVersionExpiration> 
20.     </Rule>
21. </LifecycleConfiguration>
```

## Menghapus penanda penghapusan objek yang kedaluwarsa dalam bucket berkemampuan versi
<a name="lifecycle-config-conceptual-ex7"></a>



Bucket dengan dukungan Penentuan Versi memiliki satu versi saat ini dan nol atau lebih versi lama untuk setiap objek. Ketika Anda menghapus sebuah objek, perhatikan hal berikut ini:
+ Jika Anda tidak menentukan ID versi dalam permintaan penghapusan Anda, Amazon S3 menambahkan penanda hapus alih-alih menghapus objek. Versi objek saat ini menjadi versi lama, dan penanda hapus menjadi versi saat ini. 
+ Jika Anda menentukan ID versi dalam permintaan penghapusan, Amazon S3 akan menghapus versi objek secara permanen (penanda hapus tidak dibuat).
+ Penanda hapus dengan nol versi lama disebut sebagai *penanda hapus objek kedaluwarsa*. 

Contoh ini menunjukkan skenario yang dapat membuat penanda hapus objek kedaluwarsa dalam bucket Anda, dan cara Anda dapat menggunakan konfigurasi Siklus Hidup S3 untuk mengarahkan Amazon S3 untuk menghapus penanda hapus objek kedaluwarsa.

Misalkan Anda menulis konfigurasi Siklus Hidup S3 yang menggunakan `NoncurrentVersionExpiration` tindakan untuk menghapus versi noncurrent 30 hari setelah menjadi noncurrent dan mempertahankan 10 versi noncurrent, seperti yang ditunjukkan pada contoh berikut. Ketahuilah bahwa lebih dari 10 versi noncurrent yang lebih baru harus ada sebelum Amazon S3 dapat kedaluwarsa versi tertentu. Amazon S3 akan secara permanen menghapus versi noncurrent tambahan di luar nomor yang ditentukan untuk disimpan. Agar penghapusan terjadi, nilai `NoncurrentDays` dan `NewerNoncurrentVersions` nilai harus dilampaui.

```
<LifecycleConfiguration>
    <Rule>
        ...
        <NoncurrentVersionExpiration>     
            <NewerNoncurrentVersions>10</NewerNoncurrentVersions>
            <NoncurrentDays>30</NoncurrentDays>    
        </NoncurrentVersionExpiration>
    </Rule>
</LifecycleConfiguration>
```

`NoncurrentVersionExpiration`Tindakan tidak berlaku untuk versi objek saat ini. Ini hanya menghapus versi lama.

Untuk versi objek saat ini, Anda memiliki opsi berikut untuk mengelola masa aktifnya, tergantung pada apakah versi objek saat ini mengikuti siklus hidup yang ditetapkan dengan baik: 
+ **Versi objek saat ini mengikuti siklus hidup yang ditentukan dengan baik.**

  Dalam kasus ini, Anda dapat menggunakan konfigurasi Siklus Hidup S3 dengan tindakan `Expiration` guna mengarahkan Amazon S3 untuk menghapus versi saat ini, seperti yang ditunjukkan pada contoh berikut.

  ```
  <LifecycleConfiguration>
      <Rule>
          ...
          <Expiration>
             <Days>60</Days>
          </Expiration>
          <NoncurrentVersionExpiration>     
              <NewerNoncurrentVersions>10</NewerNoncurrentVersions>
              <NoncurrentDays>30</NoncurrentDays>    
          </NoncurrentVersionExpiration>
      </Rule>
  </LifecycleConfiguration>
  ```

  Dalam contoh ini, Amazon S3 menghapus versi saat ini 60 hari setelah dibuat dengan menambahkan penanda hapus untuk setiap versi objek saat ini. Proses ini membuat versi saat ini menjadi lama, dan penanda hapus menjadi versi saat ini. Untuk informasi selengkapnya, lihat [Mempertahankan beberapa versi objek dengan Versi S3](Versioning.md). 
**catatan**  
Anda tidak dapat menentukan tag `Days` dan `ExpiredObjectDeleteMarker` tag pada aturan yang sama. Saat menentukan tag `Days`, Amazon S3 secara otomatis melakukan pembersihan `ExpiredObjectDeleteMarker` saat penanda hapus sudah cukup tua untuk memenuhi kriteria usia. Untuk membersihkan penanda hapus segera setelah menjadi satu-satunya versi, buat aturan terpisah hanya dengan tag `ExpiredObjectDeleteMarker`.

  Tindakan `NoncurrentVersionExpiration` dalam konfigurasi Siklus Hidup S3 yang sama akan menghapus objek lama 30 hari setelah menjadi lama. Dengan demikian, dalam contoh ini, semua versi objek dihapus secara permanen 90 hari setelah pembuatan objek. Ketahuilah bahwa dalam contoh ini, lebih dari 10 versi noncurrent yang lebih baru harus ada sebelum Amazon S3 dapat kedaluwarsa versi tertentu. Amazon S3 akan secara permanen menghapus versi noncurrent tambahan di luar nomor yang ditentukan untuk disimpan. Agar penghapusan terjadi, nilai `NoncurrentDays` dan `NewerNoncurrentVersions` nilai harus dilampaui. 

  Meskipun penanda hapus objek kedaluwarsa dibuat selama proses ini, Amazon S3 mendeteksi dan menghapus penanda hapus objek kedaluwarsa untuk Anda. 
+ **Versi objek saat ini tidak memiliki siklus hidup yang didefinisikan dengan baik.** 

  Dalam kasus ini, Anda dapat menghapus objek secara manual ketika Anda tidak memerlukannya, membuat penanda hapus dengan satu atau lebih versi lama. Jika konfigurasi Siklus Hidup S3 dengan tindakan `NoncurrentVersionExpiration` menghapus semua versi lama, sekarang Anda memiliki penanda hapus objek kedaluwarsa.

  Khusus untuk skenario ini, konfigurasi Siklus Hidup S3 menyediakan tindakan `Expiration` yang dapat Anda gunakan untuk menghapus penanda hapus objek kedaluwarsa.

  

  ```
  <LifecycleConfiguration>
      <Rule>
         <ID>Rule 1</ID>
          <Filter>
            <Prefix>logs/</Prefix>
          </Filter>
          <Status>Enabled</Status>
          <Expiration>
             <ExpiredObjectDeleteMarker>true</ExpiredObjectDeleteMarker>
          </Expiration>
          <NoncurrentVersionExpiration>     
              <NewerNoncurrentVersions>10</NewerNoncurrentVersions>
              <NoncurrentDays>30</NoncurrentDays>    
          </NoncurrentVersionExpiration>
      </Rule>
  </LifecycleConfiguration>
  ```

Dengan mengatur elemen `ExpiredObjectDeleteMarker` ke `true` dalam tindakan `Expiration`, Anda mengarahkan Amazon S3 untuk menghapus penanda hapus objek kedaluwarsa.

**catatan**  
Saat Anda menggunakan tindakan Siklus Hidup S3 `ExpiredObjectDeleteMarker`, aturan tidak dapat menentukan filter berbasis tag.

## Konfigurasi Lifecycle untuk membatalkan unggahan multibagian
<a name="lc-expire-mpu"></a>

Anda dapat menggunakan operasi API REST unggahan multibagian Amazon S3 untuk mengunggah objek besar dalam beberapa bagian. Untuk informasi lebih lanjut tentang unggahan multibagian, lihat [Mengunggah dan menyalin objek menggunakan unggahan multipart di Amazon S3](mpuoverview.md). 

Dengan menggunakan konfigurasi Siklus Hidup S3, Anda dapat mengarahkan Amazon S3 untuk menghentikan unggahan multibagian yang tidak lengkap (diidentifikasi dengan awalan nama kunci yang ditentukan dalam aturan) jika tidak selesai dalam jumlah hari tertentu setelah inisiasi. Saat Amazon S3 membatalkan unggahan multibagian, Amazon S3 menghapus semua bagian yang terkait dengan unggahan multibagian. Proses ini membantu mengontrol biaya penyimpanan dengan memastikan bahwa Anda tidak memiliki unggahan multibagian yang belum selesai dengan bagian-bagian yang disimpan di Amazon S3. 

**catatan**  
Saat Anda menggunakan tindakan Siklus Hidup S3 `AbortIncompleteMultipartUpload`, aturan tidak dapat menentukan filter berbasis tag.

Berikut ini adalah contoh konfigurasi Siklus Hidup S3 yang menentukan aturan dengan tinndakan `AbortIncompleteMultipartUpload`. Tindakan ini mengarahkan Amazon S3 untuk menghentikan pengunggahan multibagian yang tidak selesai tujuh hari setelah inisiasi.

```
<LifecycleConfiguration>
    <Rule>
        <ID>sample-rule</ID>
        <Filter>
           <Prefix>SomeKeyPrefix/</Prefix>
        </Filter>
        <Status>rule-status</Status>
        <AbortIncompleteMultipartUpload>
          <DaysAfterInitiation>7</DaysAfterInitiation>
        </AbortIncompleteMultipartUpload>
    </Rule>
</LifecycleConfiguration>
```

## Objek noncurrent yang kedaluwarsa yang tidak memiliki data
<a name="lc-size-rules"></a>

Anda dapat membuat aturan yang mentransisikan objek hanya berdasarkan ukurannya. Anda dapat menentukan ukuran minimum (`ObjectSizeGreaterThan`) atau ukuran maksimum (`ObjectSizeLessThan`), atau Anda dapat menentukan rentang ukuran objek dalam bita. Saat menggunakan lebih dari satu filter, seperti awalan dan aturan ukuran, Anda harus membungkus filter dalam elemen `<And>`.

```
<LifecycleConfiguration>
  <Rule>
    <ID>Transition with a prefix and based on size</ID>
    <Filter>
       <And>
          <Prefix>tax/</Prefix>
          <ObjectSizeGreaterThan>500</ObjectSizeGreaterThan>
       </And>   
    </Filter>
    <Status>Enabled</Status>
    <Transition>
      <Days>365</Days>
      <StorageClass>GLACIER</StorageClass>
    </Transition>
  </Rule>
</LifecycleConfiguration>
```

Jika Anda menentukan rentang dengan menggunakan kedua elemen `ObjectSizeGreaterThan` dan `ObjectSizeLessThan`, ukuran objek maksimum harus lebih besar dari ukuran objek minimum. Saat menggunakan lebih dari satu filter, Anda harus membungkus filter dalam elemen `<And>`. Contoh berikut menunjukkan bagaimana menentukan objek dalam kisaran antara 500 byte dan 64.000 byte. Saat Anda menentukan rentang, `ObjectSizeLessThan` filter `ObjectSizeGreaterThan` dan mengecualikan nilai yang ditentukan. Untuk informasi selengkapnya, lihat [Elemen filter](intro-lifecycle-rules.md#intro-lifecycle-rules-filter).

```
<LifecycleConfiguration>
    <Rule>
        ...
          <And>
             <ObjectSizeGreaterThan>500</ObjectSizeGreaterThan>
             <ObjectSizeLessThan>64000</ObjectSizeLessThan>
          </And>
    </Rule>
</LifecycleConfiguration>
```

Anda juga dapat membuat aturan untuk secara khusus menghapus objek noncurrent yang tidak memiliki data, termasuk objek penanda hapus noncurrent yang dibuat dalam bucket berkemampuan versi. Contoh berikut menggunakan `NoncurrentVersionExpiration` tindakan untuk menghapus versi noncurrent 30 hari setelah menjadi noncurrent dan mempertahankan 10 versi noncurrent. Contoh ini juga menggunakan `ObjectSizeLessThan` elemen untuk memfilter hanya objek tanpa data. 

Ketahuilah bahwa lebih dari 10 versi noncurrent yang lebih baru harus ada sebelum Amazon S3 dapat kedaluwarsa versi tertentu. Amazon S3 akan secara permanen menghapus versi noncurrent tambahan di luar nomor yang ditentukan untuk disimpan. Agar penghapusan terjadi, nilai `NoncurrentDays` dan `NewerNoncurrentVersions` nilai harus dilampaui. 

```
<LifecycleConfiguration>
  <Rule>
    <ID>Expire noncurrent with size less than 1 byte</ID>
    <Filter>
       <ObjectSizeLessThan>1</ObjectSizeLessThan>
    </Filter>
    <Status>Enabled</Status>
    <NoncurrentVersionExpiration>     
       <NewerNoncurrentVersions>10</NewerNoncurrentVersions>
       <NoncurrentDays>30</NoncurrentDays>
    </NoncurrentVersionExpiration>
  </Rule>
</LifecycleConfiguration>
```

## Contoh: Mengizinkan objek yang lebih kecil dari 128 KB untuk dialihkan
<a name="lc-small-objects"></a>

Amazon S3 menerapkan perilaku default ke konfigurasi Siklus Hidup Anda yang mencegah objek yang lebih kecil dari 128 KB dialihkan ke kelas penyimpanan apa pun. Anda dapat mengizinkan objek yang lebih kecil untuk bertransisi dengan menambahkan filter ukuran minimum (`ObjectSizeGreaterThan`) atau ukuran maksimum (`ObjectSizeLessThan`) yang menentukan ukuran yang lebih kecil ke konfigurasi. Contoh berikut memungkinkan objek yang lebih kecil dari 128 KB untuk transisi ke kelas penyimpanan S3 Glacier Instant Retrieval:

```
<LifecycleConfiguration>
  <Rule>
    <ID>Allow small object transitions</ID>
    <Filter>
          <ObjectSizeGreaterThan>1</ObjectSizeGreaterThan>
    </Filter>
    <Status>Enabled</Status>
    <Transition>
      <Days>365</Days>
      <StorageClass>GLACIER_IR</StorageClass>
    </Transition>
  </Rule>
</LifecycleConfiguration>
```

**catatan**  
Pada bulan September 2024, Amazon S3 memperbarui perilaku transisi default untuk objek kecil, sebagai berikut:  
**Perilaku transisi default yang diperbarui** — Mulai September 2024, perilaku default mencegah objek yang lebih kecil dari 128 KB dialihkan ke kelas penyimpanan apa pun.
**Perilaku transisi default sebelumnya** — Sebelum September 2024, perilaku default memungkinkan objek yang lebih kecil dari 128 KB untuk dialihkan hanya ke kelas penyimpanan S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive.
Konfigurasi yang dibuat sebelum September 2024 mempertahankan perilaku transisi sebelumnya kecuali Anda memodifikasinya. Artinya, jika Anda membuat, mengedit, atau menghapus aturan, perilaku transisi default untuk konfigurasi Anda akan berubah menjadi perilaku yang diperbarui. Jika kasus penggunaan membutuhkan, Anda dapat mengubah perilaku transisi default sehingga objek yang lebih kecil dari 128KB akan bertransisi ke S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive. Untuk melakukan ini, gunakan `x-amz-transition-object-size-minimum-default` header opsional dalam [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)permintaan.

Contoh berikut menunjukkan cara menggunakan `x-amz-transition-object-size-minimum-default` header dalam [https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html](https://docs.aws.amazon.com/AmazonS3/latest/API/API_PutBucketLifecycleConfiguration.html)permintaan untuk menerapkan perilaku transisi `varies_by_storage_class` default ke konfigurasi Siklus Hidup S3. Perilaku ini memungkinkan objek yang lebih kecil dari 128 KB untuk beralih ke kelas penyimpanan S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive. Secara default, semua kelas penyimpanan lainnya akan mencegah transisi yang lebih kecil dari 128 KB. Anda masih dapat menggunakan filter khusus untuk mengubah ukuran transisi minimum untuk kelas penyimpanan apa pun. Filter khusus selalu diutamakan daripada perilaku transisi default:

```
HTTP/1.1 200
x-amz-transition-object-size-minimum-default: varies_by_storage_class
<?xml version="1.0" encoding="UTF-8"?>
...
```

# Memecahkan masalah Siklus Hidup Amazon S3
<a name="troubleshoot-lifecycle"></a>

Informasi berikut dapat membantu Anda memecahkan masalah umum pada aturan Siklus Hidup S3.

**Topics**
+ [Saya menjalankan operasi daftar di bucket saya dan melihat objek yang menurut saya sudah kedaluwarsa atau ditransisikan oleh aturan siklus hidup.](#troubleshoot-lifecycle-1)
+ [Bagaimana cara memantau tindakan yang diambil oleh aturan siklus hidup saya?](#troubleshoot-lifecycle-2)
+ [Jumlah objek S3 saya masih meningkat, bahkan setelah menyiapkan aturan siklus hidup pada bucket yang mendukung versi.](#troubleshoot-lifecycle-3)
+ [Bagaimana cara mengosongkan bucket S3 saya dengan menggunakan aturan siklus hidup?](#troubleshoot-lifecycle-4)
+ [Tagihan Amazon S3 saya meningkat setelah mentransisikan objek ke kelas penyimpanan berbiaya lebih rendah.](#troubleshoot-lifecycle-5)
+ [Saya telah memperbarui kebijakan bucket saya, tetapi objek S3 saya masih dihapus oleh aturan siklus hidup yang kedaluwarsa.](#troubleshoot-lifecycle-6)
+ [Dapatkah saya memulihkan objek S3 yang dikahiri oleh aturan Siklus Hidup S3?](#troubleshoot-lifecycle-7)
+ [Mengapa tindakan kedaluwarsa dan siklus hidup transisi saya tidak terjadi?](#troubleshoot-lifecycle-failures)
+ [Bagaimana cara mengecualikan awalan dari aturan siklus hidup saya?](#troubleshoot-lifecycle-8)
+ [Bagaimana saya bisa menyertakan beberapa awalan dalam aturan siklus hidup saya?](#troubleshoot-lifecycle-9)

## Saya menjalankan operasi daftar di bucket saya dan melihat objek yang menurut saya sudah kedaluwarsa atau ditransisikan oleh aturan siklus hidup.
<a name="troubleshoot-lifecycle-1"></a>

[Transisi objek](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-transition-general-considerations.html) Siklus Hidup S3 dan [waktu kedaluwarsa](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-expire-general-considerations.html) objek adalah operasi asinkron. Oleh karena itu, dapat terjadi penundaan antara waktu objek memenuhi syarat untuk kedaluwarsa atau transisi dan waktu ketika objek tersebut benar-benar ditransisikan atau kedaluwarsa. Perubahan dalam penagihan diterapkan segera setelah aturan siklus hidup terpenuhi, bahkan jika tindakan tidak selesai. Pengecualian untuk perilaku ini adalah jika Anda memiliki aturan siklus hidup yang disetel ke kelas penyimpanan S3 Intelligent-Tiering. Dalam hal ini, perubahan penagihan tidak terjadi hingga objek telah ditransisikan ke S3 Intelligent-Tiering. Untuk informasi selengkapnya tentang perubahan dalam penagihan, lihat [Menyetel konfigurasi siklus hidup pada bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/how-to-set-lifecycle-configuration-intro.html).

**catatan**  
Amazon S3 tidak mentransisikan objek yang lebih kecil dari 128 KB dari kelas penyimpanan S3 Standard atau S3 Standard-IA ke kelas penyimpanan S3 Intelligent-Tiering, S3 Standard-IA, atau S3 One Zone-IA.

## Bagaimana cara memantau tindakan yang diambil oleh aturan siklus hidup saya?
<a name="troubleshoot-lifecycle-2"></a>

Untuk memantau tindakan yang diambil oleh aturan siklus hidup, Anda dapat menggunakan fitur berikut: 
+ **Pemberitahuan Acara S3** - Anda dapat mengatur [Pemberitahuan Acara S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-configure-notification.html) sehingga Anda diberi tahu tentang kedaluwarsa atau peristiwa transisi Siklus Hidup S3.
+ **Log akses server S3** — Anda dapat mengaktifkan log akses server untuk bucket S3 Anda untuk menangkap tindakan Siklus Hidup S3, seperti transisi objek ke kelas penyimpanan lain atau kedaluwarsa objek. Untuk informasi lebih lanjut, lihat [Siklus hidup dan pencatatan](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-and-other-bucket-config.html#lifecycle-general-considerations-logging).

Untuk melihat perubahan dalam penyimpanan yang disebabkan oleh tindakan siklus hidup setiap hari, sebaiknya gunakan [dasbor Lensa Penyimpanan S3 alih-alih](https://docs.aws.amazon.com/AmazonS3/latest/userguide/storage_lens_basics_metrics_recommendations.html#storage_lens_basics_dashboards) menggunakan metrik Amazon. CloudWatch Di dasbor Lensa Penyimpanan, Anda dapat melihat metrik berikut, yang memantau jumlah atau ukuran objek:
+ **Byte versi terkini**
+ **Jumlah objek versi saat ini**
+ **Byte bukan versi terkini**
+ **Jumlah objek versi tidak terkini**
+ **Hapus Jumlah Objek Penanda**
+ **Hapus byte penyimpanan penanda**
+ **Byte unggahan multibagian yang tidak lengkap**
+ **Jumlah objek unggahan multibagian yang tidak lengkap**

## Jumlah objek S3 saya masih meningkat, bahkan setelah menyiapkan aturan siklus hidup pada bucket yang mendukung versi.
<a name="troubleshoot-lifecycle-3"></a>

Dalam [bucket berkemampuan versi](https://docs.aws.amazon.com/AmazonS3/latest/userguide/Versioning.html#versioning-states), saat objek kedaluwarsa, objek tersebut tidak sepenuhnya dihapus dari bucket. Sebagai gantinya, [penanda hapus](https://docs.aws.amazon.com/AmazonS3/latest/userguide/DeleteMarker.html) dibuat sebagai versi terbaru dari objek. Hapus penanda masih dihitung sebagai objek. Oleh karena itu, jika aturan siklus hidup dibuat agar hanya mengakhiri versi saat ini, maka jumlah objek di bucket S3 sebenarnya akan meningkat dan bukan turun.

Misalnya, bucket S3 dengan Penentuan Versi yang diaktifkan memiliki 100 objek, dan aturan siklus hidup diatur agar mengakhiri versi objek saat ini setelah 7 hari. Setelah hari ketujuh, jumlah objek meningkat menjadi 200 karena 100 penanda hapus dibuat selain dari 100 objek yang asli, yang sekarang menjadi versi tidak terkini. Untuk informasi selengkapnya tentang tindakan aturan konfigurasi Siklus Hidup S3 untuk bucket dengan Penentuan Versi diaktifkan, lihat [Mengatur konfigurasi siklus hidup pada bucket.](https://docs.aws.amazon.com/AmazonS3/latest/userguide/how-to-set-lifecycle-configuration-intro.html)

Untuk menghapus objek secara permanen, tambahkan konfigurasi siklus hidup tambahan untuk menghapus versi objek sebelumnya, penanda hapus kedaluwarsa, dan unggahan multibagian yang tidak lengkap. Untuk petunjuk tentang cara membuat aturan siklus hidup baru, lihat [Mengatur konfigurasi siklus hidup pada bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/how-to-set-lifecycle-configuration-intro.html).

**catatan**  
Amazon S3 membulatkan transisi atau tanggal kedaluwarsa suatu objek ke tengah malam UTC pada hari berikutnya.   
Saat mengevaluasi objek untuk tindakan siklus hidup, Amazon S3 menggunakan waktu pembuatan objek di UTC. Misalnya, pertimbangkan bucket nonversioned dengan aturan siklus hidup yang dikonfigurasi untuk objek kedaluwarsa setelah satu hari. Misalkan sebuah objek dibuat pada 1 Januari pukul 17:05 Pacific Daylight Time (PDT), yang sesuai dengan 2 Januari pukul 00:05 UTC. Objek menjadi berumur satu hari pada 00:05 UTC pada 3 Januari, yang membuatnya memenuhi syarat untuk kedaluwarsa ketika S3 Lifecycle mengevaluasi objek pada 00:00 UTC pada 4 Januari.  
Karena tindakan siklus hidup Amazon S3 terjadi secara asinkron, mungkin ada beberapa penundaan antara tanggal yang ditentukan dalam aturan siklus hidup dan transisi fisik objek yang sebenarnya. Untuk informasi selengkapnya, lihat [Transisi atau penundaan kedaluwarsa](how-to-set-lifecycle-configuration-intro.md#lifecycle-action-delay).  
Untuk informasi lebih lanjut, lihat [Aturan siklus hidup: Berdasarkan usia objek.](https://docs.aws.amazon.com/AmazonS3/latest/dev/intro-lifecycle-rules.html#intro-lifecycle-rules-number-of-days)
Untuk objek S3 yang dilindungi oleh Kunci Objek, versi saat ini tidak dihapus secara permanen. Sebagai gantinya, penanda hapus ditambahkan ke objek, membuatnya menjadi tidak terkini. Versi tidak terkini kemudian dipertahankan dan tidak kedaluwarsa secara permanen.

## Bagaimana cara mengosongkan bucket S3 saya dengan menggunakan aturan siklus hidup?
<a name="troubleshoot-lifecycle-4"></a>

Aturan Siklus Hidup S3 adalah alat yang efektif untuk [mengosongkan bucket S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/empty-bucket.html) dengan jutaan objek. Untuk menghapus sejumlah besar objek dari bucket S3 Anda, pastikan untuk menggunakan dua pasang aturan siklus hidup ini:
+ **Akhiri versi objek saat ini** dan **Hapus secara permanen versi objek sebelumnya**
+ **Hapus penanda hapus kedaluwarsa** dan **Hapus unggahan multibagian yang tidak lengkap**

Untuk langkah-langkah cara membuat aturan konfigurasi siklus hidup baru, lihat [Mengatur konfigurasi siklus hidup pada bucket](https://docs.aws.amazon.com/AmazonS3/latest/userguide/how-to-set-lifecycle-configuration-intro.html).

**catatan**  
Untuk objek S3 yang dilindungi oleh Kunci Objek, versi saat ini tidak dihapus secara permanen. Sebagai gantinya, penanda hapus ditambahkan ke objek, membuatnya menjadi tidak terkini. Versi tidak terkini kemudian dipertahankan dan tidak kedaluwarsa secara permanen.

## Tagihan Amazon S3 saya meningkat setelah mentransisikan objek ke kelas penyimpanan berbiaya lebih rendah.
<a name="troubleshoot-lifecycle-5"></a>

Ada beberapa alasan mengapa tagihan Anda mungkin meningkat setelah mentransisikan objek ke kelas penyimpanan berbiaya lebih rendah: 
+ Biaya overhead S3 Glacier untuk objek-objek kecil

  Untuk setiap objek yang ditransisikan ke S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive, total overhead sebesar 40 KB akan dikaitkan dengan pembaruan penyimpanan ini. Sebagai bagian dari overhead 40 KB, 8 KB digunakan untuk menyimpan metadata dan nama objek. 8 KB ini dibebankan sesuai dengan tarif Standar S3. 32 KB sisanya digunakan untuk pengindeksan dan metadata terkait. 32 KB ini dikenakan biaya sesuai dengan harga S3 Glacier Flexible Retrieval atau S3 Glacier Deep Archive.

  Oleh karena itu, jika Anda menyimpan banyak objek berukuran lebih kecil, kami tidak menyarankan menggunakan transisi siklus hidup. Sebagai gantinya, untuk mengurangi biaya tambahan, pertimbangkan mengumpulkan banyak objek kecil menjadi lebih kecil sebelum menyimpannya di Amazon S3. Untuk informasi lebih lanjut tentang pertimbangan biaya, lihat [Transisi ke kelas penyimpanan (pengarsipan objek) S3 Glacier Flexible Retrieval dan S3 Glacier Deep Archive](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-transition-general-considerations.html#before-deciding-to-archive-objects).
+ Biaya penyimpanan minimum

  Beberapa kelas penyimpanan S3 memiliki persyaratan durasi penyimpanan minimum. Objek yang dihapus, ditimpa, atau ditransisikan dari kelas-kelas tersebut sebelum durasi minimum dipenuhi dikenakan biaya transisi awal atau penghapusan prorata. Persyaratan durasi penyimpanan minimum ini adalah sebagai berikut: 
  + S3 Standard-IA dan S3 One Zone-IA-30 hari
  + S3 Glacier Flexible Retrieval dan S3 Glacier Instant Retrieval-90 hari
  + S3 Glacier Deep Archive-180 hari

  Untuk informasi selengkapnya tentang persyaratan ini, lihat bagian *Batasan* dari [Objek transisi menggunakan Siklus Hidup S3.](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-transition-general-considerations.html) Untuk informasi harga S3 umum, lihat [harga Amazon S3](https://aws.amazon.com/s3/pricing/) dan [Kalkulator Harga AWS](https://calculator.aws/#/addService/S3).
+ Biaya transisi siklus hidup

  Setiap kali objek ditransisikan ke kelas penyimpanan yang berbeda berdasarkan aturan siklus hidup, Amazon S3 menghitung transisi tersebut sebagai satu permintaan transisi. Biaya untuk permintaan transisi ini merupakan tambahan dari biaya kelas penyimpanan ini. Jika Anda berencana untuk mentransisi sejumlah besar objek, pertimbangkan biaya permintaan saat melakukan transisi ke tingkat yang lebih rendah. Untuk informasi selengkapnya, lihat [Harga Amazon S3](https://aws.amazon.com/s3/pricing/).

## Saya telah memperbarui kebijakan bucket saya, tetapi objek S3 saya masih dihapus oleh aturan siklus hidup yang kedaluwarsa.
<a name="troubleshoot-lifecycle-6"></a>

Pernyataan `Deny` dalam kebijakan bucket tidak mencegah berakhirnya objek yang ditentukan dalam aturan siklus hidup. Tindakan siklus hidup (seperti transisi atau kedaluwarsa) tidak menggunakan operasi `DeleteObject` S3. Sebagai gantinya, tindakan Siklus Hidup S3 dilakukan dengan menggunakan titik akhir S3 internal. (Untuk informasi lebih lanjut, lihat [Siklus hidup dan pencatatan](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-and-other-bucket-config.html#lifecycle-general-considerations-logging).) 

Untuk mencegah aturan siklus hidup Anda mengambil tindakan apa pun, Anda harus mengedit, menghapus, atau [menonaktifkan aturan tersebut](https://docs.aws.amazon.com/AmazonS3/latest/userguide/lifecycle-configuration-examples.html#lifecycle-config-conceptual-ex2).

## Dapatkah saya memulihkan objek S3 yang dikahiri oleh aturan Siklus Hidup S3?
<a name="troubleshoot-lifecycle-7"></a>

Satu-satunya cara untuk memulihkan objek yang diakhiri oleh Siklus Hidup S3 adalah melalui Penentuan Versi, yang harus dilakukan sebelum objek memenuhi syarat untuk kedaluwarsa. Anda tidak dapat membatalkan operasi kedaluwarsa yang dilakukan oleh aturan siklus hidup. Jika objek dihapus secara permanen oleh aturan Siklus Hidup S3 yang ada, Anda tidak dapat memulihkan objek ini. Untuk mengaktifkan Penentuan Versi pada bucket, lihat [Mempertahankan beberapa versi objek dengan Versi S3](Versioning.md).

Jika Anda telah menerapkan Penentuan Versi ke bucket dan versi objek yang tidak terkini masih utuh, Anda dapat [memulihkan versi sebelumnya dari objek yang kedaluwarsa](https://docs.aws.amazon.com/AmazonS3/latest/userguide/RestoringPreviousVersions.html). Untuk informasi selengkapnya tentang perilaku tindakan aturan Siklus Hidup S3 dan status Penentuan Versi, lihat tabel *status aksi Siklus Hidup dan Penentuan Versi bucket* di [Elemen untuk menjelaskan tindakan siklus hidup.](https://docs.aws.amazon.com/AmazonS3/latest/userguide/intro-lifecycle-rules.html#non-current-days-calculations)

**catatan**  
Jika bucket S3 dilindungi oleh [AWS Backup](https://docs.aws.amazon.com/aws-backup/latest/devguide/s3-backups.html) atau [Replikasi S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/replication.html), Anda mungkin juga dapat menggunakan fitur ini untuk memulihkan objek yang kedaluwarsa.

## Mengapa tindakan kedaluwarsa dan siklus hidup transisi saya tidak terjadi?
<a name="troubleshoot-lifecycle-failures"></a>

Untuk bucket yang diaktifkan versi atau ditangguhkan versi, pertimbangan berikut memandu cara Amazon S3 menangani tindakan Kedaluwarsa:
+ Kedaluwarsa objek hanya berlaku untuk versi objek saat ini (tidak memiliki dampak pada versi objek lama).
+ Amazon S3 tidak mengambil tindakan apa pun jika ada satu atau beberapa versi objek dan penanda hapus adalah versi saat ini.
+ Amazon S3 tidak mengambil tindakan apa pun pada versi objek yang tidak terkini yang menerapkan Kunci Objek S3.
+ Untuk objek dengan status `FAILED` replikasi `PENDING` atau replikasi, Amazon S3 tidak mengambil tindakan apa pun pada versi objek saat ini atau yang tidak terkini.

Transisi kelas penyimpanan siklus hidup memiliki kendala berikut:
+ Secara default, objek yang lebih kecil dari 128 KB tidak akan bertransisi ke kelas penyimpanan apa pun.
+ Objek harus disimpan setidaknya selama 30 hari sebelum beralih ke S3 Standard-IA atau S3 One Zone-IA.
+ Untuk mengaktifkan versi atau membuat versi bucket yang ditangguhkan, objek dengan status `FAILED` replikasi `PENDING` atau replikasi tidak dapat dialihkan.

## Bagaimana cara mengecualikan awalan dari aturan siklus hidup saya?
<a name="troubleshoot-lifecycle-8"></a>

Siklus Hidup S3 tidak mendukung pengecualian awalan dalam aturan Anda. Sebagai gantinya, gunakan tag untuk menandai semua objek yang ingin Anda sertakan dalam aturan. Untuk informasi selengkapnya tentang penggunaan tag dalam aturan siklus hidup Anda, lihat. [Mengarsipkan semua objek dalam satu hari setelah pembuatan](lifecycle-configuration-examples.md#lifecycle-config-ex1)

## Bagaimana saya bisa menyertakan beberapa awalan dalam aturan siklus hidup saya?
<a name="troubleshoot-lifecycle-9"></a>

Siklus Hidup S3 tidak mendukung menyertakan beberapa awalan dalam aturan Anda. Sebagai gantinya, gunakan tag untuk menandai semua objek yang ingin Anda sertakan dalam aturan. Untuk informasi selengkapnya tentang penggunaan tag dalam aturan siklus hidup Anda, lihat. [Mengarsipkan semua objek dalam satu hari setelah pembuatan](lifecycle-configuration-examples.md#lifecycle-config-ex1)

Namun, jika Anda memiliki satu atau lebih awalan yang dimulai dengan karakter yang sama, Anda dapat menyertakan semua awalan tersebut dalam aturan Anda dengan menentukan awalan parsi tanpa garis miring () di filter. `/` Misalnya, anggaplah Anda memiliki awalan ini:

```
sales1999/
sales2000/
sales2001/
```

Untuk menyertakan ketiga awalan dalam aturan Anda, tentukan `<Prefix>sales</Prefix>` dalam aturan siklus hidup Anda. 