核心功能
aws-ecs-monitor 是一套面向 AWS ECS 容器编排环境的生产级监控与诊断工具集,通过 Shell 脚本组合实现轻量高效的运维洞察。
健康监控层面:ecs-health.sh 执行多维健康检查——HTTP 端点探活、ECS 服务期望 vs 实际运行实例数比对、ALB Target Group 健康状态、以及 SSL 证书有效期监控。支持 JSON 输出与静默模式,便于集成到 CI/CD 或告警系统。退出码设计(0/1/2)兼容 Nagios 等监控系统。
日志分析层面:cloudwatch-logs.sh 提供 CloudWatch Logs 的深度处理能力,包括原始日志拉取、跨服务错误聚合、自动错误分类(panic/fatal/OOM/timeout/5xx 等 12 类)、容器重启事件检测,以及智能降噪(过滤 ALB 健康检查流量)。diagnose 与 auto-diagnose 模式可根据健康状态自动触发根因分析,显著缩短 MTTR。
显著优点:零依赖部署(仅依赖 aws/curl/python3/openssl)、纯环境变量配置、自动服务发现、与 AWS IAM 原生集成、输出结构清晰易于二次开发。特别适合中小团队快速搭建监控体系,无需引入 Prometheus/Grafana 等重量级方案。
潜在局限:功能集中于 AWS 生态,多云/混合云场景支持有限;日志分析依赖 CloudWatch Logs 延迟(通常 1-2 分钟);缺乏持久化存储与历史趋势分析;高并发场景下脚本级并发控制较弱;错误模式匹配基于正则/关键词,对非结构化日志的适应性一般。
适合人群:AWS ECS 用户、SRE/DevOps 工程师、需要轻量监控方案的初创团队、已有 AWS 投资且希望降低监控复杂度的组织。
常规风险:需妥善配置 IAM 权限(最小权限原则),避免凭证泄露;SSL 检查依赖 openssl,旧版本可能存在 TLS 协议支持问题;脚本直接操作生产环境 API,建议在 staging 充分验证后再上线;健康检查频率过高可能触发 AWS API 限流。