Skip to content

整合log4j日志

  1. 优先级
    1. TRACE<DEBUG<INFO<WARN<ERROR<FATAL
    2. 级别高的会自动屏蔽级别低的日志,假如设置级别为INFO,TRACE及DEBUG都不显示
  2. 可以设置日志输出目的地
  3. 可以配置日志输出格式化
  4. 使用
    1. 引入依赖
    xml
            <dependency>
                <groupId>org.apache.logging.log4j</groupId>
                <artifactId>log4j-core</artifactId>
                <version>2.19.0</version>
            </dependency>
            <dependency>
                <groupId>org.apache.logging.log4j</groupId>
                <artifactId>log4j-slf4j2-impl</artifactId>
                <version>2.19.0</version>
            </dependency>
    1. 极简配置log4j2.xml
    xml
    <?xml version="1.0" encoding="UTF-8"?>
    <Configuration status="WARN">
        <Appenders>
            <Console name="Console" target="SYSTEM_OUT">
                <PatternLayout pattern="%d{MM/dd HH:mm:ss} [%t] %-5level %logger{36} - %msg%n"/>
            </Console>
        </Appenders>
        <Loggers>
            <Root level="DEBUG">
                <AppenderRef ref="Console"/>
            </Root>
        </Loggers>
    </Configuration>
  5. 重新运行test方法,输出:
12/13 11:34:35 [main] DEBUG org.springframework.context.support.ClassPathXmlApplicationContext - Refreshing org.springframework.context.support.ClassPathXmlApplicationContext@3eb77ea8
12/13 11:34:35 [main] DEBUG org.springframework.beans.factory.xml.XmlBeanDefinitionReader - Loaded 1 bean definitions from class path resource [bean.xml]
12/13 11:34:35 [main] DEBUG org.springframework.beans.factory.support.DefaultListableBeanFactory - Creating shared instance of singleton bean 'user'
  1. 分析
    1. 刷新容器
    2. bean.xml加载1个bean的定义
    3. 创建了一个单例的user对象