java - spring-boot logback配置

查看:196
本文介绍了java - spring-boot logback配置的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

<appender name="dailyRollingFileAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <File>/opt/logs/statistics/statistics.log</File>
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- daily rollover -->
            <FileNamePattern>statistics.%d{yyyy-MM-dd}.log</FileNamePattern>
            <!-- keep 30 days' worth of history -->
            <!--<maxHistory>30</maxHistory>-->
        </rollingPolicy>
        <encoder>
            <!--
            %d{HH:mm:ss.SSS}——日志输出时间
            %thread——输出日志的进程名字,这在Web应用以及异步任务处理中很有用
            %-5level——日志级别,并且使用5个字符靠左对齐
            %logger{36}——日志输出者的名字
            %msg——日志消息
            %n——平台的换行符
            -->
            <Pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{35} - %msg %n</Pattern>
        </encoder>
        <!--<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">-->
            <!--<maxFileSize>10MB</maxFileSize>-->
        <!--</triggeringPolicy>-->
    </appender>

如果不指定maxHistory,那么日志文件是否永久保存?
如果不指定maxFileSize,日志文件的大小是不受限制吗?

解决方案

有个默认值的:

TimeBasedRollingPolicy源码,默认maxHistory为0

public class TimeBasedRollingPolicy<E> extends RollingPolicyBase implements TriggeringPolicy<E> {
    static final String FNP_NOT_SET = "The FileNamePattern option must be set before using TimeBasedRollingPolicy. ";
    FileNamePattern fileNamePatternWCS;
    private Compressor compressor;
    private RenameUtil renameUtil = new RenameUtil();
    Future<?> compressionFuture;
    Future<?> cleanUpFuture;
    private int maxHistory = 0;
    private FileSize totalSizeCap = new FileSize(0L);
    private ArchiveRemover archiveRemover;
    TimeBasedFileNamingAndTriggeringPolicy<E> timeBasedFileNamingAndTriggeringPolicy;
    boolean cleanHistoryOnStart = false;

maxFileSize默认值为10485760L Bytes

public class SizeBasedTriggeringPolicy<E> extends TriggeringPolicyBase<E> {
    public static final String SEE_SIZE_FORMAT = "http://logback.qos.ch/codes.html#sbtp_size_format";
    public static final long DEFAULT_MAX_FILE_SIZE = 10485760L;
    String maxFileSizeAsString = Long.toString(10485760L);
    FileSize maxFileSize;
    InvocationGate invocationGate = new DefaultInvocationGate();

这篇关于java - spring-boot logback配置的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