zoukankan      html  css  js  c++  java
  • Log4j2_java日志使用

    一:配置详解

       1、log4j2.xml文件

    <?xml version="1.0" encoding="UTF-8"?> 
    <!-- status用于设置log4j2自身内部的信息输出,可以不设置,当设置成trace时,你会看到log4j2内部各种详细输出。 
         monitorInterval:Log4j能够自动检测修改配置 文件和重新配置本身,设置间隔秒数。-->   
    <configuration status="error" monitorInterval="30">  
        <!-- 先定义所有的appender -->  
        <appenders>  
            <!-- 这个输出控制台的配置 -->  
            <Console name="Console" target="SYSTEM_OUT">  
            <!-- 控制台只输出level及以上级别的信息(onMatch),其他的直接拒绝(onMismatch) -->  
                <ThresholdFilter level="trace" onMatch="ACCEPT" onMismatch="DENY"/>  
                <!-- 这个都知道是输出日志的格式 -->  
                <PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n"/>  
            </Console>  
    
            <!-- 文件会打印出所有信息,这个log每次运行程序会自动清空,由append属性决定,这个也挺有用的,适合临时测试用 -->  
            <File name="log" fileName="log/test.log" append="false">  
                <PatternLayout pattern="%d{HH:mm:ss.SSS} %-5level %class{36} %L %M - %msg%xEx%n"/>  
            </File>  
    
            <!-- 可以有选择的输出某个级别以上的类别  onMatch="ACCEPT" onMismatch="DENY"意思是匹配就接受,否则直接拒绝  -->  
            <File name="ERROR" fileName="logs/error.log">  
                <ThresholdFilter level="error" onMatch="ACCEPT" onMismatch="DENY"/>  
                <PatternLayout pattern="%d{yyyy.MM.dd 'at' HH:mm:ss z} %-5level %class{36} %L %M - %msg%xEx%n"/>  
            </File>  
    
            <!-- 这个会打印出所有的信息,每次大小超过size,则这size大小的日志会自动存入按年份-月份建立的文件夹下面并进行压缩,作为存档 -->  
            <RollingFile name="RollingFile" fileName="logs/web.log"  filePattern="logs/$${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,appender才会生效 -->  
        <loggers>  
            <!-- 建立一个默认的root的logger -->  
            <root level="trace">  
                <appender-ref ref="RollingFile"/>  
                <appender-ref ref="Console"/>  
                <appender-ref ref="ERROR" />  
                <appender-ref ref="log"/>  
            </root>  
        </loggers>  
    </configuration>  

    二:关键解析

  • 相关阅读:
    查询语句
    索引的增删改成查
    pymysql模块
    mysql备份
    单表查询语法
    单表查询
    mysql增删改差
    Leetcode--1. Two Sum(easy)
    Leetcod--20. Valid Parentheses(极简洁的括号匹配)
    Leetcode-448. Find All Numbers Disappeared in an Array(solve without extra space easy)
  • 原文地址:https://www.cnblogs.com/chunxiaozhang/p/12659661.html
Copyright © 2011-2022 走看看