aws-ecs-monitor

🚢 AWS ECS 生产级健康监控专家

🥥66总安装量 15评分人数 21
100% 的用户推荐

基于 AWS 官方 CLI 的只读监控工具,为 ECS 生产环境提供健康检查、日志分析与自动诊断,零侵入保障服务稳定性。

A

基本安全,请在特定环境下使用

  • 来自可信来源(Github / Microsoft / 官方仓库)
  • ✅ 全只读操作设计,所有 AWS API 均为 List/Describe/Filter 查询,零资源修改风险
  • ✅ 无命令注入漏洞,严格避免 eval 与反引号,用户输入经 resolve_services 函数验证
  • ✅ 标准工具链依赖,无远程代码下载或第三方网络调用,供应链攻击面极小
  • ✅ 敏感数据零持久化,AWS 凭证由 CLI 标准配置管理,临时文件通过 trap 自动清理
  • ⚠️ 需关注输出目录权限,建议配置专用目录避免敏感日志片段意外滞留

使用说明

核心用法

AWS ECS Monitor 是一套面向生产环境的 Shell 脚本工具集,通过两个核心脚本实现全链路监控::ecs-health.sh 执行多维健康检查(HTTP 探针、ECS 服务状态、ALB 目标组、SSL 证书有效期),cloudwatch-logs.sh 提供深度日志分析(错误分类、容器重启检测、自动诊断)。用户通过环境变量完成零代码配置,支持服务自动发现与自定义日志组模式,两者可独立运行或联动触发。

显著优点

只读安全设计:所有 AWS API 调用均为查询操作(List/Describe/Filter),从根本上杜绝误操作风险。智能错误分类:内置 11 类错误模式识别(panic、OOM、timeout、5xx 等),自动过滤健康检查噪音。零依赖部署:仅依赖系统标准工具(aws、curl、python3、openssl),无需额外安装包。灵活集成:JSON 输出、退出码设计、共享目录机制,完美适配 CI/CD 与告警系统。

潜在缺点与局限性

Shell 脚本维护性:复杂逻辑(如 JSON 处理)依赖 Python 辅助,跨平台兼容性受限。AWS 生态绑定:深度耦合 ECS/CloudWatch/ALB,多云或混合架构需额外改造。实时性瓶颈:CloudWatch Logs 本身存在分钟级延迟,紧急故障场景下可能不够及时。权限前置成本:需预先配置 6 项 IAM 权限,对安全管控严格的组织存在审批摩擦。

适合的目标群体

  • SRE/运维工程师:需要低成本、可审计的生产监控方案
  • 中小团队:缺乏预算购买 Datadog/New Relic 等商业 APM
  • AWS 原生架构:已全面采用 ECS Fargate/EC2 容器服务的技术栈
  • 合规敏感行业:要求监控工具只读、可代码审计的金融/医疗场景

使用风险

性能风险:大规模集群(100+ 服务)的日志拉取可能触发 AWS API 限流,建议配合 --limit--minutes 参数控制范围。依赖风险:aws CLI 版本差异可能导致输出格式不兼容,建议锁定 v2 版本。数据滞留:临时文件虽通过 trap 清理,但异常中断时可能残留敏感日志片段,需定期清理输出目录。网络分区:健康检查依赖域名解析,内网隔离环境需确保 DNS 与 AWS 终端节点可达。

aws-ecs-monitor 内容

文件夹图标scripts文件夹
手动下载zip · 12.5 kB
cloudwatch-logs.shtext/x-shellscript
请选择文件