Tutorial: Gunakan Transformator Input untuk Menyesuaikan Apa yang Diteruskan ke Target Peristiwa - Amazon CloudWatch Peristiwa

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

Tutorial: Gunakan Transformator Input untuk Menyesuaikan Apa yang Diteruskan ke Target Peristiwa

catatan

Amazon EventBridge adalah cara pilihan untuk mengelola peristiwa Anda. CloudWatch Events dan EventBridge adalah layanan dan API dasar yang sama, tetapi EventBridge menyediakan lebih banyak fitur. Perubahan yang Anda buat di CloudWatch atau EventBridge akan muncul di setiap konsol. Untuk informasi selengkapnya, lihat Amazon EventBridge.

Anda dapat menggunakan fitur transformator input CloudWatch Events untuk menyesuaikan teks dari peristiwa sebelum diinput ke target aturan.

Anda dapat menentukan beberapa jalur JSON dari peristiwa tersebut dan menetapkan outputnya ke variabel yang berbeda. Kemudian Anda dapat menggunakan variabel tersebut di templat input sebagai <variable-name>. Karakter < dan > tidak dapat lepas.

Jika Anda menentukan variabel untuk mencocokkan jalur JSON yang tidak ada dalam peristiwa, maka variabel tersebut tidak akan dibuat dan tidak muncul dalam output.

Dalam tutorial ini, kita mengekstraksi id-instans dan status instans Amazon EC2 dari peristiwa perubahan status instans. Kami menggunakan transformator input untuk memasukkan data ke dalam pesan yang mudah dibaca yang dikirim ke topik Amazon SNS. Aturan ini akan dipicu ketika instans mana pun mengalami perubahan status. Misalnya, dengan aturan ini, peristiwa notifikasi perubahan status instans Amazon EC2 berikut menghasilkan pesan Amazon SNS berupa Instans EC2 i-1234567890abcdef0 telah berubah status menjadi berhenti.

{ "id":"7bf73129-1428-4cd3-a780-95db273d1602", "detail-type":"EC2 Instance State-change Notification", "source":"aws.ec2", "account":"123456789012", "time":"2015-11-11T21:29:54Z", "region":"us-east-1", "resources":[ "arn:aws:ec2:us-east-1:123456789012:instance/ i-1234567890abcdef0" ], "detail":{ "instance-id":" i-1234567890abcdef0", "state":"stopped" } }

Kami melakukannya dengan memetakan variabel instans ke jalur JSON $.detail.instance-id dari peristiwa tersebut, dan memetakan variabel status ke jalur JSON $.detail.state. Kemudian, kami mengatur templat input sebagai "Instans EC2 <instance> telah berubah status menjadi <state>."

Buat aturan

Untuk menyesuaikan informasi perubahan status instans yang dikirimkan ke target menggunakan transformator input

  1. Buka konsol CloudWatch di https://console.aws.amazon.com/cloudwatch/.

  2. Di panel navigasi, pilih Peristiwa, Buat aturan.

  3. Untuk Sumber peristiwa, lakukan hal berikut:

    1. Pilih Pola kejadian.

    2. Pilih Bangun pola peristiwa untuk mencocokkan peristiwa berdasarkan layanan.

    3. Pilih EC2, Notifikasi Perubahan Status Instans EC2.

    4. Pilih Status apa pun, Semua instans.

  4. Untuk Target, pilih Tambah target, Topik SNS.

  5. Untuk Topik, pilih topik Amazon SNS yang akan diberitahukan ketika instans Amazon EC2 berubah statusnya.

  6. Pilih Mengkonfigurasi input, Transformer input.

  7. Di kotak berikutnya, ketik {"state” : “$.detail.state”, “instance” : “$.detail.instance-id"}

  8. Di kotak berikut ini, ketik “Instans EC2 <instance> telah berubah status menjadi <state>.”

  9. Pilih Konfigurasikan detail.

  10. Ketikkan sebuah nama dan deskripsi untuk aturan, lalu pilih Buat aturan.