

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

# Struktur dan sintaks peristiwa siklus hidup Resource Groups
<a name="monitor-groups-syntax"></a>

**Topics**
+ [Struktur `detail` lapangan](monitor-groups-syntax-detail.md)
+ [Contoh pola acara EventBridge khusus untuk kasus penggunaan yang berbeda](monitor-groups-example-eventbridge-filters.md)

Peristiwa siklus hidup untuk AWS Resource Groups mengambil bentuk string objek [JSON](https://json.org) dalam format umum berikut.

```
{
    "version": "0",
    "id": "08f00e24-2e30-ec44-b824-8acddf1ac868",
    "detail-type": "ResourceGroups Group ... Change",
    "source": "aws.resource-groups",
    "account": "123456789012",
    "time": "2020-09-29T09:59:01Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:resource-groups:us-east-1:123456789012:group/MyGroupName"
    ],
    "detail": {
        ...
    }
}
```

Untuk detail tentang bidang yang umum untuk semua EventBridge acara Amazon, lihat [ EventBridge peristiwa Amazon](https://docs.aws.amazon.com//eventbridge/latest/userguide/aws-events.html) di *Panduan EventBridge Pengguna Amazon*. Detail yang spesifik untuk Resource Groups dijelaskan dalam tabel berikut.


| Nama bidang | Tipe | Deskripsi | 
| --- | --- | --- | 
| detail-type | String |  Untuk Resource Groups, `detail-type` bidang selalu merupakan salah satu dari nilai berikut: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/ARG/latest/userguide/monitor-groups-syntax.html)  | 
| source | String | Untuk Resource Groups, nilai ini selalu"aws.resource-groups". | 
| resources | Array Nama Sumber Daya Amazon (ARNs) |  Bidang ini selalu menyertakan [nama sumber daya Amazon (ARN)](https://docs.aws.amazon.com//general/latest/gr/aws-arns-and-namespaces.html) grup dengan perubahan yang memicu peristiwa ini. Bidang ARNs ini juga dapat menyertakan sumber daya apa pun yang ditambahkan atau dihapus dari grup, jika berlaku.  | 
|  `detail`  | String objek JSON | Ini adalah muatan acara. Isi detail bidang bervariasi berdasarkan nilaidetail-type. [Lihat bagian selanjutnya untuk informasi lebih lanjut.](monitor-groups-syntax-detail.md) | 

# Struktur `detail` lapangan
<a name="monitor-groups-syntax-detail"></a>

`detail`Bidang ini mencakup semua detail spesifik layanan Resource Groups tentang perubahan tertentu. `detail`Bidang dapat mengambil salah satu dari dua bentuk, perubahan status grup atau perubahan keanggotaan, berdasarkan nilai `detail-type` bidang yang dijelaskan di bagian sebelumnya.

**penting**  
[Grup sumber daya dalam peristiwa ini diidentifikasi dengan kombinasi ARN grup dan `"unique-id"` bidang yang berisi UUID.](https://wikipedia.org/wiki/Universally_unique_identifier) Dengan menyertakan UUID sebagai bagian dari identitas grup sumber daya, Anda dapat membedakan antara grup yang dihapus dan grup lain yang kemudian dibuat dengan nama yang sama. Kami menyarankan Anda memperlakukan rangkaian ARN dan id unik sebagai kunci untuk grup dalam program Anda yang berinteraksi dengan acara ini. 

## Perubahan status grup
<a name="monitor-groups-syntax-detail-state-change"></a>

`"detail-type": "ResourceGroups Group State Change"`

`detail-type`Nilai ini menunjukkan bahwa keadaan grup itu sendiri, termasuk metadatanya, telah berubah. Perubahan ini terjadi ketika grup dibuat, diperbarui, atau dihapus, seperti yang ditunjukkan oleh `"change"` bidang di dalam`detail`. 

Informasi yang disertakan dalam `details` bagian ketika ini `detail-type` ditentukan termasuk bidang yang dijelaskan dalam tabel berikut.


| Nama bidang | Tipe | Deskripsi | 
| --- | --- | --- | 
| event-sequence | Ganda | Jumlah yang meningkat secara monoton yang menentukan urutan peristiwa untuk kelompok tertentu. Nomor akan disetel ulang saat Anda menghapus grup dan membuat grup lain dengan nama yang sama.  | 
| group | Objek JSON [`Group`](#monitor-groups-syntax-detail-group-object) | Objek grup yang terkait dengan acara dengan ARN, nama, dan ID uniknya. | 
| state-change | String | Jenis perubahan negara yang terjadi. Dapat berupa salah satu dari nilai-nilai berikut:[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/ARG/latest/userguide/monitor-groups-syntax-detail.html) | 
| old-state  | Objek JSON GroupState | Keadaan kelompok sebelum perubahan. Objek hanya mencakup nilai-nilai properti yang berubah.  | 
|  `new-state`  | Objek JSON GroupState | Keadaan grup setelah perubahan. Objek hanya mencakup nilai-nilai properti yang berubah. | 

Objek `group` JSON berisi unsur-unsur yang dijelaskan dalam tabel berikut. 


| Nama bidang | Tipe | Deskripsi | 
| --- | --- | --- | 
| arn | String | ARN dari grup. | 
| name | String | Nama grup yang ramah. | 
| unique-id | PANDUAN | Nilai GUID unik yang membedakan antara grup yang dihapus dan grup berbeda yang kemudian dibuat dengan nama dan ARN yang sama. Gunakan rangkaian ARN dan nilai ini sebagai kunci unik untuk grup saat menggunakan peristiwa ini dalam kode Anda.  | 

Objek `GroupState` JSON berisi unsur-unsur yang dijelaskan dalam tabel berikut.


| Nama bidang | Tipe | Deskripsi | 
| --- | --- | --- | 
| description | String | Deskripsi kelompok sumber daya yang disediakan pelanggan. | 
| resource-query | Objek JSON ResourceQuery | Sebuah representasi JSON dari query yang mendefinisikan anggota grup. Bidang ini hadir hanya untuk grup berdasarkan kueri. Sintaks bidang ini ditentukan oleh [tipe data ResourceQuery API](https://docs.aws.amazon.com//organizations/latest/APIReference/API_ResourceQuery.html). Contoh ini termasuk dalam contoh acara [Buat](#monitor-groups-syntax-detail-state-change-create) dan [Perbarui](#monitor-groups-syntax-detail-state-change-update). | 
| group-configuration | Objek JSON Configuration | Representasi JSON dari parameter konfigurasi yang terkait dengan grup yang ditautkan layanan. Untuk informasi selengkapnya, lihat [Konfigurasi layanan untuk grup sumber daya](https://docs.aws.amazon.com/ARG/latest/APIReference/about-slg.html) di Referensi AWS Resource Groups API. | 

Masing-masing contoh kode berikut menggambarkan isi `detail` bidang untuk setiap `state-change` jenis.

### Buat
<a name="monitor-groups-syntax-detail-state-change-create"></a>

`"state-change": "create"` 

Acara ini menunjukkan bahwa grup baru telah dibuat. Acara ini membawa semua properti metadata grup yang ditetapkan selama pembuatan grup. Acara ini biasanya diikuti oleh salah satu acara keanggotaan grup lainnya kecuali grup tersebut kosong. Properti yang memiliki nilai nol tidak ditampilkan di badan acara. 

Contoh peristiwa berikut menunjukkan grup sumber daya yang baru dibuat bernama`my-service-group`. Dalam contoh ini, grup menggunakan kueri berbasis tag yang hanya cocok dengan instans Amazon Elastic Compute Cloud (Amazon EC2) yang memiliki tag. `"project"="my-service"`

```
{
    "version": "0",
    "id": "08f00e24-2e30-ec44-b824-8acddf1ac868",
    "detail-type": "ResourceGroups Group State Change",
    "source": "aws.resource-groups",
    "account": "123456789012",
    "time": "2020-09-29T09:59:01Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:resource-groups:us-east-1:123456789012:group/my-service-group"
    ],
    "detail": {
        "event-sequence": 1.0,
        "state-change": "create", 
        "group": {
            "arn": "arn:aws:resource-groups:us-east-1:123456789012:group/my-service-group",
            "name": "my-service-group",
            "unique-id": "3dd07ab7-3228-4410-8cdc-6c4a10fcceea"
        },        
        "new-state": {
            "resource-query": {
                "type": "TAG_FILTERS_1_0",
                "query": "{
                    \"ResourceTypeFilters\": [\"AWS::EC2::Instance\"],
                    \"TagFilters\": [{\"Key\":\"project\", \"Values\":[\"my-service\"}]
                }"
            }
        }
    }
}
```

### Perbarui
<a name="monitor-groups-syntax-detail-state-change-update"></a>

`"state-change": "update"`

Acara ini menunjukkan bahwa grup yang ada telah dimodifikasi dalam beberapa cara. Acara ini hanya membawa properti yang berubah dari keadaan sebelumnya. Properti yang belum berubah tidak ditampilkan di badan acara.

Contoh peristiwa berikut menunjukkan bahwa kueri berbasis tag di grup sumber daya contoh sebelumnya telah dimodifikasi untuk juga menyertakan sumber daya volume Amazon EC2 dalam grup.

```
{
    "version": "0",
    "id": "08f00e24-2e30-ec44-b824-8acddf1ac868",
    "detail-type": "ResourceGroups Group State Change",
    "source": "aws.resource-groups",
    "account": "123456789012",
    "time": "2020-09-29T09:59:01Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:resource-groups:us-east-1:123456789012:group/my-service-group"
    ],
    "detail": {
        "event-sequence": 3.0,
        "state-change": "update",
        "group": {
            "arn": "arn:aws:resource-groups:us-east-1:123456789012:group/my-service-group",
            "name": "my-service",
            "unique-id": "3dd07ab7-3228-4410-8cdc-6c4a10fcceea"
        },        
        "new-state": {
            "resource-query": {
                "type": "TAG_FILTERS_1_0",
                "query": "{
                    \"ResourceTypeFilters\": [\"AWS::EC2::Instance\", \"AWS::EC2::Volume\"],
                    \"TagFilters\": [{\"Key\":\"project\", \"Values\":[\"my-service\"}]
                }"
            }
        },
        "old-state": {
            "resource-query": {
                "type": "TAG_FILTERS_1_0",
                "query": "{
                    \"ResourceTypeFilters\": [\"AWS::EC2::Instance\"],
                    \"TagFilters\": [{\"Key\":\"Project\", \"Values\":[\"my-service\"}]
                }"
            }
        }
    }
}
```

### Delete
<a name="monitor-groups-syntax-detail-state-change-delete"></a>

`"state-change": "delete"`

Acara menunjukkan bahwa grup yang ada telah dihapus. Bidang detail tidak mencakup metadata tentang grup selain identifikasinya. `event-sequence`Bidang diatur ulang setelah acara ini seperti, menurut definisi, peristiwa terakhir untuk ini `arn` dan`unique-id`.

```
{
    "version": "0",
    "id": "08f00e24-2e30-ec44-b824-8acddf1ac868",
    "detail-type": "ResourceGroups Group State Change",
    "source": "aws.resource-groups",
    "account": "123456789012",
    "time": "2020-09-29T09:59:01Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:resource-groups:us-east-1:123456789012:group/my-service"
    ],
    "detail": {
        "event-sequence": 4.0,   
        "state-change": "delete",
        "group": {
            "arn": "arn:aws:resource-groups:us-east-1:123456789012:group/my-service",
            "name": "my-service",
            "unique-id": "3dd07ab7-3228-4410-8cdc-6c4a10fcceea"
        }
    }
}
```

## Perubahan keanggotaan grup
<a name="monitor-groups-syntax-detail-membership-change"></a>

`"detail-type": "ResourceGroups Group Membership Change"`

`detail-type`Nilai ini menunjukkan bahwa keanggotaan grup diubah oleh sumber daya yang ditambahkan atau dihapus dari grup. Ketika ini `detail-type` ditentukan, `resources` bidang tingkat atas mencakup ARN grup yang keanggotaannya diubah dan ARNs sumber daya apa pun yang ditambahkan atau dihapus dari grup.

Informasi yang disertakan dalam `details` bagian ketika ini `detail-type` ditentukan termasuk bidang yang dijelaskan dalam tabel berikut.


| Nama bidang | Tipe | Deskripsi | 
| --- | --- | --- | 
| event-sequence | Ganda | Jumlah yang meningkat secara monoton yang menunjukkan urutan peristiwa untuk kelompok tertentu. Nomor disetel ulang saat grup dihapus dan ID uniknya berubah.  | 
| group | Objek JSON Group | Mengidentifikasi objek grup yang terkait dengan acara dengan ARN, nama, dan ID uniknya. | 
|  `resources`  | Array objek ResourceChange JSON |  Berbagai sumber daya yang keanggotaan grupnya telah berubah. `ResourceChange`Objek ini berisi bidang berikut untuk setiap sumber daya: [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/id_id/ARG/latest/userguide/monitor-groups-syntax-detail.html)  | 

Contoh kode berikut mengilustrasikan isi acara untuk jenis perubahan keanggotaan yang khas. Contoh ini menunjukkan satu sumber daya yang ditambahkan ke grup, dan satu sumber daya dihapus dari grup.

```
{
    "version": "0",
    "id": "08f00e24-2e30-ec44-b824-8acddf1ac868",
    "detail-type": "ResourceGroups Group Membership Change",
    "source": "aws.resource-groups",
    "account": "123456789012",
    "time": "2020-09-29T09:59:01Z",
    "region": "us-east-1",
    "resources": [
        "arn:aws:resource-groups:us-east-1:123456789012:group/my-service",
        "arn:aws:ec2:us-east-1:123456789012:instance/i-abcd1111",
        "arn:aws:ec2:us-east-1:123456789012:instance/i-efef2222"
    ],
    "detail": {
        "event-sequence": 2.0,
        "group": {
            "arn": "arn:aws:resource-groups:us-east-1:123456789012:group/my-service",
            "name": "my-service",
            "unique-id": "3dd07ab7-3228-4410-8cdc-6c4a10fcceea"
        },
        "resources": [
            {
                "membership-change": "add",
                "arn": "arn:aws:ec2:us-east-1:123456789012:instance/i-abcd1111",
                "resource-type": "AWS::EC2::Instance"
            },
            {
                "membership-change": "remove",
                "arn": "arn:aws:ec2:us-east-1:123456789012:instance/i-efef2222",
                "resource-type": "AWS::EC2::Instance"
            }
        ]
    }
}
```

# Contoh pola acara EventBridge khusus untuk kasus penggunaan yang berbeda
<a name="monitor-groups-example-eventbridge-filters"></a>

Contoh pola peristiwa EventBridge kustom berikut memfilter peristiwa yang dihasilkan oleh Resource Groups hanya untuk yang Anda minati untuk aturan dan target acara tertentu.

Dalam contoh kode berikut, jika kelompok atau sumber daya tertentu diperlukan, ganti masing-masing *user input placeholder* dengan informasi Anda sendiri.

Semua acara Resource Groups  

```
{
    "source": [ "aws.resource-groups" ]
}
```

Status grup atau acara perubahan keanggotaan  
Contoh kode berikut adalah untuk semua perubahan *status* grup.  

```
{
    "source": [ "aws.resource-groups" ],
    "detail-type": [ "ResourceGroups Group State Change " ]
}
```
Contoh kode berikut adalah untuk semua perubahan *keanggotaan* grup.  

```
{
    "source": [ "aws.resource-groups" ],
    "detail-type": [ "ResourceGroups Group Membership Change" ]
}
```

Acara untuk grup tertentu  

```
{
    "source": [ "aws.resource-groups" ],
    "detail": {
        "group": {
            "arn": [ "my-group-arn" ]
        }
    }
}
```
Contoh sebelumnya menangkap perubahan pada grup yang ditentukan. Contoh berikut melakukan hal yang sama dan juga menangkap perubahan ketika grup adalah sumber daya anggota grup lain.  

```
{
    "source": [ "aws.resource-groups" ],
    "resources": [ "my-group-arn" ]
}
```

Acara untuk sumber daya tertentu  
Anda hanya dapat memfilter acara perubahan keanggotaan grup untuk sumber daya anggota tertentu.  

```
{
    "source": [ "aws.resource-groups" ],
    "detail-type": [ "ResourceGroups Group Membership Change " ],
    "resources": [ "arn:aws:ec2:us-east-1:123456789012:instance/i-b188560f" ]
}
```

Acara untuk jenis sumber daya tertentu  
Anda dapat menggunakan awalan yang cocok dengan ARNs untuk mencocokkan peristiwa untuk jenis sumber daya tertentu.  

```
{
    "source": [ "aws.resource-groups" ],
    "resources": [
        { "prefix": "arn:aws:ec2:us-east-1:123456789012:instance" } 
    ]
}
```
Atau, Anda dapat menggunakan pencocokan tepat dengan menggunakan `resource-type` pengidentifikasi, yang berpotensi cocok pada lebih dari satu jenis secara ringkas. Tidak seperti contoh sebelumnya, contoh berikut hanya cocok dengan peristiwa perubahan keanggotaan grup karena peristiwa perubahan status grup tidak menyertakan `resources` bidang di `detail` bidangnya.  

```
{
    "source": [ "aws.resource-groups" ],
    "detail": {
        "resources": {
                "resource-type": [ "AWS::EC2::Instance", "AWS::EC2::Volume" ]
         }
    }
}
```

Semua acara penghapusan sumber daya  

```
{
    "source": [ "aws.resource-groups" ],
    "detail-type": [ "ResourceGroups Group Membership Change" ],
    "detail": {
        "resources": {
                "membership-change": [ "remove" ]
        }
    }
}
```

Semua peristiwa penghapusan sumber daya untuk sumber daya tertentu  

```
 {
    "source": [ "aws.resource-groups" ],
    "detail-type": [ "ResourceGroups Group Membership Change" ],
    "detail": {
        "resources": {
                "membership-change": [ "remove" ],
                "arn": [ "arn:aws:ec2:us-east-1:123456789012:instance/i-b188560f" ]
         }
    }
}
```
Anda tidak dapat menggunakan `resources` array **tingkat atas** yang digunakan dalam contoh pertama di bagian ini untuk jenis pemfilteran peristiwa ini. Itu karena sumber daya di `resources` elemen tingkat atas mungkin merupakan sumber daya yang ditambahkan ke grup dan acara tersebut akan tetap cocok. Dengan kata lain, contoh kode berikut mungkin mengembalikan peristiwa yang tidak terduga. Sebagai gantinya, gunakan sintaks yang ditunjukkan pada contoh sebelumnya.  

```
{
    "source": [ "aws.resource-groups" ],
    "detail-type": [ "ResourceGroups Group Membership Change" ],
    "resources": [ "arn:aws:ec2:us-east-1:123456789012:instance/i-b188560f" ],
    "detail": {
        "resources": {
                "membership-change": [ "remove" ]
         }
     }
}
```