AWS CloudWatch 使用参考

简单来说,Amazon CloudWatch 是 AWS 的全家桶级监控和观察平台。是一个用于收集、监控、分析和响应 AWS 资源及应用程序运行数据的托管服务。无论你的代码运行在虚拟机(EC2)、容器(ECS/EKS)还是无服务器环境(Lambda)中,它都能提供实时的数据洞察。

CloudWatch 的功能可以概括为以下四大支柱:

  • 指标 (Metrics)

    • 概念 :指标是反映系统性能的时间序列数据(如 CPU 利用率、磁盘读写、网络流量)。

    • AWS 指标 :大多数 AWS 服务会自动向 CloudWatch 发送免费的基础指标。

    • 自定义指标 :你可以推送自己应用的特定数据(如:每分钟下单量)。

      要查看所需服务(如 EC2)的 CloudWatch 监控指标(Metrics),只需要在 CloudWatch 控制面板中选择对应的服务即可

  • 日志 (Logs)

    • 集中化管理 :收集来自 EC2 实例、Lambda 函数、CloudTrail 或其他来源的日志文件。

    • 日志分析 (Logs Insights) :支持类 SQL 语法的快速查询,几秒钟内就能从 GB 级别的日志中找出特定的错误代码。

  • 报警 (Alarms)

    • 阈值触发 :设定一个界限(例如:CPU > 80% 持续 5 分钟),达到时触发操作。

    • 自动化响应 :报警可以发送通知(通过 SNS 邮件/短信),或者执行自动操作(如:Auto Scaling 自动增加机器,或者重启故障实例)。

      要创建报警(Alarms),在 CloudWatch 控制面板左侧点击 报警 (Alarms) -> 创建报警(Create Alarm) ,根据提示 选择指标(Select Metric) , 配置 触发条件(Conditions) , 配置 动作(Actions) 可以发送通知(Notification)或者执行脚本、自动扩容等。

  • 事件 (Events / EventBridge)

    • 状态监听 :监听 AWS 资源的状态变更。

    • 定时任务 :相当于云端的 crontab ,可以定时触发某个 Lambda 函数或脚本。

CloudWatch 默认提供了很多 Dashboard,也可以自定义自己喜欢的仪表盘(Create Dashboard)