iOS私密网关
自建WebSocke
该技能用于监控AWS ECS生产环境的运行状态,结合CloudWatch日志进行深度分析。通过HTTP探针、服务状态检查、ALB目标组健康度检测以及SSL证书到期提醒,帮助运维人员及时发现并定位问题。
运维团队需要实时掌握AWS ECS生产环境的健康状态。该技能整合HTTP探测、服务实例比对、ALB目标组检查及SSL证书监控,自动拉取CloudWatch日志并智能归类错误,过滤健康检查噪音,帮助快速定位容器异常和重启事件,降低故障排查时间。
落地案例:某电商平台使用本技能监控其核心交易服务。配置后,系统自动对支付网关域名执行HTTP探测,对比订单服务的期望与实际运行实例数,检查ALB目标组健康状态,同时监控API网关SSL证书有效期。当检测到容器频繁重启时,自动触发日志诊断,从CloudWatch拉取相关日志并按错误类型分类,运维人员可直接查看结构化报告定位根因。
安装要求
需预先安装以下工具:
IAM权限需包含:ecs:ListServices、ecs:DescribeServices、elasticloadbalancing:DescribeTargetGroups、elasticloadbalancing:DescribeTargetHealth、logs:FilterLogEvents、logs:DescribeLogGroups。
配置方式
通过环境变量完成配置:
运行脚本
健康监控脚本:
ECS_CLUSTER=my-cluster ECS_DOMAIN=example.com ./scripts/ecs-health.sh
日志分析脚本:
# 拉取指定服务日志 ECS_CLUSTER=my-cluster ./scripts/cloudwatch-logs.sh pull my-api --minutes 30 # 查看所有服务错误 ECS_CLUSTER=my-cluster ./scripts/cloudwatch-logs.sh errors all --minutes 120 # 深度诊断 ECS_CLUSTER=my-cluster ./scripts/cloudwatch-logs.sh diagnose --minutes 60 # 检测容器重启 ECS_CLUSTER=my-cluster ./scripts/cloudwatch-logs.sh restarts my-api # 根据健康状态自动诊断 ECS_CLUSTER=my-cluster ./scripts/cloudwatch-logs.sh auto-diagnose
见下方输入与输出表格。
| 项目 | 内容 |
|---|---|
| 输入 | ECS_CLUSTER(集群名称)、ECS_REGION(AWS区域)、ECS_DOMAIN(检查域名)、ECS_SERVICES(服务列表)、ECS_HEALTH_STATE(状态文件路径)、ECS_HEALTH_OUTDIR(输出目录)、ECS_LOG_PATTERN(日志组模式)、ECS_HTTP_ENDPOINTS(HTTP探测端点) |
| 输出 | 健康状态JSON文件、日志分析报告、错误分类统计、容器重启记录、告警通知 |
| 适用人群 | AWS ECS运维人员、SRE工程师、DevOps团队、云平台管理员、生产环境监控负责人 |
| 不包含 | 自动修复故障功能、非ECS资源的监控、历史数据长期存储、可视化仪表盘、多账号统一管理 |
原始链接:https://github.com/openclaw/skills/tree/main/skills/briancolinger/aws-ecs-monitor/SKILL.md
来源类型:GitHub仓库