springboot整合logback日志

来源:互联网 发布:python mobi 编辑:程序博客网 时间:2024/05/17 23:22

springboot整合logback日志

  • logback maven 配置
        <dependency>            <groupId>ch.qos.logback</groupId>            <artifactId>logback-classic</artifactId>        </dependency>
  • logback日志配置,日志级别,日志文件产生测量,控制台输入策略
<?xml version="1.0" encoding="UTF-8" standalone="no"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/2002/xmlspec/dtd/2.10/xmlspec.dtd"><configuration>    <property name="LOG_PATH" value="${LOG_PATH:-${LOG_TEMP:-${java.io.tmpdir:-/tmp}}}" />    <!-- 彩色日志 -->    <!-- 彩色日志依赖的渲染类 -->    <conversionRule conversionWord="clr"        converterClass="org.springframework.boot.logging.logback.ColorConverter" />    <conversionRule conversionWord="wex"        converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter" />    <conversionRule conversionWord="wEx"        converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter" />    <!-- 彩色日志格式 -->    <property name="CONSOLE_LOG_PATTERN"        value="${CONSOLE_LOG_PATTERN:-%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}" />    <!-- Console 输出设置 -->    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">        <!--encoder 默认配置为PatternLayoutEncoder -->        <encoder>            <pattern>${CONSOLE_LOG_PATTERN}</pattern>            <charset>utf-8</charset>        </encoder>        <!--此日志appender是为开发使用,只配置最底级别,控制台输出的日志级别是大于或等于此级别的日志信息 -->        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">            <level>info</level>        </filter>    </appender>    <!-- 按照每天生成日志文件 -->    <appender name="FILE"        class="ch.qos.logback.core.rolling.RollingFileAppender">        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">            <!--日志文件输出的文件名 -->            <FileNamePattern>${LOG_PATH}/boot-%d{yyyy-MM-dd}.log            </FileNamePattern>            <!--日志文件保留天数 -->            <MaxHistory>30</MaxHistory>        </rollingPolicy>        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">            <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符 -->            <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} -%msg%n</pattern>        </encoder>        <!--日志文件最大的大小 -->        <triggeringPolicy            class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">            <MaxFileSize>10MB</MaxFileSize>        </triggeringPolicy>    </appender>    <!-- 生产环境下,将此级别配置为适合的级别,以免日志文件太多或影响程序性能 -->    <root level="debug">        <appender-ref ref="CONSOLE" />        <appender-ref ref="FILE" />    </root></configuration>

boot yml配置

server:  port: 80spring:  datasource:    driver-class-name: com.mysql.jdbc.Driver    type: com.alibaba.druid.pool.DruidDataSource    username: root    password: 123456    url: jdbc:mysql://127.0.0.1:3306/demo?characterEncoding=utf8&useSSL=false    maxActive: 20     initialSize: 3    maxWait: 60000    minIdle: 1    timeBetweenEvictionRunsMillis: 60000     minEvictableIdleTimeMillis: 300000    validationQuery: SELECT 'x'    testWhileIdle: true    testOnBorrow: false    testOnReturn: false    poolPreparedStatements: true     maxOpenPreparedStatements: 20    maxPoolPreparedStatementPerConnectionSize: 20    connectionProperties: druid.stat.mergeSql=true;druid.stat.slowSqlMillis=5000    filters: stat,wall  output:    ansi:      enabled: detectmybatis:    mapperLocations: classpath*:com/boot/mapper/xml/*Mapper.xml    typeAliasesPackage: com.boot.entitylogging:  path: D:/日志/

如果想在eclipse 下的console输入彩色日志,需要下载eclipse下的插件 ansi
启动项目即可。

原创粉丝点击