2

我最近一直在升级到 Amazon linux 2,现在我正在尝试使用 web.stdout 日志调试我的节点应用程序。我以前看过它们,现在没有显示它们。我可以按预期卷曲我的节点应用程序,所以我知道它必须运行。

我试图重新启动我的amazon-cloudwatch-agent,因为那是用于记录的内容,我重新部署了我的 beanstalk 应用程序,但它仍然没有显示它们。我不确定为什么会这样。

4

1 回答 1

1

嗯...我正在使用 Procfile 来处理我的npm run start:prod命令,并且在我使用的 Procfile 中,我使用了不同的 process_name。我需要启动我的节点应用程序以使其记录到 web.stdout 日志的正确方法是让它像这样设置......

<process_name1>: <command1>
web: npm run start:prod

在阅读此处web:的文档之前,我没有看到任何明确说明命名启动命令的内容,

“Elastic Beanstalk 在日志文件中捕获来自 Procfile 进程的标准输出和错误流。Elastic Beanstalk 在进程后命名日志文件并将它们存储在 /var/log 中。例如,前面示例中的 Web 进程生成名为 web-1 的日志.log 和 web-1.error.log 分别用于 stdout 和 stderr。”

一旦我将我的更改process_name1web,我开始再次在 web.stdout 日志中看到日志。

+1 让一位乐于助人的同事问我为什么不点名web

于 2020-08-26T21:22:29.403 回答