原文链接:https://www.cnblogs.com/hhhshct/p/9084036.html

rollingPolicy 设置:<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<?xml version="1.0" encoding="UTF-8"?>

<!--
scan:当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true。
scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。
debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。-->
<configuration scan="true" scanPeriod="60 seconds" debug="false">
<!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径 -->
<property name="LOG_HOME" value="D:/logback" />
<!-- 控制台输出 -->
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<!-- %.-1level 只显示信息级别的首字母,%-5level 左对齐显示信息级别全称 -->
<Pattern>[%date{yyyy-MM-dd HH:mm:ss}] [%-5level] --%mdc{client} %msg%n</Pattern>
</encoder>
</appender>
<!-- 每天生成日志文件,文件大小超过50则新生成一个文件,同时将旧文件按${LOG_HOME}/logs/aa.%d{yyyy-MM-dd}.%i.log.zip格式压缩,文件保存30天 -->
<appender name="AA" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_HOME}/aa.log</file> <!-- 日志名称 -->
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${LOG_HOME}/logs/aa.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern>
<maxFileSize>50MB</maxFileSize> <!-- 日志文件过大会使的编辑器打开非常慢,因此设置日志最大50MB -->
<maxHistory>30</maxHistory> <!-- 保存30天 -->
<totalSizeCap>10GB</totalSizeCap> <!-- 总日志大小 -->
</rollingPolicy>
<!-- encoder负责两件事,一是把日志信息转换成字节数组,二是把字节数组写入到输出流。 -->
<encoder>
<pattern>[%date{yyyy-MM-dd HH:mm:ss}] [%-5level] [%logger:%line] --%mdc{client} %msg%n</pattern>
</encoder>
<!-- 过滤器,可以过滤掉不符合条件的日志,INFO及以上的日志被处理,其它的拒绝 -->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender> <appender name="BB" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_HOME}/bb.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${LOG_HOME}/logs/bb.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern>
<maxFileSize>50MB</maxFileSize>
<maxHistory>30</maxHistory>
<totalSizeCap>10GB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>[%date{yyyy-MM-dd HH:mm:ss}] [%-5level] [%logger:%line] --%mdc{client} %msg%n</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender> <appender name="update" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${LOG_HOME}/update.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${LOG_HOME}/logs/update.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern>
<maxFileSize>50KB</maxFileSize>
<maxHistory>7</maxHistory>
<totalSizeCap>10GB</totalSizeCap>
</rollingPolicy>
<encoder>
<pattern>[%date{yyyy-MM-dd HH:mm:ss}] [%-5level] [%logger:%line] --%mdc{client} %msg%n</pattern>
</encoder>
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
</appender>
<!-- java项目中com.example.demo包下通过LoggerFactory.getLogger(Demo.class)获取的日志全部由AA appender处理 -->
<logger name="com.example.demo" additivity="false">
<appender-ref ref="AA" />
</logger>
<!-- java项目中com.example.demo包下通过LoggerFactory.getLogger(Demo2.class)获取的日志全部由BB appender处理 -->
<logger name="com.example.demo.bb">
<appender-ref ref="BB" />
</logger>
<!-- java项目中任意类中通过LoggerFactory.getLogger("update")获取的日志全部由update appender处理 ,
例如想把所有的更新操作的日志放在一起,便于查看
-->
<logger name="update" >
<appender-ref ref="update" />
</logger>
<!-- 根日志,所有logger默认继承自root,打印信息向上级传递,所以以上logger所打印的日志默认被 STDOUT appender再处理一遍,
也就是会被打印到控制台,可以再通过设置logger的additivity="false",使得不再向上传递
-->
<root level="DEBUG">
<appender-ref ref="STDOUT" />
</root> </configuration>

  

