本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
建立 CloudWatch 鬧鐘
CloudWatch 警示會監視指定期間內的單一量度,並根據一段時間內相對於臨界值的指標值,執行一或多個指定的動作。此動作是傳送到 Amazon SNS 主題或 Auto Scaling 政策的通知。您也可以將警示新增至儀表板,以便在多個地區監視和接收有關資 AWS 源和應用程式的警示。您可以建立的警報數量沒有限制。 CloudWatch 警示不會僅因為處於特定狀態而叫用動作;狀態必須已變更並維持指定數目的期間。如需建議的 DynamoDB 警示清單,請參閱建議的警示。
注意
建立 CloudWatch 警示時,您必須指定所有必要的維度,因為不 CloudWatch 會彙總遺失維度的量度。建立 CloudWatch警示時,建立遺失尺寸的警示不會導致錯誤。
假設您有一個佈建的表格,其中包含五個讀取容量單位。您希望在耗用整個佈建的讀取容量之前收到通知,因此您決定建立 CloudWatch 警示,以便在耗用的容量達到您為表格佈建的 80% 時收到通知。您可以在 CloudWatch 主控台中建立警報,也可以使用 AWS CLI.
在 CloudWatch 控制台中創建警報
在 CloudWatch 主控台中建立鬧鐘
請登入 AWS Management Console 並開啟 CloudWatch 主控台,網址為 https://console.aws.amazon.com/cloudwatch/
。 -
在導覽窗格中,選擇 Alarms (警示)、All alarms (所有警示)。
-
選擇 Create alarm (建立警示)。
-
ConsumeReadCapacityUnits
在「測量結果名稱」資料欄中尋找含有您要監督之表格的資料列。選取此資料列旁的核取方塊,然後選擇「選取測量結果」。 -
在「指定量度和條件」下,選擇「總和」做為統計值。選擇一個 1 分鐘的時間段。
-
在 Conditions (條件) 下,指定以下內容:
-
對於閾值類型,選擇靜態。
-
對於「無論何
ConsumedReadCapacityUnits
時」,選擇「大於/等於」,並將臨界值指定為 240。
-
-
選擇下一步。
-
在 [通知] 下,選擇
In alarm
並選取警示ALARM
處於狀態時通知的 SNS 主題。 -
完成時,請選擇下一步。
-
輸入警示的名稱和說明,然後選擇 Next (下一步)。
-
在 Preview and create (預覽及建立) 下,請確認資訊和條件都是您希望的內容,然後選擇 Create alarm (建立警示)。
在中建立警示 AWS CLI
aws cloudwatch put-metric-alarm \ -\-alarm-name ReadCapacityUnitsLimitAlarm \ -\-alarm-description "Alarm when read capacity reaches 80% of my provisioned read capacity" \ -\-namespace AWS/DynamoDB \ -\-metric-name ConsumedReadCapacityUnits \ -\-dimensions Name=TableName,Value=myTable \ -\-statistic Sum \ -\-threshold 240 \ -\-comparison-operator GreaterThanOrEqualToThreshold \ -\-period 60 \ -\-evaluation-periods 1 \ -\-alarm-actions arn:aws:sns:us-east-1:123456789012:capacity-alarm
測試警示。
aws cloudwatch set-alarm-state -\-alarm-name ReadCapacityUnitsLimitAlarm -\-state-reason "initializing" -\-state-value OK
aws cloudwatch set-alarm-state -\-alarm-name ReadCapacityUnitsLimitAlarm -\-state-reason "initializing" -\-state-value ALARM
更多 AWS CLI 範例
下列程序說明如果您的要求超過表格的佈建完成配額,系統會如何收到通知。
創建一個 Amazon SNS 主題
arn:aws:sns:us-east-1:123456789012:requests-exceeding-throughput
。如需詳細資訊,請參閱設定 Amazon Simple Notification Service。-
建立警示。
aws cloudwatch put-metric-alarm \ -\-alarm-name ReadCapacityUnitsLimitAlarm \ -\-alarm-description "Alarm when read capacity reaches 80% of my provisioned read capacity" \ -\-namespace AWS/DynamoDB \ -\-metric-name ConsumedReadCapacityUnits \ -\-dimensions Name=TableName,Value=myTable \ -\-statistic Sum \ -\-threshold 240 \ -\-comparison-operator GreaterThanOrEqualToThreshold \ -\-period 60 \ -\-evaluation-periods 1 \ -\-alarm-actions arn:aws:sns:us-east-1:123456789012:capacity-alarm
-
測試警示。
aws cloudwatch set-alarm-state --alarm-name RequestsExceedingThroughputAlarm --state-reason "initializing" --state-value OK
aws cloudwatch set-alarm-state --alarm-name RequestsExceedingThroughputAlarm --state-reason "initializing" --state-value ALARM
下列程序說明系統錯誤時如何收到通知。
創建一個 Amazon SNS 主題
arn:aws:sns:us-east-1:123456789012:notify-on-system-errors
。如需詳細資訊,請參閱設定 Amazon Simple Notification Service。-
建立警示。
aws cloudwatch put-metric-alarm \ --alarm-name SystemErrorsAlarm \ --alarm-description "Alarm when system errors occur" \ --namespace AWS/DynamoDB \ --metric-name SystemErrors \ --dimensions Name=TableName,Value=myTable Name=Operation,Value=aDynamoDBOperation \ --statistic Sum \ --threshold 0 \ --comparison-operator GreaterThanThreshold \ --period 60 \ --unit Count \ --evaluation-periods 1 \ --treat-missing-data breaching \ --alarm-actions arn:aws:sns:us-east-1:123456789012:notify-on-system-errors
-
測試警示。
aws cloudwatch set-alarm-state --alarm-name SystemErrorsAlarm --state-reason "initializing" --state-value OK
aws cloudwatch set-alarm-state --alarm-name SystemErrorsAlarm --state-reason "initializing" --state-value ALARM