2013-11-04 82 views
11

我試圖創建AWS報警以觀察SQS。如果隊列中的消息數超過1個,則表示分鐘,我想創建一個警報來觸發策略。我用這個命令來創建報警:創建時,AWS報警卡在INSUFFICIENT_DATA中

aws cloudwatch put-metric-alarm --alarm-name alarmName --metric-name ApproximateNumberOfMessagesVisible --namespace "AWS/SQS" --statistic Average --period 60 --evaluation-periods 2 --threshold 1 --comparison-operator GreaterThanOrEqualToThreshold --dimensions "Name=QueueName,Value=QueueName" "Name=AutoScalingGroupName,Value=asg-name" --alarm-actions "<arn:batch-upscale-policy>" --actions-enable 

我可以看到在AWS控制檯的警報,但它卡在INSUFFICIENT_DATA狀態。我該如何解決它?

這裏我要聽其他AWS賬戶中的隊列。可能嗎??!

回答

6

如果您還沒有運行正在輪詢隊列的進程,您所看到的情況是正常的。你必須有一些東西會運行,至少會週期性地輪詢隊列,然後不足的數據條件應該自行清除。如果隊列中沒有生產者或消費者約6小時,SQS將不會向Cloudwatch發送任何消息。

您爲Amazon SQS隊列配置的CloudWatch指標會自動收集並每五分鐘推送到CloudWatch。這些指標收集在符合CloudWatch指南的所有活動隊列上。 CloudWatch將隊列視爲活動隊列中上一個活動(即任何API調用)最多六個小時。

http://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/MonitorSQSwithCloudWatch.html