Springboot logback配置日志文件动态路径的方法有哪些

发布时间:2021-06-23 13:47:25 作者:chen
来源:亿速云 阅读:1739

本篇内容主要讲解“Springboot logback配置日志文件动态路径的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Springboot logback配置日志文件动态路径的方法有哪些”吧!

日志路径配置在环境变量中

方式一:使用PropertyDefinerBase

import ch.qos.logback.core.PropertyDefinerBase;

/**
 * 获取 日志目录信息
 */
public class DefineLogDir extends PropertyDefinerBase {
    @Override
    public String getPropertyValue() {
        // 获取环境变量信息
        GlobalUtils.getEnvInfo();
        // 设置日志目录
        return Constant.GXAIO_HOME + Constant.GXAIO_LOGS_DIR;
    }

}

在logback-spring文件中,增加log.path

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <contextName>engine</contextName>

    <define name="log.path" class="net.greatsoft.hospitalrtc.util.DefineLogDir" />
    <!-- 输出的控制台 -->
    <appender name="consoleInfo" class="ch.qos.logback.core.ConsoleAppender">
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>
                %d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%n
            </pattern>
        </encoder>
    </appender>

    <!-- 输出正常输出信息到文件 -->
    <appender name="fileInfo" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.path}/hospital-rtc.log</file>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
            <fileNamePattern>${log.path}/hospital-rtc.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <!-- 单个文件最大100M -->
            <maxFileSize>100MB</maxFileSize>
            <!-- 保留30天的日志 -->
            <maxHistory>30</maxHistory>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>
                %date %level [%thread] %logger{36} [%file : %line] %msg%n
            </pattern>
        </encoder>
    </appender>

    <!-- 日志输出级别 -->
    <root level="INFO">
        <appender-ref ref="consoleInfo"/>
        <appender-ref ref="fileInfo"/>
    </root>

    <!-- 输出mybatis的sql -->
    <logger name="net.greatsoft.hospitalrtc.mapper" level="DEBUG"></logger>
</configuration>

方式二:在application.properties中配置,如在application.properties中有如下配置:

log.path=c:/logback

在logback-spring文件中配置如下:

<springProperty scope="context" name="log.path" source="log.path"/>

就可以引用log.path了

到此,相信大家对“Springboot logback配置日志文件动态路径的方法有哪些”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

推荐阅读:
  1. springboot支付项目之日志配置
  2. SpringBoot的日志信息

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

logback springboot

上一篇:nacos的DistroMapper有什么作用

下一篇:SpringBoot+Redis怎么实现后端接口防重复提交校验

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》