AWSSupport-TroubleshootCloudWatchAlarm - AWS Systems Manager Referensi buku runbook otomatisasi

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

AWSSupport-TroubleshootCloudWatchAlarm

Deskripsi

AWSSupport-TroubleshootCloudWatchAlarmRunbook membantu mengidentifikasi dan memecahkan masalah dengan Alarm Amazon CloudWatch () yang salah konfigurasi atau bermasalah. CloudWatch Ini memanfaatkan logika evaluasi alarm publik AWS APIs dan diketahui untuk mendeteksi titik data yang tertunda atau hilang dalam metrik yang dipantau, yang dapat menyebabkan tindakan alarm yang terlewat atau tertunda. Runbook ini menyediakan pendekatan terstruktur untuk menyelidiki dan menyelesaikan masalah terkait Amazon CloudWatch (CloudWatch) Alarm.

Bagaimana cara kerjanya?

Runbook AWSSupport-TroubleshootCloudWatchAlarm melakukan langkah-langkah berikut:

  • Memverifikasi detail alarm Amazon CloudWatch (CloudWatch) dan nilai AlarmTriggerTimestamp parameter untuk memeriksa apakah itu dalam 2.592.000 detik (30 hari).

  • Memeriksa apakah alarm didasarkan pada Matematika Metrik atau Metrik atau merupakan Alarm Detektor Anomali.

  • Memeriksa apakah alarm dalam sate data tidak mencukupi.

  • Memeriksa apakah metrik yang digunakan dalam alarm cocok dengan ListMetrics nilai.

  • Memverifikasi apakah metrik tidak memiliki titik data pada stempel waktu tertentu.

  • Mendapat sejarah terbaru untuk stempel waktu tertentu.

  • Memeriksa apakah alarm tidak terpicu karena metrik yang tertunda atau tidak terjawab.

  • Memeriksa apakah tindakan yang diaktifkan alarm was/were dikirimkan.

  • Menghasilkan laporan pemecahan masalah yang menggabungkan semua hasil diagnostik.

Jalankan Otomasi ini (konsol)

Jenis dokumen

Otomatisasi

Pemilik

Amazon

Platform

Linux,macOS, Windows

Parameter

Izin IAM yang diperlukan

AutomationAssumeRoleParameter memerlukan tindakan berikut untuk menggunakan runbook dengan sukses.

  • cloudwatch:DescribeAlarms

  • cloudwatch:DescribeAlarmHistory

  • cloudwatch:DescribeAnomalyDetectors

  • cloudwatch:GetMetricData

  • cloudwatch:GetMetricStatistics

  • cloudwatch:ListMetrics

{ "Version": "2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Action": [ "cloudwatch:DescribeAlarms", "cloudwatch:DescribeAlarmHistory", "cloudwatch:DescribeAnomalyDetectors", "cloudwatch:GetMetricData", "cloudwatch:GetMetricStatistics", "cloudwatch:ListMetrics" ], "Resource": "*" } ] }

Instruksi

