zoukankan      html  css  js  c++  java
  • springboot整合日志log4j(按日期、大小分割)

    日志不与客户端产生交互,但是这一点都不会降低日志的重要性。

    1、导入依赖

            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
                <!--我演示的项目是前后端交互的后台项目,spring-boot-starter也可以 -->
                <exclusions>
                    <exclusion><!-- 去除默认配置 -->
                        <groupId>org.springframework.boot</groupId>
                        <artifactId>spring-boot-starter-logging</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
    
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-log4j2</artifactId>
                <version>1.5.6.RELEASE</version>
            </dependency>
            <dependency>  <!-- 支持识别yml配置 -->
                <groupId>com.fasterxml.jackson.dataformat</groupId>
                <artifactId>jackson-dataformat-yaml</artifactId>
            </dependency>            

    2、在resources目录下创建log4j2.yml文件

    Appenders:
      Console:  #输出到控制台
        name: CONSOLE #Appender命名
        target: SYSTEM_OUT
        PatternLayout:
          pattern: "%d{yyyy-MM-dd HH:mm:ss,SSS}:%4p %t (%F:%L) - %m%n"
      RollingFile: # 输出到文件,超过256MB归档
      - name: ROLLING_FILE
        ignoreExceptions: false
        fileName: /var/log/***/logs/***.log
        filePattern: "/var/log/***/logs/$${date:yyyy-MM}/newknowledgebase-%d{yyyy-MM-dd}-%i.log"
        PatternLayout:
          pattern: "%d{yyyy-MM-dd HH:mm:ss,SSS}:%4p %t (%F:%L) - %m%n"
        Policies:
          SizeBasedTriggeringPolicy:
            size: "8 KB"#这是为了测试,可以更改如MB等
        DefaultRolloverStrategy:
          max: 1000
    Loggers:
      Root:
        level: info
        AppenderRef:
        - ref: CONSOLE
      Logger: #单独设置某些包的输出级别
      - name: com.***.***#复数加上-(这里我设置的是包的根路径的包名)
        additivity: false #去除重复的log
        level: info
        AppenderRef:
        - ref: CONSOLE #复数加上-
        - ref: ROLLING_FILE #复数加上-

    该项目是运行在服务器上,本地运行只需要将日志目录改成你本地的路径就行。

    3、效果展示

  • 相关阅读:
    基于HTML5的可预览多图片Ajax上传
    在linq查询环境下通过sql语句来访问数据库
    EF查询数据库框架的搭建
    用多线程处理后台业务,并提高处理速度
    WPF 大数据加载过程中的等待效果——圆圈转动
    .NET一个线程更新另一个线程的UI(两种实现方法及若干简化)
    通电螺线管与磁场方向
    MOS管与三极管
    word2007怎样从中间某一页开始设置页码
    word删除页眉横线
  • 原文地址:https://www.cnblogs.com/pengpengdeyuan/p/13633334.html
Copyright © 2011-2022 走看看