【发布时间】:2019-01-16 16:43:48
【问题描述】:
我在 ECS 中有一个运行 tomcat 的任务。该 tomcat 部署了 2 或 3 个应用程序。我知道这不是一个理想的情况,但这就是我们所拥有的。使用 Log4j,应用程序的日志转到 tomcat 的 logs 文件夹下的不同日志文件。有没有一种方法可以将这些不同的日志文件从我的 docker 容器保存到不同流下的 CloudWatch?我知道如果我使用 log4j appender 将日志写入标准输出,我可以很容易地将它们放在 cloudwatch 中,但它们不会分开,它将从所有应用程序的日志集中到一个地方。
非常感谢
【问题讨论】:
-
您可以在您的 docker 镜像上安装 Cloudwatch 代理并为它们设置 cron 作业,以便定期将每个日志文件记录到不同的日志组。
-
如果您将 log4j 用于所有 webapp 进行日志记录,您可以考虑使用 log4j cloudwatch appender 将日志推送到 cloudwatch。那里有很多。 dzone.com/articles/announcing-log4j-aws-appendersgithub.com/sensefly-sa/log4j-cloudwatch-appendergithub.com/speedwing/log4j-cloudwatch-appender
标签: amazon-cloudwatch amazon-cloudwatchlogs