

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

# Langkah 3: Buat kustom AWS AppConfig luas
<a name="working-with-appconfig-extensions-creating-custom-extensions"></a>



Ekstensi mendefinisikan satu atau lebih tindakan yang dilakukan selama AWS AppConfig alur kerja. Misalnya, `AWS AppConfig deployment events to Amazon SNS` ekstensi yang AWS ditulis menyertakan tindakan untuk mengirim pemberitahuan ke topik Amazon SNS. Setiap tindakan dipanggil baik ketika Anda berinteraksi dengan AWS AppConfig atau saat AWS AppConfig melakukan proses atas nama Anda. Ini disebut titik * aksi*. AWS AppConfig ekstensi mendukung poin tindakan berikut:

**Titik tindakan PRE\_\***: Tindakan ekstensi yang dikonfigurasi pada titik `PRE_*` tindakan diterapkan setelah validasi permintaan, tetapi sebelum AWS AppConfig melakukan aktivitas yang sesuai dengan nama titik tindakan. Pemanggilan tindakan ini diproses bersamaan dengan permintaan. Jika lebih dari satu permintaan dibuat, pemanggilan tindakan berjalan secara berurutan. Perhatikan juga bahwa titik `PRE_*` tindakan menerima dan dapat mengubah konten konfigurasi. `PRE_*`Titik tindakan juga dapat merespons kesalahan dan mencegah tindakan terjadi. 
+ `PRE_CREATE_HOSTED_CONFIGURATION_VERSION`
+ `PRE_START_DEPLOYMENT`

**ON\_\* action points**: Ekstensi juga dapat berjalan secara paralel dengan AWS AppConfig alur kerja dengan menggunakan titik `ON_*` tindakan. `ON_*`titik aksi dipanggil secara asinkron. `ON_*`poin tindakan tidak menerima konten konfigurasi. Jika ekstensi mengalami kesalahan selama titik `ON_*` tindakan, layanan mengabaikan kesalahan dan melanjutkan alur kerja.
+ `ON_DEPLOYMENT_START`
+ `ON_DEPLOYMENT_STEP`
+ `ON_DEPLOYMENT_BAKING`
+ `ON_DEPLOYMENT_COMPLETE`
+ `ON_DEPLOYMENT_ROLLED_BACK`

**Titik tindakan AT\_\***: Tindakan ekstensi yang dikonfigurasi pada titik `AT_*` tindakan dipanggil secara sinkron dan paralel dengan alur kerja. AWS AppConfig Jika ekstensi mengalami kesalahan selama titik `AT_*` tindakan, layanan menghentikan alur kerja dan mengembalikan penerapan.
+ `AT_DEPLOYMENT_TICK`

Titik `AT_DEPLOYMENT_TICK` tindakan mendukung integrasi pemantauan pihak ketiga. `AT_DEPLOYMENT_TICK`dipanggil selama orkestrasi pemrosesan penerapan konfigurasi. Jika Anda menggunakan solusi pemantauan pihak ketiga (misalnya, Datadog atau New Relic), Anda dapat membuat AWS AppConfig ekstensi yang memeriksa alarm pada titik `AT_DEPLOYMENT_TICK` tindakan dan, sebagai pagar pengaman pengaman, memutar kembali penerapan jika memicu alarm. 