Ikuti langkah-langkah ini untuk mengonfigurasi otomatisasi:

  1. Arahkan ke AWSSupport-TroubleshootCloudWatchAlarmSystems Manager di bawah Documents.

  2. Pilih Jalankan otomatisasi.

  3. Untuk parameter input, masukkan yang berikut ini:

    • AutomationAssumeRole (Opsional):

      • Tipe: String

      • Deskripsi: (Opsional) Nama Sumber Daya Amazon (ARN) peran AWS AWS Identity and Access Management (IAM) yang memungkinkan Otomasi Systems Manager untuk melakukan tindakan atas nama Anda. Jika tidak ada peran yang ditentukan, Systems Manager Automation menggunakan izin pengguna yang memulai runbook ini.

    • CloudWatchMetricAlarmName (Diperlukan):

      • Tipe: String

      • Deskripsi: (Wajib) Nama Alarm metrik Amazon CloudWatch (CloudWatch) untuk memecahkan masalah.

      • Pola yang Diizinkan: ^[a-zA-Z0-9.:;,\\-_&() ]{1,255}$

    • AlarmTriggerTimestamp (Diperlukan):

      • Tipe: String

      • Deskripsi: (Wajib) Stempel waktu UTC saat masalah Alarm terjadi. Informasi ini sangat penting untuk memecahkan masalah dan memahami konteks di mana hal itu terjadi. Nilai stempel waktu harus berupa waktu dalam 30 hari terakhir dari hari ini dan dalam format. YYYY-MM-DDTHH:mm:ssZ Contoh: 2024-10-29T09:04:00Z

      • Pola yang Diizinkan: ^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})Z$

  4. Pilih Jalankan.

  5. Otomatisasi dimulai.

  6. Dokumen melakukan langkah-langkah berikut:

    • VerifyRunbookInputs

      Memverifikasi detail alarm Amazon CloudWatch (CloudWatch) dan nilai AlarmTriggerTimestamp parameter untuk memeriksa apakah itu dalam 2.592.000 detik (30 hari).

    • UpdateSSMDocumentInputChecksVariable

      Memperbarui variabel SSMDocumentInputChecks dengan nilai SSMDocumentInputChecks dari VerifyRunbookInputs langkah.

    • BranchOnAlarmIsVerified

      Cabang pada verifikasi AlarmTriggerTimestamp input Runbook dan. CloudWatchAlarmName

    • CheckMetricAlarmType

      Memeriksa apakah alarm didasarkan pada Matematika Metrik atau Metrik atau merupakan Alarm Detektor Anomali.

    • CheckAlarmInInsufficientDataState

      Memeriksa apakah alarm dalam sate data tidak mencukupi.

    • UpdateInsufficientDataChecksVariable

      Memperbarui variabel InsufficientDataChecks dengan nilai InsufficientDataChecks dari CheckAlarmInInsufficientDataState langkah.

    • BranchOnAlarmHasInsufficientData

      Cabang pada AlarmHasInsufficientData nilai dari CheckAlarmInInsufficientDataState langkah, langkah defaultnya adalahCheckMetricMismatch.

    • CheckMetricMismatch

      Memeriksa apakah metrik yang digunakan dalam alarm cocok dengan ListMetrics nilai.

    • UpdateMetricMismatchChecksVariable

      Memperbarui variabel MetricMismatchChecks dengan nilai MetricMismatchChecks dari CheckMetricMismatch langkah.

    • BranchOnMetricsMatched

      Cabang pada MetricsMatched nilai dari CheckMetricMismatch langkah, langkah defaultnya adalahCheckMissingDatapoint.

    • CheckMissingDatapoint

      Memverifikasi apakah metrik tidak memiliki titik data pada stempel waktu tertentu.

    • UpdateMetricMissingDatapointsChecksVariable

      Memperbarui variabel MetricMissingDatapointsChecks dengan nilai MetricMissingDatapointsChecks dari CheckMissingDatapoint langkah.

    • BranchOnMetricMissingDatapoint

      Cabang pada MetricMissingDatapoint nilai dari CheckMissingDatapoint langkah, langkah defaultnya adalahGetAlarmHistoryDetails.

    • GetAlarmHistoryDetails

      Mendapat sejarah terbaru untuk stempel waktu tertentu.

    • UpdateAlarmHistoryChecksVariable

      Memperbarui variabel AlarmHistoryChecks dengan nilai AlarmHistoryChecks dari GetAlarmHistoryDetails langkah.

    • BranchOnAlarmHistoryFound

      Cabang pada AlarmHistoryFound nilai dari GetAlarmHistoryDetails langkah, langkah defaultnya adalahCheckDelayedMetric.

    • CheckDelayedMetric

      Memeriksa apakah alarm tidak terpicu karena metrik yang tertunda atau tidak terjawab.

    • UpdateDelayedMetricChecksVariable

      Memperbarui variabel DelayedMetricChecks dengan nilai DelayedMetricChecks dari CheckDelayedMetric langkah.

    • BranchOnMetricDelayedAndDatapointsMeetThreshold

      Cabang pada MetricDelayed dan DatapointsMeetThreshold nilai dari CheckDelayedMetric langkah, langkah defaultnya adalahGenerateReport.

    • CheckActionDelivered

      Memeriksa apakah tindakan yang diaktifkan alarm was/were dikirimkan.

    • UpdateActionDeliveredChecksVariable

      Memperbarui variabel ActionDeliveredChecks dengan output ActionDeliveredChecks dari CheckActionDelivered langkah.

    • GenerateReport

      Mengkompilasi output dari langkah-langkah sebelumnya dan mengeluarkan laporan.

  7. Setelah eksekusi selesai, tinjau bagian Output untuk hasil eksekusi yang terperinci:

    • GenerateReport.Laporkan

      Laporan Alarm metrik Amazon CloudWatch (CloudWatch) yang disediakan.

                    ------------------------------------------------------------------------------------------
                    |                     AWS CloudWatch Alarm Troubleshooting Results                       |
                    ------------------------------------------------------------------------------------------
                    |     Alarm Name                        -               Demo-Alarm                       |
                    |     Timestamp                         -               2025-03-04T06:31:00Z             |
                    ------------------------------------------------------------------------------------------
                    |     ✅ No Issue(s) Found                                                               |
                    ------------------------------------------------------------------------------------------
    
    
    
                    ==========================================================================================
                    1. Validating SSM Document input parameters:
                    ==========================================================================================
                    ✅ [PASSED]: Found a metric alarm with name Demo-Alarm
    
    
                    ==========================================================================================
                    2. Checking alarm's data state:
                    ==========================================================================================
                    ✅ [PASSED]: The alarm is not in INSUFFICIENT_DATA state, alarm's state is: ALARM
    
    
                    ==========================================================================================
                    3. Checking if the alarm experienced metric mismatches:
                    ==========================================================================================
                    ✅ [PASSED]: Metric matches with the configured metric for Alarm.
    
    
                    ==========================================================================================
                    4. Checking if the alarm's metric(s) experienced missing datapoint(s):
                    ==========================================================================================
                    ✅ [PASSED]: Metric has datapoints
    
    
                    ==========================================================================================
                    5. Retrieving alarm's history for timestamp 2025-03-04T06:31:00Z:
                    ==========================================================================================
                    ✅ [PASSED]: Found most recent alarm history item for the provided timestamp: '2025-03-04T06:31:00Z'
    
    
                    ==========================================================================================
                    6. Checking if the alarm experienced metric delays or the alarm's datapoint(s) did not meet the configured threshold:
                    ==========================================================================================
                    ✅ [PASSED]: CloudWatch alarm did not experience any delayed metric
    
    
                    ==========================================================================================
                    7. Checking if the alarm has actions enabled and if action(s) were delivered:
                    ==========================================================================================
                    ✅ [PASSED]: Successfully executed action arn:aws:sns:us-east-1:12345678910:Demo_Alarms_Topic
    
    
                    ------------------------------------------------------------------------------------------
    
                    ✅ All the checks have passed for CloudWatch alarm, Demo-Alarm, the alarm's configuration is correct.
                

Referensi

Otomatisasi Systems Manager