1 <?xml version="1.0" encoding="UTF-8"?>
  2 <!--
  3     scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。
  4     scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒;当scan为true时,此属性生效。默认的时间间隔为1分钟。
  5     debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。
  6 -->
  7 <configuration scan="false" scanPeriod="60 seconds" debug="false">
  8     <!-- 定义日志的根目录 -->
  9     <property name="LOG_HOME" value="logs"/>
 10     <!-- 定义日志文件名称 -->
 11     <property name="appName" value="log"></property>
 12     <!-- ch.qos.logback.core.ConsoleAppender 表示控制台输出 -->
 13     <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
 14         <!--
 15         日志输出格式:
 16             %d表示日期时间,
 17             %thread表示线程名,
 18             %-5level:级别从左显示5个字符宽度
 19             %logger{50} 表示logger名字最长50个字符,否则按照句点分割。
 20             %msg:日志消息,
 21             %n是换行符
 22         -->
 23         <layout class="ch.qos.logback.classic.PatternLayout">
 24             <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} ==> [%thread] ==> %-5level %logger{50} - %msg%n</pattern>
 25         </layout>
 26     </appender>
 27
 28     <!-- 滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件 -->
 29     <appender name="appLogAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
 30         <!-- 指定日志文件的名称 -->
 31         <file>${LOG_HOME}/${appName}.log</file>
 32         <!--
 33         当发生滚动时,决定 RollingFileAppender 的行为,涉及文件移动和重命名
 34         TimeBasedRollingPolicy: 最常用的滚动策略,它根据时间来制定滚动策略,既负责滚动也负责出发滚动。
 35         -->
 36         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
 37             <!--
 38             滚动时产生的文件的存放位置及文件名称 %d{yyyy-MM-dd}:按天进行日志滚动
 39             %i:当文件大小超过maxFileSize时,按照i进行文件滚动
 40             -->
 41             <fileNamePattern>${LOG_HOME}/${appName}-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
 42             <!--
 43             可选节点,控制保留的归档文件的最大数量,超出数量就删除旧文件。假设设置每天滚动,
 44             且maxHistory是365,则只保存最近365天的文件,删除之前的旧文件。注意,删除旧文件是,
 45             那些为了归档而创建的目录也会被删除。
 46             -->
 47             <MaxHistory>365</MaxHistory>
 48             <!--
 49             当日志文件超过maxFileSize指定的大小时,根据上面提到的%i进行日志文件滚动
 50             注意此处配置SizeBasedTriggeringPolicy是无法实现按文件大小进行滚动的,必须配置timeBasedFileNamingAndTriggeringPolicy
 51             -->
 52             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
 53                 <maxFileSize>1KB</maxFileSize>
 54             </timeBasedFileNamingAndTriggeringPolicy>
 55         </rollingPolicy>
 56         <!-- 日志输出格式: -->
 57         <layout class="ch.qos.logback.classic.PatternLayout">
 58             <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [ %thread ] - [ %-5level ] [ %logger{50} : %line ] - %msg%n</pattern>
 59         </layout>
 60         <filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印ERROR日志 -->
 61             <level>ERROR</level>
 62             <onMatch>ACCEPT</onMatch>
 63             <onMismatch>DENY</onMismatch>
 64         </filter>
 65     </appender>
 66
 67     <!--输出到error-->
 68     <appender name="appLogAppenderError" class="ch.qos.logback.core.rolling.RollingFileAppender">
 69         <!-- 指定日志文件的名称 -->
 70         <file>${LOG_HOME}/${appName}-error.log</file>
 71         <!--
 72         当发生滚动时,决定 RollingFileAppender 的行为,涉及文件移动和重命名
 73         TimeBasedRollingPolicy: 最常用的滚动策略,它根据时间来制定滚动策略,既负责滚动也负责出发滚动。
 74         -->
 75         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
 76             <!--
 77             滚动时产生的文件的存放位置及文件名称 %d{yyyy-MM-dd}:按天进行日志滚动
 78             %i:当文件大小超过maxFileSize时,按照i进行文件滚动
 79             -->
 80             <fileNamePattern>${LOG_HOME}/${appName}-error-%d{yyyy-MM-dd}-%i.log</fileNamePattern>
 81             <!--
 82             可选节点,控制保留的归档文件的最大数量,超出数量就删除旧文件。假设设置每天滚动,
 83             且maxHistory是365,则只保存最近365天的文件,删除之前的旧文件。注意,删除旧文件是,
 84             那些为了归档而创建的目录也会被删除。
 85             -->
 86             <MaxHistory>365</MaxHistory>
 87             <!--
 88             当日志文件超过maxFileSize指定的大小时,根据上面提到的%i进行日志文件滚动
 89             注意此处配置SizeBasedTriggeringPolicy是无法实现按文件大小进行滚动的,必须配置timeBasedFileNamingAndTriggeringPolicy
 90             -->
 91             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
 92                 <maxFileSize>1KB</maxFileSize>
 93             </timeBasedFileNamingAndTriggeringPolicy>
 94         </rollingPolicy>
 95         <!-- 日志输出格式: -->
 96         <layout class="ch.qos.logback.classic.PatternLayout">
 97             <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [ %thread ] - [ %-5level ] [ %logger{50} : %line ] - %msg%n</pattern>
 98         </layout>
 99         <filter class="ch.qos.logback.classic.filter.LevelFilter"><!-- 只打印ERROR日志 -->
