【问题标题】:Logback with Elastic Beanstalk使用 Elastic Beanstalk 进行日志回溯
【发布时间】:2021-03-10 13:51:45
【问题描述】:

我在使用 Elastic Beanstalk 记录应用程序日志时遇到问题。我在 AWS Elastic Beanstalk 上运行 spring mvc(不是 springboot)WAR 文件,该文件位于“Tomcat 8.5,Corretto 11 在 64 位 Amazon Linux 2/4.1.3”环境中运行。

以前我认为问题在于我无法检索应用程序写入的日志。但是,在遵循此问题 (AWS Elastic Beanstalk Application Logging with Logback) 中的建议后,我能够确定查看日志没有问题 - 实际问题是甚至没有写入日志。我 ssh 到实例并且日志文件没有在 /var/log 目录中创建

作为参考,这是我的 logback 文件 appender(链接问题中的完整 logback.xml):

<appender name="APPLOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>/var/log/java.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <FileNamePattern>/var/log/java_%d{yyyy-MM-dd}_%i.log</FileNamePattern>
            <!-- keep 14 days' worth of history -->
            <maxHistory>14</maxHistory>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <!-- or whenever the File size reaches 10MB -->
                <maxFileSize>10MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
        </rollingPolicy>
        <encoder>
            <pattern>%d{yyyy-MM-dd'T'HH:mm:ss.SSSZ} [%thread][%X{remoteHost}] %-5level %c{1} - %msg%n</pattern>
            <!-- <pattern>%d %-5p %c{1} - %m%n</pattern> -->
        </encoder>
    </appender>

该应用正在使用 slf4j-api-1.7.6、logback-classic-1.2.3 和 logback-core-1.2.3。在本地 Tomcat 服务器上加载相同的战争时,应用程序日志按预期工作。

所以现在我想知道 (1) logback 是否适用于 Elastic Beanstalk? (2) 如果是,是否需要一些特殊的东西(权限?,其他依赖项)才能将日志写入/var/logs 目录?

【问题讨论】:

  • 默认情况下,您的应用程序无权访问/var/logs。这可以解释为什么没有日志。将日志存储在您的应用文件夹中并设置 EB 以监控该文件夹。
  • 你是对的!这是权限。最后我可以看到应用程序日志。我把它放在 /var/log/tomcat 文件夹而不是 app 文件夹中,这样我就不必添加任何新配置来监视新文件夹。谢谢您的帮助。你能发布一个答案以便我接受吗?它也可能对其他人有所帮助。
  • 很高兴它成功了:-) 添加了答案。

标签: java amazon-web-services tomcat amazon-elastic-beanstalk logback


【解决方案1】:

基于 cmets。

问题是由权限引起的。默认情况下,EB 上的用户应用程序无权访问 /var/logs

解决办法是修改权限,让日志可以放在/var/log/tomcat

【讨论】:

    猜你喜欢
    • 2015-12-14
    • 2015-02-17
    • 2021-03-22
    • 2021-03-09
    • 1970-01-01
    • 2019-02-11
    • 2015-01-14
    • 2017-04-04
    • 2021-07-29
    相关资源
    最近更新 更多