魔术桌
  • 更新日志
  • 新闻资讯
  • 数据资产
  • 网站导航
  • 订阅推荐
  • 商品推广
  • 日记
  • 摘录
  • 论文
  • 方案
  • 技术
  • 风格
  • 视觉
  • 原材料
  • 加工工艺
  • 元器件
  • 产品设备
  • 设计模式
  • 数据结构
  • 算法设计
  • 软件架构
  • 程序语言
  • 代码类库
  • 操作系统
  • 软件包
  • 健康
  • 环境
  • 社会
  • 道德
  • 法律
  • 经济
  • 政策
  • 更新日志
  • 新闻资讯
  • 数据资产
  • 网站导航
  • 订阅推荐
  • 商品推广
  • 日记
  • 摘录
  • 论文
  • 方案
  • 技术
  • 风格
  • 视觉
  • 原材料
  • 加工工艺
  • 元器件
  • 产品设备
  • 设计模式
  • 数据结构
  • 算法设计
  • 软件架构
  • 程序语言
  • 代码类库
  • 操作系统
  • 软件包
  • 健康
  • 环境
  • 社会
  • 道德
  • 法律
  • 经济
  • 政策
  • Library - Maven - Log4j 2 - 配置文件 - XML文件

文章摘要: Log4j 2 是XML配置文件总结。

Configuration

  • status:用于指定log4j本身的打印日志的级别
  • monitorinterval:自动重载配置,检查间隔时间,单位是s,最小是5s。
  • Appenders
    • Console:定义输出到控制台
    • File:定义输出到指定位置的文件
    • RollingFile:定义操作指定大小自动删除就的创建新的
  • Loggers
    • Root:指定项目的根日志,若没有Logger时则默认使用该日志输出
    • Logger:单独指定日志的形式,比如指定包下的class指定不同的日志级别
<?xml version="1.0" encoding="UTF-8"?>  
  
<!-- 根节点 -->  
<configuration status="error"> <!-- 设置日志级别 -->  
    <!-- 先定义所有的appender附加器 -->  
    <appenders>  
        <!-- 输出控制台 -->  
        <Console name="console" target="SYSTEM_OUT">  
            <!-- 控制台只输出LEVEL及以上级别的信息(onMatch),其他的直接拒绝(onMismatch) -->  
            <ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY"/>  
            <!-- 输出日志的格式 -->  
            <PatternLayout pattern="%{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n"/> <!-- %msg%xEx%n" -->  
        </Console>  
  
        <!-- 输出保存文件 -->  
        <!-- 文件会打印出所有信息,这个log每次运行程序都会自动清空,由append属性决定 -->  
        <!-- append:`false`表示消息覆盖指定的文件内容,(默认)`true`表示消息增加到指定文件中 -->  
        <File name="log" fileName="/home/magictable/softwareagent/agent/log/log4j2.log" append="false">  
            <!-- 输出日志的格式 -->  
            <PatternLayout pattern="%{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n"/>  
        </File>  
        <!-- 添加过滤器ThresholdFilter,可以有选择的输出某个级别以上的类别 onMatch="ACCEPT" onMismatch="DENY" 意思是匹配就接受,否则直接拒绝 -->  
        <File name="ERROR" fileName="/home/magictable/softwareagent/agent/log/error.log">  
            <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/>  
            <PatternLayout pattern="%{HH:mm:ss.SSS} %-5level %class{36} %L %M - %m%n"/>  
        </File>  
        <!-- 打印所有的信息,每次大小超过size,则日志会自动存入,按年月日建立的文件夹下面并进行压缩 -->  
        <RollingFile name="RollingFile" fileName="/home/magictable/softwareagent/agent/log/web.log"  
                     filePattern="log/$${date:yyyy-MM}/web-%d{MM-dd-yyyy}-$i.log.gz">  
            <PatternLayout pattern="%d{yyyy-MM-dd 'at' HH:mm:ss z} %-5level %class{36} %L %M - %msg%xEx%n"/>  
            <SizeBasedTriggeringPolicy size="2MB"/>  
        </RollingFile>
    </appenders>  
    <!-- 定义logger,只有定义了logger并引入appender,才会生效 -->  
    <loggers>  
        <root level="trace">  
            <appender-ref ref="Console"/>  
            <appender-ref ref="log"/>  
            <appender-ref ref="ERROR"/>  
            <appender-ref ref="RollingFile"/>  
        </root>
    </loggers>  
</configuration>

内容

更新时间: 2025/11/16 17:17