我已阅读ECS 监控文档,但没有找到如何通过 CloudWatch Events 或 Metrics 帮助对ECS 任务内存限制命中发出警报。我的情况是,当 ECS 容器打破默认任务硬限制 512 Mb 并重新启动时。CloudWatch 事件触发ECS 任务状态更改,例如从 RUNNING 到 STOPPED,但在事件详细信息中,"stoppedReason"
您可能只会发现“Task failed ELB health checks in ...”,尽管我绝对知道实际原因是内存限制中断和容器谋杀码头工人方面。这是事件规则模式:
{
"source": [
"aws.ecs"
],
"detail-type": [
"ECS Task State Change"
],
"detail": {
"lastStatus": [
"STOPPED"
]
}
}
MemoryUtilization
维度的CloudWatch指标ServiceName
也没有多大帮助,因为触发警报的最短时间段(范围)是 1 分钟,但容器终止-重启周期运行得更快。赶上尖峰的时间还不够。我想这与ClusterName
维度相关(换句话说,对于整个集群)。
我想知道如何获得有关任务(容器、容器实例)硬内存限制中断的通知?