logback.xml日志文件配置说明

2023-10-26

<?xml version="1.0" encoding="UTF-8"?>
<!-- 日志级别以及优先级排序: OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL -->
<!-- 说明:
     1、日志级别及文件
          日志记录采用分级记录,级别与日志文件名相对应,不同级别的日志信息记录到不同的日志文件中
          例如:error级别记录到xxx_error.log(当前日志文件)或xxx_error-xxx.log(归档日志文件)
          日志文件按日期记录,同一天内,若日志文件大小等于或大于1M,则按0、1、2....顺序分别命名
          例如xxx-level-2019-05-08.0.log
          其它级别的日志也是如此。
     2、文件路径
          绝对路径:/springboottest/logs
     3、Appender
          Console将日志信息输出到控制上,为方便开发测试使用
          FileInfo对应info级别,文件名以xxx_info.log形式命名
          FileWarn对应warn级别,文件名以xxx_warn.log形式命名
          FileError对应error级别,文件名以xxx_error.log形式命名
-->
<configuration>
    <!-- 全局参数 -->
    <property name="CHARSET_UTF8" value="UTF-8"/>
    <property name="LOG_PATH" value="/springboottest/logs"/>
    <property name="LOG_NAME" value="springboottest"/>
    <property name="FILE_NAME" value="${LOG_PATH}/${LOG_NAME}"/>
    <property name="FILE_NAME_INFO" value="${LOG_PATH}/%d{yyyy-MM-dd}/${LOG_NAME}_info"/>
    <property name="FILE_NAME_WARN" value="${LOG_PATH}/warn/${LOG_NAME}_warn"/>
    <property name="FILE_NAME_ERROR" value="${LOG_PATH}/error/${LOG_NAME}_error"/>
    <property name="LOG_PATTERN" value="%date{yyyy-MM-dd HH:mm:ss.SSS} [%level] --- [%thread] %logger.%method:%L | %msg%n"/>
    <!-- 彩色日志格式 -->
    <property name="COLORS_LOG_PATTERN" value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger){cyan}[%L] %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}"/>

    <!-- 彩色日志依赖的渲染类 -->
    <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter"/>
    <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter"/>
    <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter"/>

    <!-- 输出到控制台 -->
    <appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
        <!-- 此日志appender是为开发使用,只配置最低级别,控制台输出的日志级别是大于或等于此级别的日志信息 -->
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>info</level>
        </filter>
        <encoder>
            <pattern>${COLORS_LOG_PATTERN}</pattern>
            <!-- 设置字符集 -->
            <charset>${CHARSET_UTF8}</charset>
        </encoder>
    </appender>

    <!-- 时间滚动输出INFO级别的日志 -->
    <appender name="FileInfo" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 正在记录的日志文件的路径及文件名 -->
        <file>${FILE_NAME}_info.log</file>
        <!-- 追加方式记录日志 -->
        <append>true</append>
        <!-- 日志文件输出格式 -->
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${LOG_PATTERN}</pattern>
            <charset>${CHARSET_UTF8}</charset>
        </encoder>
        <!-- 此日志文件只记录info级别的 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>info</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 每天日志归档路径以及格式 -->
            <fileNamePattern>${FILE_NAME_INFO}-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>1MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
            <!-- 日志文件保留天数 -->
            <maxHistory>15</maxHistory>
        </rollingPolicy>
    </appender>

    <!-- 时间滚动输出WARN级别的日志 -->
    <appender name="FileWarn" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 正在记录的日志文件的路径及文件名 -->
        <file>${FILE_NAME}_warn.log</file>
        <!-- 追加方式记录日志 -->
        <append>true</append>
        <!-- 日志文件输出格式 -->
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${LOG_PATTERN}</pattern>
            <charset>${CHARSET_UTF8}</charset>
        </encoder>
        <!-- 此日志文件只记录warn级别的 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>warn</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 每天日志归档路径以及格式 -->
            <fileNamePattern>${FILE_NAME_WARN}-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>1MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>
            <!-- 日志文件保留天数 -->
            <maxHistory>15</maxHistory>
        </rollingPolicy>
    </appender>

    <!-- 时间滚动输出ERROR级别的日志 -->
    <appender name="FileError" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!-- 正在记录的日志文件的路径及文件名 -->
        <file>${FILE_NAME}_error.log</file>
        <!-- 追加方式记录日志 -->
        <append>true</append>
        <!-- 日志文件输出格式 -->
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${LOG_PATTERN}</pattern>
            <charset>${CHARSET_UTF8}</charset>
        </encoder>
        <!-- 此日志文件只记录error级别的 -->
        <filter class="ch.qos.logback.classic.filter.LevelFilter">
            <level>error</level>
            <onMatch>ACCEPT</onMatch>
            <onMismatch>DENY</onMismatch>
        </filter>
        <!-- 日志记录器的滚动策略,按日期,按大小记录 -->
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <!-- 每天日志归档路径以及格式 -->
            <fileNamePattern>${FILE_NAME_ERROR}-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
                <maxFileSize>1MB</maxFileSize>
            </timeBasedFileNamingAndTriggeringPolicy>

            <!-- 日志文件保留天数 -->
            <maxHistory>15</maxHistory>
        </rollingPolicy>
    </appender>

    <!-- 过滤掉Spring的一些无用的Debug信息 -->

    <logger name="org.springframework" level="info" additivity="false">
        <appender-ref ref="Console"/>
    </logger>
    <root level="info">
        <appender-ref ref="Console"/>
        <appender-ref ref="FileInfo"/>
        <appender-ref ref="FileWarn"/>
        <appender-ref ref="FileError"/>
    </root>
</configuration>
 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

