在生产环境中配置播放框架日志文件位置

Posted

技术标签:

【中文标题】在生产环境中配置播放框架日志文件位置【英文标题】:config play framework log file location in production 【发布时间】:2015-02-21 04:24:22 【问题描述】:

我在一个项目中使用播放框架。为了配置日志文件相关信息,我使用logback来配置。这是示例配置:

<appender name="DEBUGFILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>/usr/frank/logs/debug.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <!-- daily rollover with compression -->
        <fileNamePattern>debug-log-%dyyyy-MM-dd.gz</fileNamePattern>
        <!-- keep 1 week worth of history -->
        <maxHistory>7</maxHistory>
    </rollingPolicy>
    <encoder>
        <pattern>%date - [%level] - from %logger in %thread %message%n</pattern>
    </encoder>
</appender>

当我运行 ./activator test 之类的测试或在开发模式下运行应用程序 ./activator run 时,我可以找到在文件部分指定的位置创建的日志文件。但是当我在生产模式下运行应用程序时,比如 ./activator start,文件将不会生成。 谁能告诉我为什么?

【问题讨论】:

【参考方案1】:

在生产模式下,您必须传递参数 logger.file,如下所示。

-Dlogger.file="/usr/frank/logs/debug.log"

【讨论】:

-Dlogger.file是“指定要从文件系统加载的配置文件”,而不是设置日志写入的位置:playframework.com/documentation/2.6.x/…

以上是关于在生产环境中配置播放框架日志文件位置的主要内容,如果未能解决你的问题,请参考以下文章

SpringBoot配置文件(多环境配置devtestprod启动器类的位置)

spring boot--日志开发和生产环境切换自定义配置

Log4j

Java中的日志框架

tomcat logs目录下 日志文件含义及配置位置

JavaLearn#(26)MyBatis基础:认识框架MyBatis环境搭建基本CRUD配置文件日志管理别名属性文件ThreadLocal保存sqlSession本地DTD模板