【问题标题】:Getting log files from elastic beanstalk从弹性beantalk获取日志文件
【发布时间】:2020-11-01 13:28:21
【问题描述】:

我正在弹性 beantalk 上运行一个 django 项目。如果我将 django 日志文件保存到我的 ec2 实例上的特定文件夹中,当我运行“eb logs -a”时是否也可以获取这些文件?

如果是这样,我需要将日志保存到我的实例上的哪个文件路径?

谢谢!

【问题讨论】:

  • 一般可以配置日志到s3ebeb logs 应该可以从那里拉出来

标签: amazon-web-services amazon-ec2 amazon-elastic-beanstalk


【解决方案1】:

日志的自定义一般通过.ebextensions的方式进行:

亚马逊 Linux 1 (AL1)

EB 文档仅提供有关 AL1 的信息。具体来说,您可以在两个文件中添加要由 EB 报告的自定义日志的配置:

  • /opt/elasticbeanstalk/tasks/taillogs.d/ - 用于 tail 日志
  • /opt/elasticbeanstalk/tasks/bundlelogs.d/ - 用于完整日志

文档中的链接有一个示例。但基本上,如果您的应用程序产生一些日志文件,您可以使用 .ebextensions 中的以下部分将它们全部捆绑在一起(来自文档的示例):

files: 
  "/opt/elasticbeanstalk/tasks/bundlelogs.d/applogs.conf" :
    mode: "000755"
    owner: root
    group: root
    content: |
      /var/app/current/log/*.log

/var/app/current/log/*.log 需要根据您的应用程序进行调整。

亚马逊 Linux 2 (AL2)

AL2 的日志记录配置未记录。但是根据我自己的了解,AL2 日志配置文件夹是:

  • /opt/elasticbeanstalk/config/private/logtasks/tail - 用于 tail 日志
  • /opt/elasticbeanstalk/config/private/logtasks/bundle - 用于完整日志

因此,示例可能是:

files: 
  "/opt/elasticbeanstalk/config/private/logtasks/bundle/applogs.conf" :
    mode: "000755"
    owner: root
    group: root
    content: |
      /var/app/current/log/*.log

【讨论】:

  • @JasonHoward 我很好,谢谢。如果您有问题,请在 SO 上发布。如果不是我,那么其他人会尽力提供帮助。
  • 好的,感谢您的贡献!你是这个社区的宝贵财富。
  • @JasonHoward 没问题。希望日志能够正常工作。我更难以验证它更具体到您的应用程序。
  • @JasonHoward 这是 AL1,很幸运,因为我链接的 AWS 文档涵盖了它。
  • @JasonHoward 没问题。在这些配置文件中,您指定要跟踪的日志文件是什么。因此,您可以将它们存储在 /var/app/current/log/ 中,并告诉 eb 监视所有扩展名为 *. log 的文件:/var/app/current/log/*.log,如这些示例所示。
猜你喜欢
  • 2016-10-27
  • 2023-03-11
  • 2020-06-25
  • 2021-04-25
  • 2013-01-18
  • 1970-01-01
  • 2014-12-20
  • 2015-12-10
  • 2015-05-11
相关资源
最近更新 更多