View a markdown version of this page

Mengambil Alarm dari APM dengan integrasi Amazon SNS langsung - Panduan Pengguna Deteksi dan Respons Insiden AWS

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

Mengambil Alarm dari APM dengan integrasi Amazon SNS langsung

Jika APM Anda mendukung pengiriman alarm ke topik Amazon SNS, Anda dapat mengikuti panduan ini untuk menerima alarm APM Anda ke AWS Incident Detection and Response.

Anda dapat menerapkan CloudFormation template yang disediakan atau mengatur integrasi ini secara manual. Sebelum menyiapkan integrasi, verifikasi bahwa peran AWS terkait layanan (SLR)AWSServiceRoleForHealth_EventProcessor, dibuat di akun Anda.

Opsi 1: Menggunakan CloudFormation

CloudFormation Template tersedia untuk menyederhanakan proses pembuatan infrastruktur integrasi yang diperlukan untuk menerima alarm ke AWS Incident Detection and Response dari APM Anda dengan integrasi Amazon SNS.

catatan
  • Biaya tambahan akan dikeluarkan untuk sumber daya yang digunakan melalui CloudFormation template ini (misalnya: Lambda dan EventBridge). Untuk informasi selengkapnya tentang harga layanan ini, lihat AWS Harga.

  • CloudFormation Template ini harus digunakan di setiap AWS akun dan Wilayah tempat alarm perlu dicerna oleh Deteksi dan Respons Insiden AWS.

  • Contoh yang diberikan dalam dokumen ini adalah untuk Grafana, namun template ini dapat digunakan untuk APM apa pun yang memiliki integrasi langsung dengan Amazon Simple Notification Service.

  • Untuk alasan keamanan, AWS sarankan menghapus logger.info() pernyataan dari TransformLambdaFunction untuk mencegah muatan masuk ke Amazon CloudWatch Logs.

Prasyarat untuk menerapkan CloudFormation template ini:

  • Topik Layanan Pemberitahuan Sederhana Amazon Standar harus dibuat untuk menerima peristiwa alarm dari APM Anda. Buat topik SNS di konsol Amazon Simple Notification Service.

  • TransformLambdaFunctionDalam template harus dimodifikasi untuk diatur ["detail"]["incident-detection-response-identifier"] ke nilai yang diinginkan berdasarkan APM yang digunakan.

Penyelesaian prasyarat:

  1. Buka Amazon SNS Console, lalu pilih Topik. Salin ARN dari topik Standard Amazon SNS yang dibuat untuk menerima peristiwa alarm dari APM Anda.

    • Contoh: arn:aws:sns:eu-west-1:012345678912:<your-apm-name>-sns

  2. Unduh dan buka CloudFormation template

    • Temukan TransformLambdaFunction di template

      • Di bawah def lambda_handler(event, context) diatur event["detail"]["incident-detection-response-identifier"] ke jalur json di mana nama alarm muncul di muatan JSON dari catatan SNS.

        • Setiap peristiwa yang dikirim ke TransformLambdaFunction melalui SNS memiliki struktur muatan induk sebagai. event["Records"][n]["Sns"]["Message"] Asal muatan aktual dari sumber (APM) terbungkus di dalam struktur induk.

        • Contoh untuk Grafana: event["Records"][n]["Sns"]["Message"]["alerts"][n]["labels"]["alertname"]

Menyebarkan Tem CloudFormation plate:

  1. Arahkan ke CloudFormation konsol di akun dan Wilayah tempat Anda perlu mengatur integrasi.

  2. Arahkan ke CloudFormation.

    • Pilih Buat tumpukan, Dengan sumber daya baru (standar)

      • Pilih Pilih template yang ada, Unggah file template, Pilih file, lalu unggah CloudFormation template yang Anda simpan secara lokal.

  3. Tentukan detail tumpukan:

    • Masukkan nama tumpukan Contoh: <your-apm-name>IntegrationForIDR

    • Tentukan nilai Parameter yang diperoleh selama penyelesaian Prasyarat

      • APMNameParameterContoh: Grafana

      • Contoh TriggerSNsParameter: arn:aws:sns:eu-west-1:012345678912:<your-apm-name>-sns

    • Pilih Berikutnya.

  4. Konfigurasikan opsi tumpukan:

    • Gulir ke bagian bawah halaman dan kenali kotak centang CloudFormation untuk memungkinkan membuat sumber daya IAM dengan nama khusus.

  5. Tinjau dan buat:

    • Validasi nilai parameter dikonfigurasi dengan benar, lalu pilih Kirim.

  6. Tum CloudFormation pukan akan menggunakan sumber daya yang diperlukan untuk mengintegrasikan peristiwa APM Anda ke AWS Incident Detection and Response. Tunggu hingga Status St CloudFormation ack adalah CREATE _COMPLETE.

  7. Tum CloudFormation pukan membuat sumber daya di bawah ini dengan asumsi nilai contoh dimasukkan ke dalam parameter untuk Grafana dan dieksekusi di Wil EU-WEST-1 ayah.

    • CustomEventBus: Grafana-AWSIncidentDetectionResponse-EventBus

    • SNSBlangganan: arn: aws:sns:eu-barat- 1:012345678912: grafana-sns: [random_string]

    • TransformLambdaExecutionRole: IDR-TransformLambdaExecutionRole-eu-west-1

    • TransformLambdaFunction: Grafana-AWSIncidentDetectionResponse-Lambda-Transform

    • TransformLambdaPermission: GrafanaIntegrationForIDR-TransformLambdaPermission - [random_string]

