当我的 ECS 任务进入 "pending" 状态时,我去哪里查看它们实际在做什么?

Where do I go to see what my ECS tasks are actually doing when they enter "pending" state?

我对 ECS 最大的不满是它不可观察。

我部署我的服务,我的任务进入 "pending",我祈祷。

有时我会在控制台中收到有用的错误消息,有时它们只是无限期地挂在 "pending" 中。我没有看到任何事件生成,也不知道它试图做什么或卡在哪里

我可以重新启动 ECS 服务或我以前必须做的其他 hack,但此时我想看看当任务在 "pending" 中时实际发生了什么。他们的日志在任何地方吗?

  1. 单击处于挂起状态的任务。它会告诉你 容器的单个日志状态,如果您附加了 cloud watch logs 它将向您显示有关其原因的完整日志 待处理?.

  2. 通过 SSHing 到任务的 ec2 容器实例检查 docker 容器日志 你是 运行。

直到它停止才会告诉你。

单击“运行”旁边的“已停止”,您应该会找到所有之前已挂起但已失败的任务。它应该显示这些失败的原因。