Fargate 的 CloudWatch 单一日志流

CloudWatch single Log Stream for Fargate

我有一个 ECS Fargate 应用程序,它使用 awslog 驱动程序将日志保存在 cloudwatch 中。

日志记录工作得很好,唯一烦人的是每个容器创建一个不同的日志流,其名称如文档中所述 here

prefix-name/container-name/ecs-task-id

我大量使用自动缩放功能,创建了很多任务,这些任务反过来又产生了很多日志流。

我想知道是否可以将所有日志都放入同一个日志流中,这对我有很大帮助,但看起来不可能现成。我怎样才能实现我的目标?

这不是您的用例的解决方案,但您可以使用的解决方法是只搜索您的日志组,而不是进入您的任务 ID。您还可以在日志组上使用范围查询,这样最终会提供与进入每个任务 ID 的特定日志流几乎相同的内容。日志组中日志的每一行也有一个 link 到任务特定的日志流。

您可以尝试做的另一件事是使用弹性搜索来维护您的日志。在弹性搜索上查询非常容易(它内置了 kibana,这是一个非常强大的现成过滤工具。