100             <level>ERROR</level>
101             <onMatch>ACCEPT</onMatch>
102             <onMismatch>DENY</onMismatch>
103         </filter>
104     </appender>
105
106
107     <!--
108         logger主要用于存放日志对象,也可以定义日志类型、级别
109         name:表示匹配的logger类型前缀,也就是包的前半部分
110         level:要记录的日志级别,包括 TRACE < DEBUG < INFO < WARN < ERROR
111         additivity:作用在于children-logger是否使用 rootLogger配置的appender进行输出,
112         false:表示只用当前logger的appender-ref,true:
113         表示当前logger的appender-ref和rootLogger的appender-ref都有效
114     -->
115     <!-- app logger -->
116     <logger name="com.qianxingniwo" level="debug"/>
117     <!-- Spring framework logger -->
118     <logger name="org.springframework" level="debug" additivity="false"></logger>
119
120     <!--
121     root与logger是父子关系,没有特别定义则默认为root,任何一个类只会和一个logger对应,
122     要么是定义的logger,要么是root,判断的关键在于找到这个logger,然后判断这个logger的appender和level。
123     -->
124     <root level="info">
125         <appender-ref ref="stdout"/>
126         <appender-ref ref="appLogAppender"/>
127         <appender-ref ref="appLogAppenderError"/>
128     </root>
129 </configuration>

转载于:https://www.cnblogs.com/newAndHui/p/10670394.html

springboot日志logback配置相关推荐

  1. SpringBoot默认日志logback配置解析

    SpringBoot默认日志logback配置解析 前言 今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的,你呢 如何引入日志? 日志输出格式 ...

  2. Spring Boot:(六)默认日志logback配置解析

    Spring Boot:(六)默认日志logback配置解析 前言 今天来介绍下Spring Boot如何配置日志logback,我刚学习的时候,是带着下面几个问题来查资料的,你呢 如何引入日志? 日 ...

  3. SpringBoot 日志配置

    SpringBoot 日志的配置 如果不配置日志,默认配置是 base.xml 配置日志 在 resource 目录下新建 logback.xml <?xml version="1.0 ...

  4. SpringBoot 日志系列:(二)日志配置

    一.application.properties 或 application.yml 配置 1.1 日志级别 1.2 文件输出 1.3 日志输出格式 二.自定义日志配置 2.1 根节点 <con ...

  5. SpringBoot笔记:SpringBoot2.3集成Logback日志组件配置

    文章目录 Logback简介 简介 日志级别 日志分类 Logback使用 添加依赖 配置Logback Logback参数解释 1.根节点configuration包含属性 2.根节点configu ...

  6. SpringBoot——slf4j+logback日志处理及配置详解

    SpringBoot--sl4j+logback日志处理及配置详解 日志的级别 打印级别:ALL > TRACE > FATAL > DEBUG > INFO > WAR ...

  7. 记录druid整合springboot+logback配置打印sql日志

    [记录druid整合springboot+logback配置打印sql日志] 整合记录 整合记录 首先看 druid 的LogFilter 为我们准备的四种logger类型 这些logger分别对应打 ...

  8. log4j2的一些配置,为某个类某个方法单独文件打印日志,定时删除日志和springboot的logback日志单独类打印

    log4j2.xml配置如下:<?xml version="1.0" encoding="UTF-8"?> <!-- status=" ...

  9. Springboot日志配置探索(主要看logback)(二)

    这篇博客主要是讲在Springboot中扩展的日志框架的配置,也是主要讲logback 8 继续看文档,这里讲到: springboot里面还有几个日志系统框架可以选择使用,你可以通过在classpa ...

最新文章

  1. 通过BeanShell获取UUID并将参数传递给Jmeter
  2. 送书 | 2020年新一天,用这本书开启你的NLP学习之路!
  3. SAP Hybris的build callback和SAP ABAP的SGEN事务码
  4. Windows消息机制详解-2
  5. Markdown+Pandoc→HTML幻灯片速成
  6. vue 自定义组件使用v-model
  7. 求树的直径+并查集(bfs,dfs都可以)hdu4514
  8. opencv模板匹配matchTemplate
  9. c语言实验内容设计思路,c语言实验报告书3.doc
  10. android登陆界面保存账号密码附带源码
  11. 北大计算机专业毕业论文,北京大学计算机专业硕士
  12. 华为nova5iotg功能使用_华为nova5ipro支持otg功能吗
  13. MDCC 2016参会总结
  14. flask 数据库迁移migration
  15. 【react踩坑】前端显示文件流图片
  16. c语言中的less函数,less的小白入门介绍
  17. 笔迹鉴定流程,都需要什么,费用多少?
  18. python世界地图代码_[python] 几行代码也能玩转世界地图?
  19. linux wine运行效率,Linux 使用 Wine 运行 TIM 简明教程
  20. Pandas 获得 Dataframe 的行数和列数

热门文章

  1. 2021-2027年中国涂装行业市场需求预测与投资战略规划分析报告
  2. 2021-2027年中国医疗美容市场研究及前瞻分析报告
  3. 2021-2027全球与中国经颅磁刺激仪(TMS)市场现状及未来发展趋势
  4. 2022-2028年中国水处理分离膜行业市场现状调研及市场需求潜力报告
  5. 互联网笔试各种主流语言在OJ上的的标准输入输出
  6. 【css】基础学习总结
  7. CUDA之nvidia-smi命令详解---gpu
  8. Bert代码详解(一)重点详细
  9. Qt实现 指针式时钟+动态时钟 (详细注释)
  10. TVM apps extension示例扩展库