AWS RDS创建ReadLatency,WriteLatency,DBLoad,AuroraVolumeBytesLeftTotal四种指标告警

ReadLatency:连续3个5分钟读延迟20ms告警

bash 复制代码
# Alert when read latency exceeds 20ms
aws cloudwatch put-metric-alarm \
  --alarm-name "rds-mydb-read-latency-high" \
  --alarm-description "RDS read latency above 20ms" \
  --metric-name ReadLatency \
  --namespace AWS/RDS \
  --statistic Average \
  --period 300 \
  --evaluation-periods 3 \
  --threshold 0.02 \
  --comparison-operator GreaterThanThreshold \
  --dimensions Name=DBInstanceIdentifier,Value=my-database \
  --alarm-actions arn:aws:sns:us-east-1:1242436:rds-critical-alerts

WriteLatency:连续3个5分钟写延迟20ms告警

bash 复制代码
# Alert when write latency exceeds 20ms
aws cloudwatch put-metric-alarm \
  --alarm-name "rds-mydb-write-latency-high" \
  --alarm-description "RDS write latency above 20ms" \
  --metric-name WriteLatency \
  --namespace AWS/RDS \
  --statistic Average \
  --period 300 \
  --evaluation-periods 3 \
  --threshold 0.02 \
  --comparison-operator GreaterThanThreshold \
  --dimensions Name=DBInstanceIdentifier,Value=my-database \
  --alarm-actions arn:aws:sns:us-east-1:1231423523:rds-critical-alerts

DBLoad:连续3个5分钟CPU平均负载超80%告警

bash 复制代码
aws cloudwatch put-metric-alarm \
    --alarm-name "aurora-dbload-writer-high" \
    --alarm-description "DBLoad 超过 1.6 (vCPU 80%)" \
    --metric-name "DBLoad" \
    --namespace "AWS/RDS" \
    --statistic "Average" \
    --period 300 \
    --evaluation-periods 3 \
    --threshold 1.6 \
    --comparison-operator "GreaterThanThreshold" \
    --dimensions Name=DBInstanceIdentifier,Value=你的Writer实例ID

这个1.6是怎么来的。我的AWS数据库实例是db.r5.large类型,这个类型只有2个vCPU,所以2*0.8=1.6,意思CPU平均负载超80%。

AuroraVolumeBytesLeftTotal:剩余磁盘空间不足50GB告警

bash 复制代码
aws cloudwatch put-metric-alarm \
  --alarm-name "Aurora-Storage-Left-Critical-30GB" \
  --alarm-description "Aurora 剩余存储低于 50GB,紧急!" \
  --metric-name AuroraVolumeBytesLeftTotal \
  --namespace AWS/RDS \
  --statistic Average \
  --period 300 \
  --evaluation-periods 3 \
  --threshold 53687091200 \
  --comparison-operator LessThanOrEqualToThreshold \
  --dimensions Name=DBClusterIdentifier,Value=你的集群名 \
  --alarm-actions arn:aws:sns:us-west-2:123456789012:MyAlarmTopic \
  --ok-actions arn:aws:sns:us-west-2:123456789012:MyAlarmTopic \
  --treat-missing-data notBreaching

参考:

相关推荐
zxrhhm20 小时前
MySQL 8.4 LTS 数据库巡检脚本
数据库·mysql
oldking呐呐1 天前
MySQL从入门到入土 -- 2.数据库基础
后端·mysql
Bert.Cai1 天前
MySQL TRIM()函数详解
数据库·mysql
Flynt1 天前
AWS WorkMail + App Runner:服务退役时的迁移检查清单
app·aws
九皇叔叔1 天前
MySQL 8.x 隔离级别调整
数据库·mysql·事务·隔离级别
许愿OvO1 天前
MySQL 8.3.0 运维与集群架构实战
运维·mysql·架构
程序员张31 天前
MySQL创建用户且只能访问指定数据库表
mysql
阿维的博客日记1 天前
我现在能理解mvcc让读不阻塞,但是无法理解mvcc让写不阻塞??
mysql·事务·mvcc
禹凕1 天前
MYSQL——基础知识(SQL的临时表和克隆表)
sql·mysql
jvvz afqh1 天前
MySQL Workbench菜单汉化为中文
android·数据库·mysql