要解决"AWS CloudWatch告警未触发SQS指标“NumberOfMessagesReceived”"的问题,可以按照以下步骤进行操作:
aws cloudwatch put-metric-alarm \
--alarm-name MySQSAlarm \
--comparison-operator GreaterThanThreshold \
--evaluation-periods 1 \
--metric-name NumberOfMessagesReceived \
--namespace AWS/SQS \
--period 60 \
--statistic Maximum \
--threshold 10 \
--alarm-actions arn:aws:sns:us-east-1:123456789012:MyTopic \
--dimensions Name=QueueName,Value=MySQSQueue
请根据实际情况修改命令中的参数值。
aws sqs send-message \
--queue-url https://sqs.us-east-1.amazonaws.com/123456789012/MySQSQueue \
--message-body "Hello, World!"
请根据实际情况修改命令中的参数值。
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "CloudWatchPermissions",
"Effect": "Allow",
"Action": [
"cloudwatch:PutMetricAlarm",
"cloudwatch:DescribeAlarms",
"cloudwatch:GetMetricStatistics"
],
"Resource": "*"
},
{
"Sid": "SQSPermissions",
"Effect": "Allow",
"Action": [
"sqs:GetQueueAttributes",
"sqs:GetQueueUrl",
"sqs:SendMessage"
],
"Resource": "arn:aws:sqs:us-east-1:123456789012:MySQSQueue"
}
]
}
请根据实际情况修改策略中的资源和操作。
通过执行上述步骤,您应该能够解决"AWS CloudWatch告警未触发SQS指标“NumberOfMessagesReceived”"的问题,并确保正确配置了告警规则、发送了消息到SQS队列并具有适当的IAM权限。