

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

# EventBridge Acara Amazon untuk Amazon EBS
<a name="ebs-cloud-watch-events"></a>

Amazon EBS mengirimkan acara ke Amazon EventBridge untuk tindakan yang dilakukan pada volume dan snapshot. Dengan EventBridge, Anda dapat menetapkan aturan yang memicu tindakan terprogram dalam menanggapi peristiwa ini. Misalnya, Anda dapat membuat aturan yang mengirimkan notifikasi ke email Anda saat snapshot diaktifkan untuk pemulihan snapshot cepat.

Peristiwa di EventBridge direpresentasikan sebagai objek JSON. Kolom-kolom yang unik untuk peristiwa tersebut terdapat di bagian "detail" dari objek JSON. Bidang "peristiwa" berisi nama peristiwa. Bidang "hasil" berisi status selesai dari tindakan yang memicu peristiwa. Untuk informasi selengkapnya, lihat [pola EventBridge acara Amazon](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-event-patterns.html) *di Panduan EventBridge Pengguna Amazon*.

Untuk informasi selengkapnya, lihat [Apa itu Amazon EventBridge?](https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-what-is.html) di *Panduan EventBridge Pengguna Amazon*.

**Topics**
+ [

## Peristiwa volume EBS
](#volume-events)
+ [

## Acara inisialisasi volume EBS
](#volume-initialization-events)
+ [

## Peristiwa modifikasi volume EBS
](#volume-modification-events)
+ [

## Peristiwa snapshot EBS
](#snapshot-events)
+ [

## Peristiwa Arsip Snapshots EBS
](#snapshot-archive-events)
+ [

## Peristiwa pemulihan snapshot cepat EBS
](#fast-snapshot-restore-events)
+ [

# Menggunakan AWS Lambda untuk menangani EventBridge acara
](using_lambda.md)

## Peristiwa volume EBS
<a name="volume-events"></a>

Amazon EBS mengirimkan peristiwa ke EventBridge saat peristiwa volume berikut terjadi.

**Topics**
+ [createVolume](#create-volume)
+ [deleteVolume](#delete-volume)
+ [attachVolume](#attach-fail-key)
+ [detachVolume](#detach-volume)

### Buat volume (buatVolume)
<a name="create-volume"></a>

`createVolume`Acara dikirim ke AWS akun Anda ketika tindakan untuk membuat volume selesai. Namun, itu tidak disimpan, dicatat, atau diarsipkan. Peristiwa ini dapat membawa hasil `available` atau `failed`. Pembuatan akan gagal jika tidak valid disediakan, seperti AWS KMS key yang ditunjukkan pada contoh di bawah ini.

**Data peristiwa**  
Daftar di bawah ini adalah contoh objek JSON yang dipancarkan oleh EBS untuk peristiwa `createVolume` yang berhasil. 

```
{
   "version": "0",
   "id": "01234567-0123-0123-0123-012345678901",
   "detail-type": "EBS Volume Notification",
   "source": "aws.ec2",
   "account": "012345678901",
   "time": "yyyy-mm-ddThh:mm:ssZ",
   "region": "us-east-1",
   "resources": [
      "arn:aws:ec2:us-east-1:012345678901:volume/vol-01234567"
   ],
   "detail": {
      "result": "available",
      "cause": "",
      "event": "createVolume",
      "request-id": "01234567-0123-0123-0123-0123456789ab"
   }
}
```

Daftar di bawah ini adalah contoh objek JSON yang dipancarkan oleh EBS setelah peristiwa `createVolume` yang gagal. Penyebab kegagalan tersebut adalah kunci KMS yang dinonaktifkan.

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-0123456789ab",
  "detail-type": "EBS Volume Notification",
  "source": "aws.ec2",
  "account": "012345678901",
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "sa-east-1",
  "resources": [
    "arn:aws:ec2:sa-east-1:0123456789ab:volume/vol-01234567",
  ],
  "detail": {
    "event": "createVolume",
    "result": "failed",
    "cause": "arn:aws:kms:sa-east-1:0123456789ab:key/01234567-0123-0123-0123-0123456789ab is disabled.",
    "request-id": "01234567-0123-0123-0123-0123456789ab",
  }
}
```

Berikut adalah contoh objek JSON yang dipancarkan oleh EBS setelah peristiwa `createVolume` yang gagal. Penyebab kegagalan adalah impor utama KMS yang tertunda.

```
{  
  "version": "0",  
  "id": "01234567-0123-0123-0123-0123456789ab",  
  "detail-type": "EBS Volume Notification",  
  "source": "aws.ec2",  
  "account": "012345678901",  
  "time": "yyyy-mm-ddThh:mm:ssZ",  
  "region": "sa-east-1",  
  "resources": [    
    "arn:aws:ec2:sa-east-1:0123456789ab:volume/vol-01234567",  
  ],  
  "detail": {    
    "event": "createVolume",    
    "result": "failed",    
    "cause": "arn:aws:kms:sa-east-1:0123456789ab:key/01234567-0123-0123-0123-0123456789ab is pending import.",    
    "request-id": "01234567-0123-0123-0123-0123456789ab",  
  }
}
```

### Hapus volume (hapusVolume)
<a name="delete-volume"></a>

`deleteVolume`Acara dikirim ke AWS akun Anda ketika tindakan untuk menghapus volume selesai. Namun, itu tidak disimpan, dicatat, atau diarsipkan. Peristiwa ini memiliki hasil `deleted`. Jika penghapusan tidak selesai, peristiwa tidak akan pernah dikirim.

**Data peristiwa**  
Daftar di bawah ini adalah contoh objek JSON yang dipancarkan oleh EBS untuk peristiwa `deleteVolume` yang berhasil. 

```
{
   "version": "0",
   "id": "01234567-0123-0123-0123-012345678901",
   "detail-type": "EBS Volume Notification",
   "source": "aws.ec2",
   "account": "012345678901",
   "time": "yyyy-mm-ddThh:mm:ssZ",
   "region": "us-east-1",
   "resources": [
      "arn:aws:ec2:us-east-1:012345678901:volume/vol-01234567"
   ],
   "detail": {
      "result": "deleted",
      "cause": "",
      "event": "deleteVolume",
      "request-id": "01234567-0123-0123-0123-0123456789ab"
   }
}
```

### Pasang atau pasangkan ulang volume (attachVolume, reattachVolume)
<a name="attach-fail-key"></a>

`reattachVolume`Acara `attachVolume` atau dikirim ke AWS akun Anda ketika volume dilampirkan atau disambungkan kembali ke sebuah instans. Namun, itu tidak disimpan, dicatat, atau diarsipkan. Jika Anda menggunakan kunci KMS untuk mengenkripsi volume EBS dan kunci KMS tersebut menjadi tidak valid, EBS akan membuat catatan peristiwa jika kunci KMS tersebut kemudian digunakan untuk memasang atau memasang kembali instans, seperti yang ditunjukkan pada instans di bawah ini.

**Data peristiwa**  
Daftar di bawah ini adalah contoh objek JSON yang dipancarkan oleh EBS setelah peristiwa `attachVolume` yang gagal. Penyebab kegagalan adalah penghapusan kunci KMS yang tertunda.

**catatan**  
AWS dapat mencoba untuk menyambung kembali ke volume setelah pemeliharaan server rutin.

```
{
  "version": "0",    
  "id": "01234567-0123-0123-0123-0123456789ab",
  "detail-type": "EBS Volume Notification",
  "source": "aws.ec2",
  "account": "012345678901",
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "us-east-1",
  "resources": [
  "arn:aws:ec2:us-east-1:0123456789ab:volume/vol-01234567",
  "arn:aws:kms:us-east-1:0123456789ab:key/01234567-0123-0123-0123-0123456789ab"
  ],
  "detail": {
    "event": "attachVolume",
    "result": "failed",
    "cause": "arn:aws:kms:us-east-1:0123456789ab:key/01234567-0123-0123-0123-0123456789ab is pending deletion.",
    "request-id": ""
  }
}
```

Daftar di bawah ini adalah contoh objek JSON yang dipancarkan oleh EBS setelah peristiwa `reattachVolume` yang gagal. Penyebab kegagalan adalah penghapusan kunci KMS yang tertunda.

```
{
  "version": "0",    
  "id": "01234567-0123-0123-0123-0123456789ab",
  "detail-type": "EBS Volume Notification",
  "source": "aws.ec2",
  "account": "012345678901",
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "us-east-1",
  "resources": [
  "arn:aws:ec2:us-east-1:0123456789ab:volume/vol-01234567",
  "arn:aws:kms:us-east-1:0123456789ab:key/01234567-0123-0123-0123-0123456789ab"
  ],
  "detail": {
    "event": "reattachVolume",
    "result": "failed",
    "cause": "arn:aws:kms:us-east-1:0123456789ab:key/01234567-0123-0123-0123-0123456789ab is pending deletion.",
    "request-id": ""
  }
}
```

### Lepaskan volume (detachVolume)
<a name="detach-volume"></a>

`detachVolume`Acara dikirim ke AWS akun Anda saat volume terlepas dari instans Amazon EC2.

**Data peristiwa**  
Berikut ini adalah contoh `detachVolume` acara yang sukses.

```
{
  "version":"0",
  "id":"2ec37298-1234-e436-70fc-c96b1example",
  "detail-type":"AWS API Call via CloudTrail",
  "source":"aws.ec2",
  "account":"123456789012",
  "time":"2024-03-18T16:35:52Z",
  "region":"us-east-1",
  "resources":[],
  "detail":
  {
    "eventVersion":"1.09",
    "userIdentity":
    {
      "type":"IAMUser",
      "principalId":"AIDAJT12345SQ2EXAMPLE",
      "arn":"arn:aws:iam::123456789012:user/administrator",
      "accountId":"123456789012",
      "accessKeyId":"AKIAJ67890A6EXAMPLE",
      "userName":"administrator"
    },
    "eventTime":"2024-03-18T16:35:52Z",
    "eventSource":"ec2.amazonaws.com",
    "eventName":"DetachVolume",
    "awsRegion":"us-east-1",
    "sourceIPAddress":"12.12.123.12",
    "userAgent":"aws-cli/2.7.12 Python/3.9.11 Windows/10 exe/AMD64 prompt/off command/ec2.detach-volume",
    "requestParameters":
    {
      "volumeId":"vol-072577c46bexample",
      "force":false
    },
    "responseElements":
    {
      "requestId":"1234513a-6292-49ea-83f8-85e95example",
      "volumeId":"vol-072577c46bexample",
      "instanceId":"i-0217f7eb3dexample",
      "device":"/dev/sdb",
      "status":"detaching",
      "attachTime":1710776815000
    },
    "requestID":"1234513a-6292-49ea-83f8-85e95example",
    "eventID":"1234551d-a15a-43eb-9e69-c983aexample",
    "readOnly":false,
    "eventType":"AwsApiCall",
    "managementEvent":true,
    "recipientAccountId":"123456789012",
    "eventCategory":"Management",
    "tlsDetails":
    {
      "tlsVersion":"TLSv1.3",
      "cipherSuite":"TLS_AES_128_GCM_SHA256",
      "clientProvidedHostHeader":"ec2.us-east-1.amazonaws.com"
    }
  }
}
```

## Acara inisialisasi volume EBS
<a name="volume-initialization-events"></a>

Saat Anda membuat volume Amazon EBS dari snapshot dan menggunakan tingkat inisialisasi volume default atau Rasio Penyediaan Amazon EBS untuk Inisialisasi Volume, `initializeVolume` peristiwa akan dikirim ke AWS akun Anda dalam waktu lima menit setelah inisialisasi volume selesai. Untuk informasi selengkapnya, lihat [Menggunakan Tarif Penyediaan Amazon EBS untuk Inisialisasi Volume](initalize-volume.md#volume-initialization-rate).

Acara ini **tidak** dikirim untuk volume yang dibuat menggunakan Pemulihan Snapshot Cepat.

**penting**  
`completionTime`mencerminkan ketika kita membuat acara. Karena acara dihasilkan dalam waktu 5 menit setelah inisialisasi selesai, `completionTime` bisa sampai lima menit setelah inisialisasi selesai.

Berikut adalah contoh kasusnya.

```
{
   "version": "0",
   "id": "01234567-0123-0123-0123-012345678901",
   "detail-type": "EBS Volume Notification",
   "source": "aws.ec2",
   "account": "012345678901",
   "time": "yyyy-mm-ddThh:mm:ssZ",
   "region": "us-east-1",
   "resources": [
      "arn:aws:ec2:us-east-1:012345678901:volume/vol-01234567890abcdef"
   ],
   "detail": {
      "event": " initializeVolume",
      "result": "succeeded",
      "completionTime": "yyyy-mm-ddThh:mm:ssZ",
      "request-id": "01234567-0123-0123-0123-0123456789ab"
   }
}
```

## Peristiwa modifikasi volume EBS
<a name="volume-modification-events"></a>

Amazon EBS mengirimkan `modifyVolume` peristiwa ke EventBridge saat volume diubah. Namun, itu tidak disimpan, dicatat, atau diarsipkan.

```
{
   "version": "0",
   "id": "01234567-0123-0123-0123-012345678901",
   "detail-type": "EBS Volume Notification",
   "source": "aws.ec2",
   "account": "012345678901",
   "time": "yyyy-mm-ddThh:mm:ssZ",
   "region": "us-east-1",
   "resources": [
      "arn:aws:ec2:us-east-1:012345678901:volume/vol-03a55cf56513fa1b6"
   ],
   "detail": {
      "result": "optimizing",
      "cause": "",
      "event": "modifyVolume",
      "request-id": "01234567-0123-0123-0123-0123456789ab"
   }
}
```

## Peristiwa snapshot EBS
<a name="snapshot-events"></a>

Amazon EBS mengirimkan peristiwa ke EventBridge saat peristiwa volume berikut terjadi.

**Topics**
+ [createSnapshot](#create-snapshot-complete)
+ [createSnapshots](#create-snapshots-complete)
+ [copySnapshot](#copy-snapshot-complete)
+ [shareSnapshot](#snapshot-shared)

### Membuat snapshot (membuatSnapshot)
<a name="create-snapshot-complete"></a>

`createSnapshot`Acara dikirim ke AWS akun Anda saat tindakan untuk membuat snapshot selesai. Namun, itu tidak disimpan, dicatat, atau diarsipkan. Peristiwa ini dapat membawa hasil `succeeded` atau `failed`.

**Data peristiwa**  
Daftar di bawah ini adalah contoh objek JSON yang dipancarkan oleh EBS untuk peristiwa `createSnapshot` yang berhasil. Di `detail` bagian, `source` bidang berisi ARN volume sumber. Kolom `startTime` dan `endTime` mengindikasikan kapan pembuatan snapshot dimulai dan diselesaikan.

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "EBS Snapshot Notification",
  "source": "aws.ec2",
  "account": "012345678901",
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "us-east-1",
  "resources": [
     "arn:aws:ec2::us-west-2:snapshot/snap-01234567"
  ],
  "detail": {
    "event": "createSnapshot",
    "result": "succeeded",
    "cause": "",
    "request-id": "",
    "snapshot_id": "arn:aws:ec2::us-west-2:snapshot/snap-01234567",
    "source": "arn:aws:ec2::us-west-2:volume/vol-01234567",
    "startTime": "yyyy-mm-ddThh:mm:ssZ",
    "endTime": "yyyy-mm-ddThh:mm:ssZ"  }
}
```

### Membuat snapshot (membuatSnapshots)
<a name="create-snapshots-complete"></a>

`createSnapshots`Acara dikirim ke AWS akun Anda saat tindakan untuk membuat snapshot multi-volume selesai. Peristiwa ini dapat membawa hasil `succeeded` atau `failed`.

**Data peristiwa**  
Daftar di bawah ini adalah contoh objek JSON yang dipancarkan oleh EBS untuk peristiwa `createSnapshots` yang berhasil. Di `detail` bagian ini, `source` bidang berisi volume sumber ARNs dari kumpulan snapshot multi-volume. Bidang `startTime` dan `endTime` mengindikasikan kapan pembuatan snapshot dimulai dan diselesaikan.

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "EBS Multi-Volume Snapshots Completion Status",
  "source": "aws.ec2",
  "account": "012345678901",
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "us-east-1",
  "resources": [
    "arn:aws:ec2::us-east-1:snapshot/snap-01234567",
    "arn:aws:ec2::us-east-1:snapshot/snap-012345678"
  ],
  "detail": {
    "event": "createSnapshots",
    "result": "succeeded",
    "cause": "",
    "request-id": "",
    "startTime": "yyyy-mm-ddThh:mm:ssZ",
    "endTime": "yyyy-mm-ddThh:mm:ssZ",
    "snapshots": [
      {
        "snapshot_id": "arn:aws:ec2::us-east-1:snapshot/snap-01234567",
        "source": "arn:aws:ec2::us-east-1:volume/vol-01234567",
        "status": "completed"
      },
      {
        "snapshot_id": "arn:aws:ec2::us-east-1:snapshot/snap-012345678",
        "source": "arn:aws:ec2::us-east-1:volume/vol-012345678",
        "status": "completed"
      }
    ]
  }
}
```

Daftar di bawah ini adalah contoh objek JSON yang dipancarkan oleh EBS setelah peristiwa `createSnapshots` yang gagal. Penyebab kegagalan adalah satu atau lebih snapshot untuk set snapshot multi-volume gagal diselesaikan. Nilai-nilai `snapshot_id` adalah ARNs dari snapshot yang gagal. `startTime`dan `endTime` mewakili saat tindakan create-snapshots dimulai dan berakhir.

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "EBS Multi-Volume Snapshots Completion Status",
  "source": "aws.ec2",
  "account": "012345678901",
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "us-east-1",
  "resources": [
    "arn:aws:ec2::us-east-1:snapshot/snap-01234567",
    "arn:aws:ec2::us-east-1:snapshot/snap-012345678"
  ],
"detail": {
    "event": "createSnapshots",
    "result": "failed",
    "cause": "Snapshot snap-01234567 is in status error",
   "request-id": "",
    "startTime": "yyyy-mm-ddThh:mm:ssZ",
    "endTime": "yyyy-mm-ddThh:mm:ssZ",
    "snapshots": [
      {
        "snapshot_id": "arn:aws:ec2::us-east-1:snapshot/snap-01234567",
        "source": "arn:aws:ec2::us-east-1:volume/vol-01234567",
        "status": "error"
      },
      {
        "snapshot_id": "arn:aws:ec2::us-east-1:snapshot/snap-012345678",
        "source": "arn:aws:ec2::us-east-1:volume/vol-012345678",
        "status": "error"
      }
    ]
  }
}
```

### Salin snapshot (copySnapshot)
<a name="copy-snapshot-complete"></a>

`copySnapshot`Acara dikirim ke AWS akun Anda ketika tindakan untuk menyalin snapshot selesai. Namun, itu tidak disimpan, dicatat, atau diarsipkan. Peristiwa ini dapat membawa hasil `succeeded` atau `failed`.

Di `detail` bagian `source` ini, adalah ARN dari snapshot sumber, dan merupakan ARN `snapshot_id` dari salinan snapshot. `startTime`dan `endTime` menunjukkan kapan operasi penyalinan dimulai dan berakhir. `incremental`menunjukkan apakah salinan snapshot adalah snapshot inkremental (`true`), atau snapshot penuh (). `false` `transferType`menunjukkan apakah operasi salinan snapshot adalah operasi penyalinan standar atau operasi penyalinan berbasis waktu. Untuk informasi selengkapnya, lihat [Salinan berbasis waktu untuk snapshot Amazon EBS dan didukung EBS AMIs](time-based-copies.md).

Jika Anda menyalin snapshot di seluruh Wilayah, peristiwa tersebut dipancarkan di Wilayah tujuan.

**Skenario 1: Operasi penyalinan snapshot standar selesai**  
Berikut ini adalah contoh peristiwa yang dikirim ke akun Anda ketika operasi penyalinan snapshot standar berhasil diselesaikan. Perhatikan bahwa `transferType` adalah`standard`.

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "EBS Snapshot Notification",
  "source": "aws.ec2",
  "account": "123456789012",
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "us-east-1",
  "resources": [
    "arn:aws:ec2::us-west-2:snapshot/snap-01234567"
  ],
  "detail": {
    "event": "copySnapshot",
    "result": "succeeded",
    "cause": "",
    "request-id": "",
    "snapshot_id": "arn:aws:ec2::us-west-2:snapshot/snap-01234567",
    "source": "arn:aws:ec2::eu-west-1:snapshot/snap-76543210",
    "startTime": "yyyy-mm-ddThh:mm:ssZ",
    "endTime": "yyyy-mm-ddThh:mm:ssZ",
    "incremental": "true",
    "transferType": "standard"
  }
}
```

**Skenario 2: Operasi penyalinan snapshot berbasis waktu selesai dalam durasi penyelesaian**  
Berikut ini adalah contoh peristiwa yang dikirim ke akun Anda ketika operasi salinan snapshot berbasis waktu selesai dalam durasi penyelesaiannya. Perhatikan bahwa `transferType` ini adalah `time-based` untuk menunjukkan bahwa itu adalah operasi penyalinan snapshot berbasis waktu. `completionDurationStartTime`menunjukkan kapan durasi penyelesaian dimulai.

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "EBS Snapshot Notification",
  "source": "aws.ec2",
  "account": "123456789012",
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "us-east-1",
  "resources": [
    "arn:aws:ec2::us-west-2:snapshot/snap-01234567"
  ],
  "detail": {
    "event": "copySnapshot",
    "result": "succeeded",
    "cause": "",
    "request-id": "",
    "startTime": "yyyy-mm-ddThh:mm:ssZ",
    "endTime": "yyyy-mm-ddThh:mm:ssZ",
    "snapshot_id": "arn:aws:ec2::us-west-2:snapshot/snap-01234567",
    "source": "arn:aws:ec2::eu-west-1:snapshot/snap-76543210",
    "incremental": "true", 
    "completionDurationStartTime":"2024-11-16T06:27:33.816Z",
    "transferType": "time-based"
  }
}
```

**Skenario 3: Operasi penyalinan snapshot berbasis waktu selesai tetapi melewatkan durasi penyelesaian yang diminta**  
Ketika operasi salinan snapshot berbasis waktu selesai, tetapi gagal memenuhi durasi penyelesaian yang diminta, CloudWatch mengirimkan dua peristiwa ke akun Anda. Berikut ini adalah contoh dari peristiwa tersebut.
+ Acara pertama dikirim ke akun Anda segera setelah durasi penyelesaian terlewatkan, bahkan jika operasi penyalinan masih berlangsung. Untuk acara ini, `detail-type` adalah`EBS Copy Snapshot Missed Completion Duration`, dan `missedCompletionDurationCause` memberikan alasannya.

  ```
  {
   "version":"0",
   "id":"fd90eb95-0938-e02c-cf55-b81363b8ac12",
   "detail-type":"EBS Copy Snapshot Missed Completion Duration",
   "source":"aws.ec2",
   "account":"123456789012",
   "time":"2024-11-19T18:17:08Z",
   "region":"us-east-1",
   "resources": ["arn:aws:ec2:us-east-1:123456789012:snapshot/snap-01234567890abcedf"],
   "detail":{
     "event":"copySnapshot",
     "missedCompletionDurationCause":"Snapshot copy was not able to meet the specified completion duration because your snapshot copy operation throughput quota was exceeded.",
     "snapshot_id":"arn:aws:ec2:us-east-1:123456789012:snapshot/snap-01234567890abcedf",
     "source":"arn:aws:ec2:us-east-1:123456789012:snapshot/snap-00987654321fedcba",
     "startTime": "Sun Nov 24 22:32:55 UTC 2024",
     "transferType": "time-based"
     }
  }
  ```
+ Acara kedua dikirim ke akun Anda hanya setelah snapshot selesai. Acara tersebut termasuk`missedCompletionDurationCause`, yang memberikan alasannya.

  ```
  {
    "version": "0",
    "id": "01234567-0123-0123-0123-012345678901",
    "detail-type": "EBS Snapshot Notification",
    "source": "aws.ec2",
    "account": "123456789012",
    "time": "yyyy-mm-ddThh:mm:ssZ",
    "region": "us-east-1",
    "resources": [
      "arn:aws:ec2::us-west-2:snapshot/snap-01234567"
    ],
    "detail": {
      "event": "copySnapshot",
      "result": "succeeded",
      "cause": "",
      "request-id": "",
      "startTime": "yyyy-mm-ddThh:mm:ssZ",
      "endTime": "yyyy-mm-ddThh:mm:ssZ",
      "snapshot_id": "arn:aws:ec2::us-west-2:snapshot/snap-01234567",
      "source": "arn:aws:ec2::eu-west-1:snapshot/snap-76543210",
      "incremental": "true", 
      "completionDurationStartTime":"2024-11-16T06:27:33.816Z",
      "missedCompletionDurationCause":"Snapshot copy was not able to meet the specified completion duration because your snapshot copy operation throughput quota was exceeded.",
      "transferType": "time-based"
    }
  }
  ```

**Skenario 4: Operasi penyalinan snapshot gagal**  
Berikut ini adalah contoh peristiwa yang dikirim ke akun Anda ketika operasi salinan snapshot gagal. Perhatikan `result` bahwa `failed` untuk menunjukkan bahwa operasi gagal.

```
{
  "version": "0",
  "id": "01234567-0123-0123-0123-012345678901",
  "detail-type": "EBS Snapshot Notification",
  "source": "aws.ec2",
  "account": "123456789012",
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "us-east-1",
  "resources": [
    "arn:aws:ec2::us-west-2:snapshot/snap-01234567"
  ],
  "detail": {
    "event": "copySnapshot",
    "result": "failed",
    "cause": "Source snapshot ID is not valid",
    "request-id": "",
    "snapshot_id": "arn:aws:ec2::us-west-2:snapshot/snap-01234567",
    "source": "arn:aws:ec2::eu-west-1:snapshot/snap-76543210",
    "startTime": "yyyy-mm-ddThh:mm:ssZ",
    "endTime": "yyyy-mm-ddThh:mm:ssZ"
  }
}
```

### Bagikan snapshot (shareSnapshot)
<a name="snapshot-shared"></a>

`shareSnapshot`Acara dikirim ke AWS akun Anda ketika akun lain membagikan snapshot dengannya. Namun, itu tidak disimpan, dicatat, atau diarsipkan. Hasilnya selalu `succeeded`.

**Data peristiwa**  
Berikut adalah contoh objek JSON yang dipancarkan oleh EBS setelah peristiwa `shareSnapshot` yang gagal. Di `detail` bagian tersebut, nilainya `source` adalah nomor AWS akun pengguna yang membagikan snapshot dengan Anda. `startTime`dan `endTime` mewakili saat tindakan share-snapshot dimulai dan berakhir. Peristiwa `shareSnapshot` ini hanya akan dilakukan saat snapshot privat dibagikan dengan pengguna lain. Berbagi snapshot publik tidak memicu peristiwa.

```
{
  "version": "0",
  "id": "01234567-01234-0123-0123-012345678901",
  "detail-type": "EBS Snapshot Notification",
  "source": "aws.ec2",
  "account": "012345678901",
  "time": "yyyy-mm-ddThh:mm:ssZ",
  "region": "us-east-1",
  "resources": [
    "arn:aws:ec2::us-west-2:snapshot/snap-01234567"
  ],
  "detail": {
    "event": "shareSnapshot",
    "result": "succeeded",
    "cause": "",
    "request-id": "",
    "snapshot_id": "arn:aws:ec2::us-west-2:snapshot/snap-01234567",
    "source": 012345678901,
    "startTime": "yyyy-mm-ddThh:mm:ssZ",
    "endTime": "yyyy-mm-ddThh:mm:ssZ"
  }
}
```

## Peristiwa Arsip Snapshots EBS
<a name="snapshot-archive-events"></a>

Amazon EBS memancarkan peristiwa yang terkait dengan tindakan pengarsipan snapshot. Untuk informasi selengkapnya, lihat [Pantau pengarsipan snapshot Amazon EBS menggunakan Acara CloudWatch](monitor-snapshot-archiving.md).

## Peristiwa pemulihan snapshot cepat EBS
<a name="fast-snapshot-restore-events"></a>

Amazon EBS mengirimkan peristiwa ke EventBridge saat status pemulihan snapshot cepat untuk snapshot berubah. Peristiwa dipancarkan atas dasar upaya terbaik.

Berikut adalah contoh data untuk peristiwa ini.

```
{
   "version": "0",
   "id": "01234567-0123-0123-0123-012345678901",
   "detail-type": "EBS Fast Snapshot Restore State-change Notification",
   "source": "aws.ec2",
   "account": "123456789012",
   "time": "yyyy-mm-ddThh:mm:ssZ",
   "region": "us-east-1",
   "resources": [
      "arn:aws:ec2:us-east-1::snapshot/snap-03a55cf56513fa1b6"
   ],
   "detail": {
      "snapshot-id": "snap-1234567890abcdef0",
      "state": "optimizing",
      "zone": "us-east-1a",
      "message": "Client.UserInitiated - Lifecycle state transition",
   }
}
```

Kemungkinan nilai untuk `state` adalah `enabling`, `optimizing`, `enabled`, `disabling`, dan `disabled`.

Kemungkinan nilai untuk `message` adalah sebagai berikut:

`Client.InvalidSnapshot.InvalidState - The requested snapshot transitioned to an invalid state (Error)`  
Permintaan untuk mengaktifkan pemulihan snapshot cepat gagal dan status bertransisi ke `disabling` atau `disabled`. Pemulihan snapshot cepat tidak diaktifkan untuk snapshot ini.

`Client.UserInitiated`  
Status berhasil dialihkan ke `enabling` atau `disabling`.

`Client.UserInitiated - Lifecycle state transition`  
Status berhasil dialihkan ke `optimizing`, `enabled`, atau `disabled`.

`Server.InsufficientCapacity - There was insufficient capacity available to satisfy the request`  
Permintaan untuk mengaktifkan pemulihan snapshot cepat gagal karena kapasitas tidak mencukupi, dan status bertransisi ke `disabling` atau `disabled`. Tunggu dan kemudian coba lagi.

`Server.InternalError - An internal error caused the operation to fail`  
Permintaan untuk mengaktifkan pemulihan snapshot cepat gagal karena kesalahan internal, dan status bertransisi ke `disabling` atau `disabled`. Tunggu dan kemudian coba lagi.

`Client.InvalidSnapshot.InvalidState - The requested snapshot was deleted or access permissions were revoked`  
Status pemulihan snapshot cepat untuk snapshot telah ditransisikan ke `disabling` atau `disabled` karena snapshot dihapus atau tidak dibagikan oleh pemilik snapshot. Pemulihan snapshot cepat tidak dapat diaktifkan untuk snapshot yang telah dihapus atau tidak lagi dibagikan kepada Anda.

# Menggunakan AWS Lambda untuk menangani EventBridge acara
<a name="using_lambda"></a>

Anda dapat menggunakan Amazon EBS dan Amazon EventBridge untuk mengotomatiskan alur kerja pencadangan data Anda. Ini mengharuskan Anda untuk membuat kebijakan IAM, AWS Lambda fungsi untuk menangani acara, dan EventBridge aturan yang cocok dengan peristiwa yang masuk dan merutekkannya ke fungsi Lambda.

Prosedur berikut menggunakan peristiwa `createSnapshot` untuk menyalin snapshot yang sudah selesai secara otomatis ke Wilayah lain untuk pemulihan bencana. 

**Untuk menyalin snapshot yang sudah selesai ke Wilayah lain**

1. Buat kebijakan IAM, seperti yang ditunjukkan dalam contoh berikut, untuk memberikan izin untuk menggunakan `CopySnapshot` tindakan dan menulis ke log. EventBridge Tetapkan kebijakan kepada pengguna yang akan menangani EventBridge acara tersebut.

------
#### [ JSON ]

****  

   ```
   {
     "Version":"2012-10-17",		 	 	 
     "Statement": [
       {
         "Effect": "Allow",
         "Action": [
           "logs:CreateLogGroup",
           "logs:CreateLogStream",
           "logs:PutLogEvents"
         ],
         "Resource": "arn:aws:logs:*:*:*"
       },
       {
         "Effect": "Allow",
         "Action": [
           "ec2:CopySnapshot"
         ],
         "Resource": "*"
       }
     ]
   }
   ```

------

1. Tentukan fungsi di Lambda yang akan tersedia dari konsol. EventBridge Contoh fungsi Lambda di bawah ini, ditulis dalam Node.js, dipanggil EventBridge ketika `createSnapshot` peristiwa yang cocok dipancarkan oleh Amazon EBS (menandakan bahwa snapshot telah selesai). Saat diinvokasi, fungsi menyalin snapshot dari `us-east-2` untuk `us-east-1`.

   ```
   // Sample Lambda function to copy an EBS snapshot to a different Region
    
   var AWS = require('aws-sdk');
   var ec2 = new AWS.EC2();
    
   // define variables
   var destinationRegion = 'us-east-1';
   var sourceRegion = 'us-east-2';
   console.log ('Loading function');
    
   //main function
   exports.handler = (event, context, callback) => {
    
       // Get the EBS snapshot ID from the event details
       var snapshotArn = event.detail.snapshot_id.split('/');
       const snapshotId = snapshotArn[1];
       const description = `Snapshot copy from ${snapshotId} in ${sourceRegion}.`;
       console.log ("snapshotId:", snapshotId);
   
       // Load EC2 class and update the configuration to use destination Region to initiate the snapshot.
       AWS.config.update({region: destinationRegion});
       var ec2 = new AWS.EC2();
   
       // Prepare variables for ec2.modifySnapshotAttribute call
       const copySnapshotParams = {
           Description: description,
           DestinationRegion: destinationRegion,
           SourceRegion: sourceRegion,
           SourceSnapshotId: snapshotId
       };
    
       // Execute the copy snapshot and log any errors
       ec2.copySnapshot(copySnapshotParams, (err, data) => {
           if (err) {
               const errorMessage = `Error copying snapshot ${snapshotId} to Region ${destinationRegion}.`;
               console.log(errorMessage);
               console.log(err);
               callback(errorMessage);
           } else {
               const successMessage = `Successfully started copy of snapshot ${snapshotId} to Region ${destinationRegion}.`;
               console.log(successMessage);
               console.log(data);
               callback(null, successMessage);
           }
       });
   };
   ```

   Untuk memastikan bahwa fungsi Lambda Anda tersedia dari EventBridge konsol, buat di Wilayah tempat EventBridge acara akan terjadi. Lihat informasi selengkapnya di [Panduan Developer AWS Lambda](https://docs.aws.amazon.com/lambda/latest/dg/).

1. Buka EventBridge konsol Amazon di [https://console.aws.amazon.com/events/](https://console.aws.amazon.com/events/).

1. Di panel navigasi, pilih buat **Aturan**, lalu pilih **Buat aturan**.

1. Untuk **Langkah 1: Tentukan detail aturan**, lakukan hal berikut ini:

   1. Masukkan nilai untuk **Nama** dan **Deskripsi**.

   1. Untuk **Bus peristiwa**, tetap **default**.

   1. Pastikan **Aktifkan aturan pada bus peristiwa yang dipilih** telah diaktifkan.

   1. Untuk **Tipe peristiwa**, pilih **Aturan dengan pola peristiwa**.

   1. Pilih **Berikutnya**.

1. Untuk **Langkah 2: Bangun pola peristiwa**, lakukan hal berikut ini:

   1. Untuk **sumber acara**, pilih **AWS acara atau acara EventBridge mitra**.

   1. Di bagian **Pola peristiwa**, untuk **sumber peristiwa**, pastikan bahwa **layanan AWS ** dipilih, dan untuk **layanan AWS **, pilih **EC2**.

   1. Untuk **Tipe peristiwa**, pilih **Notifikasi Snapshot EBS**, pilih **Peristiwa spesifik**, lalu pilih **createSnapshot**.

   1. Pilih **Hasil spesifik** dan kemudian pilih **berhasil**.

   1. Pilih **Berikutnya**.

1. Untuk **Langkah 3: Pilih target**, lakukan hal berikut ini:

   1. Untuk **Tipe target**, pilih **Layanan AWS **.

   1. Untuk **Pilih target**, pilih **fungsi Lambda**, dan untuk **Fungsi** pilih fungsi yang Anda buat sebelumnya.

   1. Pilih **Selanjutnya**

1. Untuk **Langkah 4: Konfigurasikan tanda**, tentukan tanda untuk aturan jika diperlukan, lalu pilih **Berikutnya**.

1. Untuk **Langkah 5: Tinjau dan buat**, tinjau aturan lalu pilih **Buat aturan**.

Aturan Anda seharusnya kini muncul di tab **Aturan**. Pada contoh yang ditunjukkan, peristiwa yang Anda konfigurasikan harusoleh EBS pada saat Anda menyalin snapshot berikutnya.