Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Menggunakan Tindakan Alarm di CloudWatch
Dengan menggunakan tindakan CloudWatch alarm, Anda dapat membuat alarm yang melakukan tindakan seperti menghentikan, menghentikan, me-reboot, atau memulihkan instans Amazon secara otomatis. EC2
Tindakan alarm dapat ditambahkan ke alarm dengan menggunakan SetAlarmActions
fungsi saat membuat alarm. PutMetricAlarmRequest
Prasyarat
Sebelum Anda mulai, kami sarankan Anda membaca Memulai menggunakan AWS SDK untuk C++.
Unduh kode contoh dan buat solusinya seperti yang dijelaskan dalamMemulai contoh kode.
Untuk menjalankan contoh, profil pengguna yang digunakan kode Anda untuk membuat permintaan harus memiliki izin yang tepat AWS (untuk layanan dan tindakan). Untuk informasi selengkapnya, lihat Menyediakan AWS kredensi.
Aktifkan Tindakan Alarm
Untuk mengaktifkan tindakan alarm untuk CloudWatch alarm, panggil CloudWatchClient's EnableAlarmActions
dengan EnableAlarmActionsRequestberisi satu atau beberapa nama alarm yang tindakannya ingin Anda aktifkan.
Termasuk
#include <aws/core/Aws.h> #include <aws/monitoring/CloudWatchClient.h> #include <aws/monitoring/model/EnableAlarmActionsRequest.h> #include <aws/monitoring/model/PutMetricAlarmRequest.h> #include <iostream>
Kode
Aws::CloudWatch::CloudWatchClient cw; Aws::CloudWatch::Model::PutMetricAlarmRequest request; request.SetAlarmName(alarm_name); request.SetComparisonOperator( Aws::CloudWatch::Model::ComparisonOperator::GreaterThanThreshold); request.SetEvaluationPeriods(1); request.SetMetricName("CPUUtilization"); request.SetNamespace("AWS/EC2"); request.SetPeriod(60); request.SetStatistic(Aws::CloudWatch::Model::Statistic::Average); request.SetThreshold(70.0); request.SetActionsEnabled(false); request.SetAlarmDescription("Alarm when server CPU exceeds 70%"); request.SetUnit(Aws::CloudWatch::Model::StandardUnit::Seconds); request.AddAlarmActions(actionArn); Aws::CloudWatch::Model::Dimension dimension; dimension.SetName("InstanceId"); dimension.SetValue(instanceId); request.AddDimensions(dimension); auto outcome = cw.PutMetricAlarm(request); if (!outcome.IsSuccess()) { std::cout << "Failed to create CloudWatch alarm:" << outcome.GetError().GetMessage() << std::endl; return; } Aws::CloudWatch::Model::EnableAlarmActionsRequest enable_request; enable_request.AddAlarmNames(alarm_name); auto enable_outcome = cw.EnableAlarmActions(enable_request); if (!enable_outcome.IsSuccess()) { std::cout << "Failed to enable alarm actions:" << enable_outcome.GetError().GetMessage() << std::endl; return; } std::cout << "Successfully created alarm " << alarm_name << " and enabled actions on it." << std::endl;
Lihat contoh lengkapnya
Nonaktifkan Tindakan Alarm
Untuk menonaktifkan tindakan alarm untuk CloudWatch alarm, hubungi CloudWatchClient's DisableAlarmActions
dengan DisableAlarmActionsRequestberisi satu atau beberapa nama alarm yang tindakannya ingin Anda nonaktifkan.
Termasuk
#include <aws/core/Aws.h> #include <aws/monitoring/CloudWatchClient.h> #include <aws/monitoring/model/DisableAlarmActionsRequest.h> #include <iostream>
Kode
Aws::CloudWatch::CloudWatchClient cw; Aws::CloudWatch::Model::DisableAlarmActionsRequest disableAlarmActionsRequest; disableAlarmActionsRequest.AddAlarmNames(alarm_name); auto disableAlarmActionsOutcome = cw.DisableAlarmActions(disableAlarmActionsRequest); if (!disableAlarmActionsOutcome.IsSuccess()) { std::cout << "Failed to disable actions for alarm " << alarm_name << ": " << disableAlarmActionsOutcome.GetError().GetMessage() << std::endl; } else { std::cout << "Successfully disabled actions for alarm " << alarm_name << std::endl; }
Lihat contoh lengkapnya
Informasi Selengkapnya
-
Membuat Alarm untuk Menghentikan, Menghentikan, Memulai Ulang, atau Memulihkan Instance di Panduan Pengguna Amazon CloudWatch
-
PutMetricAlarmdi Referensi CloudWatch API Amazon
-
EnableAlarmActionsdi Referensi CloudWatch API Amazon
-
DisableAlarmActionsdi Referensi CloudWatch API Amazon