You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS ECS Fargate任务停止次数统计:CloudWatch查询及最佳实践

ECS Fargate任务停止统计方案

关于STOPPED任务日志的说明

ECS Container Insights的/aws/ecs/containerinsights/{my-cluster-name}/performance日志组不会持续保留STOPPED状态任务的日志,该日志组仅采集运行中(RUNNING/PENDING)任务的性能指标与状态快照。任务转为STOPPED后,不会再向此日志组写入数据,这是你之前查询无结果的原因。

CloudWatch Logs Insights 查询示例

若要统计停止任务,需结合EventBridge捕获的任务停止事件(写入专属日志组)或容器应用日志,以下是基于EventBridge事件日志的查询示例:

1. 统计任务停止次数

假设已将ECS STOPPED事件写入日志组/aws/events/ecs-task-stopped,使用以下查询:

fields detail.taskArn, detail.stopCode, detail.stoppedReason, @timestamp
| filter detail.group = "service:my-first-service" and detail.lastStatus = "STOPPED"
| stats count() as stopCount by detail.taskArn
| sort stopCount desc

2. 统计任务内每个容器停止/崩溃次数

若任务包含多个容器,可展开容器列表统计:

fields detail.taskArn, container.name, detail.stopCode, @timestamp
| filter detail.group = "service:my-first-service" and detail.lastStatus = "STOPPED"
| mv-expand detail.containers as container
| stats count() as containerStopCount by detail.taskArn, container.name
| sort containerStopCount desc

注:若需仅统计容器崩溃导致的停止,可添加filter detail.stopCode = "EssentialContainerExited"条件。

EventBridge实现任务停止监控的最佳实践

  1. 创建EventBridge规则

    • 规则类型选「事件模式」,事件源选ECS,事件类型选ECS Task State Change
    • 设置事件模式匹配条件(仅捕获目标服务的Fargate任务停止事件):
      {
        "source": ["aws.ecs"],
        "detail-type": ["ECS Task State Change"],
        "detail": {
          "lastStatus": ["STOPPED"],
          "group": ["service:my-first-service"],
          "launchType": ["FARGATE"]
        }
      }
      
  2. 绑定CloudWatch日志组目标

    • 选择「CloudWatch日志组」,新建或指定现有日志组(如/aws/events/ecs-task-stopped),所有符合条件的停止事件会自动写入该日志组,供后续查询统计。
  3. 精准过滤停止原因

    • 若仅关注容器崩溃导致的任务停止,可在事件模式中添加"stopCode": ["EssentialContainerExited"],排除用户主动停止(UserInitiated)等非异常场景。
  4. 配置告警(可选)

    • 基于CloudWatch日志指标过滤器,对停止次数设置阈值告警(如5分钟内停止次数超过3次触发告警),及时感知异常。

内容的提问来源于stack exchange,提问作者devok

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.18 21:50:27