<?xml version="1.0" encoding="UTF-8" ?>
<!--
<configuration>
<appender></appender> //存在1或多个,功能指定记录输出目的地
<root></root> //最多存在一个,根logger
<logger><logger> //存在1或多个,普通logger
</configuration>
-->
<configuration> <!-- 从本地spring文件获取信息 获取项目名称 -->
<springProperty scope="context" name="PROJECT_NAME" source="spring.application.name"/> <!-- 存储在文件中的打印日志 格式 -->
<property name="FILE_PATTEN"
value="[%level] [%date{ISO8601}] [%logger] [%thread] [%X{clientIp}] [%X{requestId}] [%X{serverIp}] [%X{X-B3-TraceId}] %msg%n"/>
<!-- 打印在控制台文件输出格式 -->
<property name="CONSOLE_PATTEN"
value="[%highlight(%-5level)] [%date{ISO8601}] [%boldGreen(%logger)] [%boldYellow(%thread)] [%X{clientIp}] [%cyan(%X{requestId})] [%X{serverIp}] %msg%n"/> <!-- 日志打印在 控制台 -->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>${CONSOLE_PATTEN}</pattern>
</encoder>
</appender> <!--按照文件个数 和日志文件大小进行的回收策略 每天最多保留20个 每个最大100兆,最多保留一天-->
<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${user.home}/logs/${PROJECT_NAME}/${PROJECT_NAME}.log</file>
<append>true</append>
<!--指定日志输出级别 到不同的日志-->
<filter class="ch.qos.logback.classic.filter.LevelFilter">
<level>INFO</level>
<onMatch>ACCEPT</onMatch>
<onMismatch>DENY</onMismatch>
</filter>
<!--文件超过100兆,新建一个日志文件,日志文件最多20个,每天清理一次 -->
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<!--设置以文件结尾zip表示压缩 -->
<fileNamePattern>${user.home}/logs/${PROJECT_NAME}/${PROJECT_NAME}.%i.log</fileNamePattern>
<minIndex></minIndex>
<maxIndex></maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<!--日志归档大小 -->
<maxFileSize>1kB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>${FILE_PATTEN}</pattern>
<charset>UTF-</charset>
</encoder>
</appender> <!--按照日志级别打印-->
<appender name="error_file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${user.home}/logs/${PROJECT_NAME}/error/${PROJECT_NAME}.log</file>
<append>true</append>
<!--指定日志输出级别 到不同的日志 可以自定义过滤器 输出 各种不同类型日志 如sql-->
<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.FixedWindowRollingPolicy">
<fileNamePattern>${user.home}/logs/${PROJECT_NAME}/${PROJECT_NAME}_error.%i.log</fileNamePattern>
<minIndex></minIndex>
<maxIndex></maxIndex>
</rollingPolicy>
<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>1KB</maxFileSize>
</triggeringPolicy>
<encoder>
<pattern>${FILE_PATTEN}</pattern>
<charset>UTF-</charset>
</encoder>
</appender> <!-- 日志按天压缩归档 根据设置的保留天数自动更新-->
<appender name="info_file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>${user.home}/logs/${PROJECT_NAME}/info/${PROJECT_NAME}.log</file>
<append>true</append>
<!--指定日志输出级别 到不同的日志 可以自定义过滤器 输出 各种不同类型日志 如sql-->
<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">
<!-- 生成按编号的认知 i%代表个数-->
<!--<fileNamePattern>${user.home}/logs/${PROJECT_NAME}/info/${PROJECT_NAME}-%d{yyyy-MM-dd}.%i.log-->
<fileNamePattern>${user.home}/logs/${PROJECT_NAME}/info/${PROJECT_NAME}-%d{yyyy-MM-dd}.%i.log.zip
</fileNamePattern>
<!-- 日志多大进行归档-->
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
<maxFileSize>100MB</maxFileSize>
</timeBasedFileNamingAndTriggeringPolicy>
<!-- 保留的天数 -->
<MaxHistory></MaxHistory>
</rollingPolicy>
<encoder>
<pattern>${FILE_PATTEN}</pattern>
<charset>UTF-</charset>
</encoder>
</appender> <!--指定打印到什么环境日志 设置打印日志级别 到控制台 和文件-->
<springProfile name="test">
<root level="DEBUG">
<appender-ref ref="console"/>
<appender-ref ref="file"/>
<appender-ref ref="error_file"></appender-ref>
<appender-ref ref="info_file"></appender-ref>
</root>
</springProfile> </configuration>