logback.xml日志文件配置说明 的相关文章

随机推荐

  • python传奇自动打怪脚本_传奇自动刷怪脚本,节省服务器资源

    传奇自动刷怪脚本 节省服务器资源 人到怪到 人走怪没 节省服务器资源哦 main if checkhum d716 1 checkmonmap d716 20 act goto exit elseact goto shuaguai shua
  • C# 基本语法 char数据类型

    参见 Visual C 程序设计基础教程 P21 字符数据类型char用来处理Unicode字符 Unicode是16位字符 char变量以无符号16位字符 2字节 数字的形式存储 取值范围为0到65535 每一个数字代表一个Unicode
  • 二元回归模型matlab代码,多元线性回归Matlab代码

    多元线性回归 b 回归系数 bint 回归系数的置信度为95 的置信区间 r 残差 rint 各残差的置信区间 stats 用于检验回归模型的统计量 有四个数值 相关系数R 2 F值 与F对应的概率p 误差方差 相关系数R 2越接近1 说明
  • 标题:SDXL0.9技术详解:图像生成的新高度

    摘要 本文首先概述了图像生成模型SDXL0 9的特点 它相较早期模型显著提高了参数量级 采用云计算资源进行训练 进行知识图谱预训练以及优化了模型结构 文章然后介绍了SDXL0 9在图像质量 生成速度 语义一致性等指标上的进步 在技术原理上
  • excel快速填充并与上面的单元格内容一致(想要的结果如下图)

    1 选中单元格 2 按F5 点击 定位条件 再点击 空值 3 输入 上一个单元格 本例中就是 A1 4 Ctrl Enter 在这里插入图片描述
  • dedecms后台修改“系统基本参数”无效

    安装完dedecms的一些网站模板后 还原备份数据 系统基本参数也将会自动还原 能在 系统设置 下的 系统基本参数 里看到 但是 我遇到的情况是 无论怎么在系统基本参数里修改内容 更新系统缓存 都没能生效 后来通过直接修改代码实现 方法如下
  • 2020-03-05T06:26:07.000+0000

    JAVA JSON传输过程中时间问题 2020 03 05T06 26 07 000 0000转换成正常格式 2020 03 05 14 28 39 SimpleDateFormat sdf new SimpleDateFormat yyy
  • c语言比double精度更高的数据类型_数制与数据类型

    了解数制的分类 熟悉数据类型的分类 掌握整型数据类型的使用方法 掌握浮点型数据类型的使用方法 掌握字符型数据类型的使用方法 掌握不同数据类型之间的转化规则 掌握使用typedef定义类型的方法 二进制 八进制 十六进制 数制间的转换 二进制
  • SPI基础概念

    文章目录 目的 物理接线 极性和相位 信号时序 总结 目的 SPI Serial Perripheral Interface 是一种非常常用的全双工接口 这个接口在非常简单的机制下达到了比较高的通讯速度 比它通讯速度更高的常见的要不是并口
  • Qt 之 信号参数为QSharedPointer 智能指针类型

    文章目录 智能指针作为信号参数 再谈QSharedPointer Demo 1 Demo 2 智能指针作为信号参数 connect a module to the event bus Q DECLARE METATYPE QSharedPo
  • 【宝塔】centos7 如何简单安装nacos

    前言 宝塔如何安装 请访问 宝塔官方网址 https www bt cn new download html 进行安装 宝塔 宝塔页面 安装docker 查看示例图 登录宝塔页面后台 直接点击安装 等等就按着成功了 宝塔页面 安装nacos
  • 某个网站打不开,其他网站正常的原因及解决办法

    检测网站是否适应了cdn加速 可以在命令行中输入nslookup ip地址 nslookup http www 360doc com 如果address的值是多个 就证明使用了cdn加速 可以使用cdn检测工具检测各地使用cdn加速后网络情
  • mysql references关键字_mysql--一些关键字

    primary key 和unique key 在实际工作中 查看表设计总能看到这样的情况 一个primary 一个unique 还有一个key CREATE TABLE user id int 11 NOT NULL AUTO INCRE
  • 智能RFID电动车防盗管理系统解决方案

    一 RFID城市电动自行车技术诞生 随着城市经济的快速发展 电动自行车作为大众百姓日常出行的主要交通工具 数量急速增多 据统计 至2015年底全国电动自行车保有量已超过2亿辆 并且还以每年2000千万辆的速度增长 这方便民众出行的同时 也给
  • plsql替换

    s select from wh where dl delete from up update set aw a where 1 1 and sf select t rowid from srf select a rowid a from
  • React 性能优化,你需要知道的几个点

    转自于 https www jianshu com p 333f390f2e84 写了一段时间的react之后 渐渐的喜欢上了使用react来写应用 我们知道 Facebook在推出react时打出的旗号之一就是高性能 今天我们还一起来聊一
  • Python 手把手实现M3U8视频抓取

    声明 本文只作学习研究 禁止用于非法用途 否则后果自负 如有侵权 请告知删除 谢谢 此案例比较适合新手学习JS逆向 引言 本文出自微信公众号 Python三剑客 作者 阿K 阅读时长 5min 留言 文章输出我一直贯彻着即拿即用的方式为大家
  • java错误-The prefix "aop" for element "aop:aspectj-autoproxy" is not bound.

    配置springmvc的aop时出错 当我向配置文件中添加
  • web安全的漏洞种类

    SQL注入 SQL注入 SQL Injection 是一个常见的发生于应用程序和数据库之间的web安全漏洞 由于在开发过程中的设计不当导致程序中忽略了检查 没有有效的过滤用户的输入 是攻击者可以向服务器提交不正常的访问数据 即恶意的的SQL
  • logback.xml日志文件配置说明