• SpringBoot 6.SpringBoot使用 Log4j2 实现日志输出


    一、添加 Log4j2 的依赖

            <!-- 引入 log4j2 必须排除 logging -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-log4j2</artifactId>
            </dependency>

      当我们引入 log4j2 的时候,需要排除掉 spring-boot-starter-web 中引入的 logging。

            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
                <exclusions>
             <!-- 排除 logging -->
    <exclusion> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-logging</artifactId> </exclusion> </exclusions> </dependency>

    二、创建 log4j2.xml

    <?xml version="1.0" encoding="UTF-8" ?>
    <!-- 该xml配置中,xml元素大小写不敏感 -->
    <!-- status="off",log4j2把自身事件记录到控制台的配置,off表示不记录,其余的记录有trace,debug,info,warn,error,fatal -->
    <!-- monitorInterval表示检测更改配置的时间,单位是秒,最小间隔为5秒,0或负数表示不检测 -->
    <configuration name="test-cfg" status="off" monitorInterval="0">
    
        <!-- 常量引用 -->
        <properties>
            <!-- <property name="LOG_HOME">/home/log</property> -->
            <property name="LOG_HOME">D:/log</property>
            <property name="FORMAT">%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] %-5level >>> %logger{36} - %msg%n</property>
        </properties>
    
        <!-- appender用于接收各种日志 -->
        <appenders>
            <!-- 常见的输出到console,常用于开发环境中,默认是system_err,还有一个system_out -->
            <console name="console" target="system_out">
                <!-- appender级别的日志过滤 -->
                <!-- <thresholdFilter level="info" onMatch="accept" onMismatch="deny"/> -->
                <patternLayout pattern="${FORMAT}" />
            </console>
            <!-- 常用于开发环境,把日志记录到文件中,默认追加 -->
            <file name="file" fileName="${LOG_HOME}/test.log" append="false">
                <patternLayout pattern="${FORMAT}" />
            </file>
        </appenders>
    
        <!-- 接收appender -->
        <loggers>
            <logger name="org.apache.http" level="WARN" />
            <!-- Spring -->
            <logger name="org.springframework" level="INFO" />
            <!-- mybatis loggers -->
            <logger name="com.ibatis" level="DEBUG" />
            <logger name="com.ibatis.common.jdbc.SimpleDataSource" level="DEBUG" />
            <logger name="com.ibatis.common.jdbc.ScriptRunner" level="DEBUG" />
            <logger name="com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate" level="DEBUG" />
            <!-- sql loggers -->
            <logger name="java.sql.Connection" level="DEBUG"  additivity="true"/>
            <logger name="java.sql.Statement" level="DEBUG" additivity="true" />
            <logger name="java.sql.PreparedStatement" level="DEBUG"  additivity="true"/>
            <logger name="java.sql.ResultSet" level="DEBUG"  additivity="true"/>
            <!-- 对包进行更详细的配置 -->
            <!-- additivity表示是否追加,防止重复,因为root已经接收过一次了 -->
            <logger name="cn.com.baseos" level="DEBUG" additivity="false">
                <appender-ref ref="console" />
                <appender-ref ref="file" />
            </logger>
            <!-- root logger,一般用于放置所有的appender -->
            <root level="DEBUG">
                <appender-ref ref="console" />
                <appender-ref ref="file" />
            </root>
        </loggers>
    
    </configuration> 
  • 相关阅读:
    mojoportal学习——文章翻译之超过3个内容面板
    mojoportal学习——文章翻译之mojoportal的皮肤模板
    mojoportal中替换第一层菜单中的连接为空连接
    mojoportal学习——文章翻译之不同的模块使用不同的风格
    mojoportal学习——文章翻译之layout.master文件
    mojoportal学习——文章翻译之mojoportal高级功能之菜单子站点化
    GridView选中行变色(无刷新)
    页面之间传递参数的几种方法荟萃
    ASP.NET程序中常用的三十三种代码(一)
    ASP.NET设计应用程序的七大绝招
  • 原文地址:https://www.cnblogs.com/rcddup/p/7535468.html
Copyright © 2020-2023  润新知