(九)logback.xml文件配置(按时间、文件大小和log名称生成日志)的更多相关文章

  1. logback.xml文件配置(按时间、文件大小和log名称生成日志)

    之前项目中日志多用的log4j2,偶然看到在importNew看到了logback,自己查了下,发现Logback和log4j是非常相似的,其作者也是同一个人,并且logback相比于log4j性能更 ...

  2. LogBack.xml文件配置

    Logback-spring.xml配置文件  1.日志级别:日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL, ...

  3. logback logback.xml常用配置详解(一)<configuration> and <logger>

    logback logback.xml常用配置详解(一)<configuration> and <logger> 博客分类: Log java loglogback  原创文章 ...

  4. [转] logback logback.xml常用配置详解(一)<configuration> and <logger>

    转载文章:原文出处:http://aub.iteye.com/blog/1101260 详细整理了logback常用配置, 不是官网手册的翻译版,而是使用总结,旨在更快更透彻的理解其配置 根节点< ...

  5. web.xml 文件配置01

    web.xml 文件配置01   前言:一般的web工程中都会用到web.xml,方便开发web工程.web.xml主要用来配置Filter.Listener.Servlet等.但是要说明的是web. ...

  6. logback logback.xml常用配置详解(三)

    logback logback.xml常用配置详解 <filter> <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之 ...

  7. 在MFC程序中使用XML文件配置工具栏

    现在我发现使用Visual Studio的资源编辑器进行编辑资源有着诸多的不便:首先是任何资源的变动一般变动代码,不利于系统维护,其次Visual Studio的资源编辑器的本身的功能有限,也不利于界 ...

  8. Spring框架入门之基于xml文件配置bean详解

    关于Spring中基于xml文件配置bean的详细总结(spring 4.1.0) 一.Spring中的依赖注入方式介绍 依赖注入有三种方式 属性注入 构造方法注入 工厂方法注入(很少使用,不推荐,本 ...

  9. springmvc 项目完整示例07 设置配置整合springmvc springmvc所需jar包springmvc web.xml文件配置

    前面主要是后台代码,spring以及mybatis的整合 下面主要是springmvc用来处理请求转发,展现层的处理 之前所有做到的,完成了后台,业务层和持久层的开发完成了 接下来就是展现层了 有很多 ...

随机推荐

  1. js动态添加iframe,自适应页面宽高

    function showIframe(url,w,h){ //添加iframe var if_w = w; var if_h = h; $("<iframe width='" ...

  2. JavaScript Basic

    Exercise-1 Write a JavaScript program to display the current day and time in the following format. T ...

  3. Nginx判断客户端实现301跳转

    set $a 0; #第一个条件 if ($uri !~* /(.*).php(.*)){ set $a 1; } #第二个条件 if ($http_user_agent ~* (up.UCBrows ...

  4. LinkedList为什么增删快、查询慢

    List家族中共两个常用的对象ArrayList和LinkedList,具有以下基本特征. ArrayList:长于随机访问元素,中间插入和移除元素比较慢,在插入时,必须创建空间并将它的所有引用向前移 ...

  5. NodeJS——大汇总(一)(只需要使用这些东西,就能处理80%以上业务需求,全网最全node解决方案,吐血整理)

    一.前言 本文目标 本文是博主总结了之前的自己在做的很多个项目的一些知识点,当然我在这里不会过多的讲解业务的流程,而是建立一个小demon,旨在帮助大家去更加高效 更加便捷的生成自己的node后台接口 ...

  6. [优文翻译]002.陪伴我作为程序员的9句名言(9 Quotes that stayed with me as a developer)

    导读:本文是从<9 Quotes that stayed with me as a developer>这篇文章翻译而来 下面的锦句均来自于<9 Quotes that stayed ...

  7. dell5460笔记本电脑ubuntu18.04系统音频驱动的安装和使用

    一.背景: 近期使用dell5460笔记本在ubuntu系统下观看视频,发现没有声音,考虑安装音频驱动. 二.音频驱动的安装 linux系统的音频驱动基于ALSA(即Advanced Linux So ...

  8. jchdl - GSL实例 - DFlipFlop(D触发器)

    https://mp.weixin.qq.com/s/7N3avTxTd2ZUnAcKg4w3Ig   D触发器对边沿敏感,只有当相应的边沿出现时,才会触发D的值传播到输出Q.   ​​ 引自:htt ...

  9. Chisel3 - Wire & Reg

    https://mp.weixin.qq.com/s/Y26N5P4XOr5e3uyi5XQY-w   不同于Verilog,Chisel中Wire和Reg并不是数据类型,而是数据容器,作为数据的一个 ...

  10. SpringBoot 及其 基本原理、配置文件(二)

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.SpringBoot 的版本与启动过程 1.SpringBoot都是jar工程 ​ 2.Spring ...