如何将 ECS Fargate 任务中由一个进程创建的日志转发到 Cloudwatch?

0

【以下的问题经过翻译处理】 我的ECS Fargate任务定义中有以下内容,它正在启动一个容器。

"logConfiguration": {
    "logDriver": "awslogs",
    "options": {
        "awslogs-group": "my-log-group",
        "awslogs-region": "us-east-1",
        "awslogs-stream-prefix": "my-log-stream-prefix"
    }
}

我看到了Docker容器的entrypoint.sh脚本抛出的日志,但我还想发送/查看来自容器内部的/home/my-app/application.log的日志,这个文件只在容器启动后才被创建和填充。

profile picture
EXPERTE
gefragt vor 5 Monaten35 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 如果日志驱动程序是awslogs,则可以通过将输出目的地设置为“/ dev / stdout”或“/ dev / stderr”将日志输出到CloudWatch日志。 awslogs日志驱动程序将仅将Docker的STDOUT和STDERR I / O流的容器日志传递到CloudWatch Logs中。因此,请验证应用程序是否将日志发送到STDOUT和STDERR I / O流。在容器构建期间确保为应用程序设置正确的日志级别。根据您的应用程序,您可以通过环境变量或配置文件设置日志级别。

因此,如果您将“/ home / my-app / application.log”输出到“/ dev / stdout”,则可以在CloudWatch日志中查看它。

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen