Log4j2日志分级(error单独输出)

2023-11-01

<?xml version='1.0' encoding='UTF-8' ?>
<configuration status="info" name="defaultLogConfig">
    <properties>
        <property name="LOG_HOME">d:/logs</property>
        <property name="PATTERN_LAYOUT">%d [%7r] %6p - %30.30c - %m \n</property>
    </properties>

    <Appenders>
        <Console name="Console" target="SYSTEM_OUT" follow="true">
            <PatternLayout pattern="${PATTERN_LAYOUT}" charset="GBK"/>
        </Console>
        <!--warn及以下日志-->
        <RollingFile name="INFO" fileName="${LOG_HOME}/info.log" filePattern="${LOG_HOME}/info-%d{yyyyMMdd}-%i.log.gz">
            <PatternLayout pattern="${PATTERN_LAYOUT}"/>
            <Filters>
                <!--如果是error级别拒绝-->
                <ThresholdFilter level="error" onMatch="DENY" onMismatch="NEUTRAL"/>
                <!--如果是debug\info\warn输出-->
                <ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="DENY"/>
            </Filters>
            <Policies>
                <TimeBasedTriggeringPolicy />
                <!--单个文件大小-->
                <SizeBasedTriggeringPolicy size="500MB"/>
            </Policies>
            <!--保存日志文件个数-->
            <DefaultRolloverStrategy max="10"/>
        </RollingFile>

        <!--error级别日志输出-->
        <RollingFile name="ERROR" fileName="${LOG_HOME}/error.log" filePattern="${LOG_HOME}/error-%d{yyyyMMdd}-%i.log.gz">
            <PatternLayout pattern="${PATTERN_LAYOUT}"/>
            <Filters>
                <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/>
            </Filters>
            <Policies>
                <TimeBasedTriggeringPolicy />
                <SizeBasedTriggeringPolicy size="500MB"/>
            </Policies>
            <DefaultRolloverStrategy max="10"/>
        </RollingFile>
    </Appenders>

    <Loggers>
        <AsyncLogger name="org.springframework.beans" level="error">
            <AppenderRef ref="Console" />
            <AppenderRef ref="INFO" />
            <AppenderRef ref="ERROR" />
        </AsyncLogger>

        <AsyncLogger name="org.springframework.core" level="error">
            <AppenderRef ref="Console" />
            <AppenderRef ref="INFO" />
            <AppenderRef ref="ERROR" />
        </AsyncLogger>

        <AsyncLogger name="org.springframework.context" level="error">
            <AppenderRef ref="Console" />
            <AppenderRef ref="INFO" />
            <AppenderRef ref="ERROR" />
        </AsyncLogger>
        <AsyncLogger name="org.springframework.web" level="error">
            <AppenderRef ref="Console" />
            <AppenderRef ref="INFO" />
            <AppenderRef ref="ERROR" />
        </AsyncLogger>
        <AsyncLogger name="com.mybatis" level="error">
            <AppenderRef ref="Console" />
            <AppenderRef ref="INFO" />
            <AppenderRef ref="ERROR" />
        </AsyncLogger>

        <Root level="${log4j.level}">
            <AppenderRef ref="Console" />
            <AppenderRef ref="INFO" />
            <AppenderRef ref="ERROR" />
        </Root>
    </Loggers>
</configuration>

 

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

Log4j2日志分级(error单独输出) 的相关文章

随机推荐

  • 华为OD机试 - 优雅子数组(Java)

    题目描述 如果一个数组中出现次数最多的元素出现大于等于K次 被称为 k 优雅数组 k也可以被称为优雅阈值 例如 数组1 2 3 1 2 3 1 它是一个3 优雅数组 因为元素1出现次数大于等于3次 数组 1 2 3 1 2 就不是一个3 优
  • 最大子阵列-计蒜客

    在一个数组中找出和最大的连续几个数 至少包含一个数 例如 数组A 2 1 3 4 1 2 1 5 4 则连续的子序列 4 1 2 1 有最大的和6 输入格式 第一行输入一个不超过1000的整数n 第二行输入n个整数A i 输出格式 第一行输
  • 统计学习之时间序列分析

    一 什么是时间序列 1 定义 按照时间的顺序把一个随机事件变化发展的过程记录下来 就构成了一个时间序列 对时间序列进行观察 研究 找寻它变化发展的规律 预 测它将来的走势就是时间序列分析 2 栗子 7000年前 古埃及人把尼罗河涨落的情况逐
  • (C++)类与对象——封装

    目录 封装的基础与意义 1 类的创建与调用 类的案例 学生类的创建 封装的意义 封装是C 中面向对象的三大特性之一 1 属性与行为 2 权限 class和struct的区别 struct创建时 结构体内的成员默认属性都是 public cl
  • 获取鼠标位置插入字符串

    str 指的是插入的字符串 id为textarea function setStr str id var tc id var tclen tc val length tc focus if typeof document selection
  • ubuntu 20.04 设置不见了

    ubuntu20 04 用着用着突然发现设置不见了 即使重启电脑还是找不到设置 后来通过扒帖子发现是一个包丢失了 gnome control center 重新安装一个这个包就好了 sudo apt install gnome contro
  • echarts各种调整样式(史上最全)

    Echars各种样式调整 史上最全 全图默认背景 backgroundColor rgba 0 0 0 0 默认色板 color ff7f50 87cefa da70d6 32cd32 6495ed ff69b4 ba55d3 cd5c5c
  • php发送邮件验证码,PHP(ThinkPHP5.0) + PHPMailer 进行邮箱发送验证码

    GitHub下载最新版第三方类库PHPMailer 第一步 打开网址https github com PHPMailer PHPMailer 下载PHPMailer PHPMailer 需要 PHP 的 sockets 扩展支持 而登录 Q
  • 动手深度学习:计算机视觉——语义分割

    目录 图像分割和实例分割 Pascal VOC2012 语义分割数据集 预处理数据 自定义语义分割数据集类 读取数据集 整合所有组件 转置卷积 填充 步幅和多通道 与矩阵变换的联系 使用矩阵乘法来实现卷积 使用矩阵乘法来实现转置卷积 使用全
  • 使用MATLAB绘制二元函数图像

    使用matlab绘制一个二元函数的图像 首先得告诉计算机 函数的定义域和值域 以及绘制精度 点数 然后使用meshgrid 函数划分网格 然后计算机根据你给定的函数 如Z f x y 计算每个点的取值 然后利用绘图函数 如surf 或mes
  • 在线生成免费android ios图标

    记录一个比较好用的网址 可以用来一键生成android iOS图标 且iOS图标百分百匹配 一 先上链接 https icon wuruihong com 二 点击上传 选择平台android ios 三 点击开始生成 预览 四 下载所需图
  • 提权_【CVE-2017-16995】 Linux 内核漏洞提权

    1 信息收集 上传信息收集脚本 运行并查看是否有 CVE 2017 16995 漏洞 这里我用到的信息收集脚本为 linux exploit suggester 2 pl perl linux exploit suggester 2 pl
  • R语言数据分析报告 鲍鱼年龄预测

    鲍鱼年龄预测 一 背景与目标 鲍鱼的生长在贝类家族中属于比较慢的种类 从受精卵开始 长到商品规格6 8厘米 通常需要1 4年甚至更长时间 以我国的皱纹鲍为例 大约需要近3年的生长才能达到7厘米左右 鲍鱼的生长速度随年龄的增长呈下降趋势 鲍鱼
  • 为什么计算机要使用反码/补码

    一 为什么需要反码 反码的作用就相当于数学中的负数 对于小学生来说 会做的算术题是 5 3 但是不会做3 5 于是 我们上初中的时候 数学里就引进了一个新的概念 负数 引入负数之后 本来是减法的运算就可以变成加法来实现 3 5 3 5 2
  • 冒泡排序和快速排序(C语言实现)

    冒泡排序 实现思想 升序 将数组最大值一步一步交换到数组末尾 该值完成排序 需排序区间 1 继续找需排序区间最大值交换到末尾 直到需排序区间只有一个数 整个数组就有序了 动图演示 void Swap int a int b 交换函数 int
  • qt学习笔记6(线程的同步、互斥,线程中的信号与槽,线程与主页面通讯方式,信号和槽的连接方式,线程和对象的生命周期)

    一 线程和进程的区别 线程启动和结束的方式 1 线程的启动 线程的启动方式有上图所示两种 第一种 run 函数 在直接利用对象调用类中的 run 函数 就相当于效对象中的函数 这时候的run 函数并不是线程中的函数 第二种使用 start
  • vue.js--模板语法

    vue是一种比较流行的前端框架 目标是通过尽可能简单的API实现相应的数据绑定和组合的视图组件 轻量的框架 只聚焦于试图层 可以和其他的库配合使用 看了几集视频看不下去了 还是菜鸟教程适合我 emmm VUE的安装 1 直接 VUE模版语法
  • css设置背景图片缩小,css3 设置背景图片大小(缩略图形式缩小)

    lbrack 译 rsqb libev和libevent的设计差异 本文译自what s the difference between libev and libevent 作者是libev作者 问 两个库都是为异步io调度而设计 在Lin
  • (附源码)计算机毕业设计ssm互联网直播管理系统

    项目运行 环境配置 Jdk1 8 Tomcat7 0 Mysql HBuilderX Webstorm也行 Eclispe IntelliJ IDEA Eclispe MyEclispe Sts都支持 项目技术 SSM mybatis Ma
  • Log4j2日志分级(error单独输出)