Pengujian integrasi

Setelah CloudFormation tumpukan berhasil digunakan, Anda dapat memvalidasi integrasi dengan mengirimkan muatan uji dari APM Anda. Setelah muatan uji dikirim dari APM Anda:

  1. Arahkan ke Konsol Lambda dan pilih fung APMNameParameter-AWSIncidentDetectionResponse-Lambda-Transform sinya. Kemudian, pilih tab Monitor.

  2. Pemanggilan yang berhasil harus diamati dalam grafik metrik.

  3. Pilih Lihat CloudWatch Log Amazon. Anda dapat memverifikasi dari peristiwa Log di aliran Log untuk mengonfirmasi bahwa payload pengujian yang dikirim dari APM Anda ada, atau jika ada kesalahan yang ditemui.

Membagikan Arn Bus Acara Anda ke Deteksi dan Respons Insiden AWS

  1. Arahkan ke Kon EventBridge sol Amazon. Pilih Bus acara.

  2. Rekam ARN bus acara K ustom yang digunakan sebagai bagian dari CloudFormation tumpukan, misalnya:arn:aws:events:eu-west-1:012345678912:event-bus/Grafana-AWSIncidentDetectionResponse-EventBus.

  3. Selama proses orientasi, AWS Incident Detection and Response akan membuat EventBridge aturan Terkelola pada bus acara khusus ini untuk menyerap alarm APM Anda.

Opsi 2: Integrasi manual

Diagram menunjukkan contoh integrasi menggunakan Amazon SNS.
  1. Buka Amazon SNS Console dan buat topik Standard Amazon SNS bernama [apm_name]-sns untuk menerima peristiwa alarm dari APM Anda. Pastikan Anda memilih Standar (bukan FIFO) sebagai jenis topik. Perhatikan ARN dari topik Amazon SNS yang dibuat.

  2. Lakukan salah satu hal berikut:

    • (Disarankan) Buat bus acara EventBridge khusus bernama[apm_name]-AWSIncidentDetectionResponse-EventBus.

    • (Alternatif) Gunakan bus EventBridge acara default alih-alih bus acara khusus.

    AWS Incident Detection and Response akan menginstal aturan ter AWSHealthEventProcessorEventSource-DO-NOT-DELETE kelola () pada bus peristiwa khusus atau default melalui AWSServiceRoleForHealth_EventProcessor SLR. Sumber aturan akan menjadi bus peristiwa khusus atau default, tujuan aturan adalah Deteksi dan Respons Insiden AWS, dan aturan akan cocok dengan pola untuk menelan peristiwa APM pihak ketiga.

  3. Buat fungsi Lambda bernama $YourApmName-AWSIncidentDetectionResponse-LambdaFunction untuk mengubah payload SNS Anda.

  4. Tetapkan topik SNS sebagai pemicu untuk fungsi Lambda Anda. $YourApmName-AWSIncidentDetectionResponse-LambdaFunction

    • Di halaman “Tambah Pemicu”, cari “SNS”.

    • Tambahkan ARN Topik SNS khusus Anda yang dibuat di Langkah 1.

    • Pilih “Tambah”.

  5. Ikuti dokumentasi APM Anda untuk menyiapkan tujuan SNS untuk payload APM Anda yang perlu dicerna oleh AWS Incident Detection and Response.

AWS Incident Detection and Response akan menginstal aturan ter AWSHealthEventProcessorEventSource-DO-NOT-DELETE kelola () pada bus peristiwa khusus atau default melalui AWSServiceRoleForHealth_EventProcessor SLR. Sumber aturan akan menjadi bus peristiwa khusus atau default, tujuan aturan adalah Deteksi dan Respons Insiden AWS, dan aturan akan cocok dengan pola untuk menelan peristiwa APM pihak ketiga.