logback日志实战的更多相关文章

  1. 【SpringBoot】Logback日志框架介绍和SpringBoot整合实战

    ========================11.Logback日志框架介绍和SpringBoot整合实战 2节课================================ 1.新日志框架L ...

  2. 11、Logback日志框架介绍和SpringBoot整合实战 2节课

    1.新日志框架LogBack介绍     简介:日志介绍和新日志框架Logback讲解 1.常用处理java的日志组件 slf4j,log4j,logback,common-logging 等     ...

  3. 小D课堂 - 零基础入门SpringBoot2.X到实战_第11节 Logback日志框架介绍和SpringBoot整合实战_45、SpringBoot2.x日志讲解和Logback配置实战

    笔记 2.SpringBoot2.x日志讲解和自定义Logback配置实战     简介:讲解SpringBoot2.x整合Logback配置实战 1.官网介绍:https://docs.spring ...

  4. Java日志实战及解析

    Java日志实战及解析 日志是程序员必须掌握的基础技能之一,如果您写的软件没有日志,可以说你没有成为一个真正意义上的程序员. 为什么要记日志? •       监控代码 •       变量变化情况, ...

  5. Logback日志系统配置攻略

    logback是log4j作者推出的新日志系统,原生支持slf4j通用日志api,允许平滑切换日志系统,并且对简化应用部署中日志处理的工作做了有益的封装. 官方地址为:http://logback.q ...

  6. lombok+slf4j+logback SLF4J和Logback日志框架详解

    maven 包依赖 <dependency> <groupId>org.projectlombok</groupId> <artifactId>lomb ...

  7. mybatis用logback日志不显示sql的解决办法

    mybatis用logback日志不显示sql的解决方法 1.mybatis-config.xml的设定 关于logimpl的设定值还不支持logback,如果用SLF4J是不好用的. 这是官方文档的 ...

  8. Logback日志配置的简单使用

    Logback介绍 Logback是由log4j创始人设计的又一个开源日志组件.logback当前分成三个模块:logback-core,logback- classic和logback-access ...

  9. 在SpringBoot中添加Logback日志处理

    前言 SpringBoot项目中在官方文档中说明,默认已经依赖了一些日志框架.而其中推荐使用的就是Logback,所以这一次我将在我的模版中加入Logback日志的配置,说明一下,SpringBoot ...

随机推荐

  1. vuepress-theme-reco + Github Actions 构建静态博客,部署到第三方服务器

    最新博客链接 Github链接 查看此文档前应先了解,vuepress基本操作 参考官方文档进行配置: vuepress-theme-reco VuePress SamKirkland / FTP-D ...

  2. Natas13 Writeup(文件上传,绕过图片签名检测)

    Natas13: 与上一关页面类似,还是文件上传,只是多了提示“出于安全原因,我们现在仅接受图像文件!”.源码如下 function genRandomString() { $length = 10; ...

  3. 【python 数据结构】相同某个字段值的所有数据(整理成数组包字典的形式)

    class MonitoredKeywordMore(APIView): def post(self, request): try: # 设置原生命令并且请求数据 parents_asin = str ...

  4. 渗透测试-IP相关知识整理

    IP地址: 英文名称为Internet Protocol Address,是指互联网协议地址又称为网际协议地址.IP地址是Ip协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台机器分配一个 ...

  5. settings源码

    自定义settings配置 创建python项目 settings.py NAME = '我是暴露给用户的自定义配置' __init__.py import os import importlib f ...

  6. 洛谷 P1891 疯狂LCM 题解

    原题链接 享受推式子的乐趣吧 数论真有趣! 庆祝:数论紫题第 \(3\) 道. \[\sum_{i=1}^n \operatorname{lcm}(i,n) \] \[= \sum_{i=1}^n \ ...

  7. HTTP 错误 500.21 模块 IIS Web Core

    如果出现如下图错误 就是iis没有安装Web Core模块 下载并安装DotNetCore.1.0.4_1.1.1-WindowsHosting.exe 安装完成之后会出现如下 证明安装成功.网站也可 ...

  8. OpenLDAP 多主复制(基于docker容器模式部署)

    **本文主要讲述在docker环境下如何进行 OpenLDAP 多主复制,至于 OpenLDAP 原理可以先参考这篇文章了解:https://cloud.tencent.com/developer/a ...

  9. Centos7 搭建 Flume 采集 Nginx 日志

    版本信息 CentOS: Linux localhost.localdomain 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x ...

  10. c++实现单纯形法现行规划问题的求解

    在本程序中默认该现行规划问题有最优解 针对此问题: #include<iostream> using namespace std; int check(float *sigema, int ...