Jika Anda menggunakan solusi pemantauan pihak ketiga seperti Datadog atau New Relic, Anda dapat membuat AWS AppConfig ekstensi yang memeriksa alarm pada titik `AT_DEPLOYMENT_TICK` tindakan dan, sebagai pagar pengaman pengaman, mengembalikan penerapan jika memicu alarm. Untuk informasi selengkapnya, lihat contoh integrasi Datadog dan New Relic berikut di: GitHub 
+ [Datadog](https://github.com/aws-samples/aws-appconfig-tick-extn-for-datadog)
+ [New Relic](https://github.com/aws-samples/sample-aws-appconfig-tick-extn-for-newrelic)

Untuk informasi selengkapnya tentang AWS AppConfig ekstensi, lihat topik berikut:
+ [Memperpanjang AWS AppConfig alur kerja menggunakan ekstensi](working-with-appconfig-extensions.md)
+ [Panduan: Membuat kustom AWS AppConfig ekstensi](working-with-appconfig-extensions-creating-custom.md)

**Sampel ekstensi**  
Ekstensi sampel berikut mendefinisikan satu tindakan yang memanggil titik `PRE_CREATE_HOSTED_CONFIGURATION_VERSION` tindakan. Di `Uri` lapangan, tindakan menentukan Nama Sumber Daya Amazon (ARN) dari fungsi `MyS3ConfigurationBackUpExtension` Lambda yang dibuat sebelumnya dalam panduan ini. Tindakan juga menentukan AWS Identity and Access Management (IAM) asumsi peran ARN yang dibuat sebelumnya dalam panduan ini.

**Sampel AWS AppConfig ekstensi **

```
{
    "Name": "MySampleExtension",
    "Description": "A sample extension that backs up configurations to an S3 bucket.",
    "Actions": {
        "PRE_CREATE_HOSTED_CONFIGURATION_VERSION": [
            {
                "Name": "PreCreateHostedConfigVersionActionForS3Backup",
                "Uri": "arn:aws:lambda:{{aws-region}}:111122223333:function:MyS3ConfigurationBackUpExtension",
                "RoleArn": "arn:aws:iam::111122223333:role/ExtensionsTestRole"
            }
        ]
    },
    "Parameters" : {
        "S3_BUCKET": {
            "Required": false
        }
    }
}
```

**catatan**  
Untuk melihat sintaks permintaan dan deskripsi bidang saat membuat ekstensi, lihat [ CreateExtension ](https://docs.aws.amazon.com/appconfig/2019-10-09/APIReference/API_CreateExtension.html) topik di Refer *AWS AppConfig ensi API*.

**Untuk membuat ekstensi (konsol)**

1. Buka AWS Systems Manager konsol di [ https://console.aws.amazon.com/systems-manager/appconfig/](https://console.aws.amazon.com/systems-manager/appconfig/).

1. Di panel navigasi, pilih **AWS AppConfig**.

1. Pada ** tab Ek ** stensi, pilih ** Buat ekstensi**.

1. Untuk Nama ** ekstensi**, masukkan nama unik. Untuk keperluan panduan ini, masukkan**MyS3ConfigurationBackUpExtension**. Secara opsional, masukkan deskripsi.

1. Di ** bagian ** Tindakan, pilih ** Tambahkan tindakan baru**.

1. Untuk Nama ** tindakan**, masukkan nama unik. Untuk keperluan panduan ini, masukkan**PreCreateHostedConfigVersionActionForS3Backup**. Nama ini menjelaskan titik tindakan yang digunakan oleh tindakan dan tujuan ekstensi.

1. Dalam ** daftar Titik ** tindakan, pilih ** PRE\_CREATE\_HOSTED\_CONFIGURATION\_VERSION**.

1. Untuk ** Uri**, pilih fungsi ** Lambda ** dan kemudian pilih fungsi dalam daftar fungsi ** Lambda. ** Jika Anda tidak melihat fungsi Anda, verifikasi bahwa Anda berada di tempat yang sama Wilayah AWS di mana Anda membuat fungsi.

1. Untuk ** Peran IAM**, pilih peran yang Anda buat sebelumnya dalam panduan ini.

1. Di ** bagian parameter ** ekstensi (opsional), pilih ** Tambahkan parameter baru**. 

1. Untuk nama ** Parameter**, masukkan nama. Untuk keperluan panduan ini, masukkan**S3\_BUCKET**.

1. Ulangi langkah 5—11 untuk membuat tindakan kedua untuk titik `PRE_START_DEPLOYMENT` aksi.

1. Pilih ** Buat ekstensi**.