springboot使用logback文件查看错误日志过程详解

这篇文章主要介绍了springboot使用logback文件查看错误日志过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

<?xml version="1.0" encoding="UTF-8"?>

<!-- 从高到地低 OFF 、 FATAL 、 ERROR 、 WARN 、 INFO 、 DEBUG 、 TRACE 、 ALL -->
<!-- 日志输出规则 根据当前ROOT 级别,日志输出时,级别高于root默认的级别时 会输出 -->
<!-- 以下 每个配置的 filter 是过滤掉输出文件里面,会出现高级别文件,依然出现低级别的日志信息,通过filter 过滤只记录本级别的日志-->

<!-- 属性描述 scan:性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true scanPeriod:设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒。当scan为true时,此属性生效。默认的时间间隔为1分钟。
  debug:当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态。默认值为false。 -->
<configuration scan="true" scanPeriod="60 seconds" debug="false">
  <springProperty scope="context" name="logLevel" source="log.level"/>
  <property name="logPath" value="G:/idjavacode/industry3/doc"></property>

  <!-- 定义日志文件 输入位置 -->
  <property name="log_dir" value="${logPath}/vegetable-shop-api" />
  <!--<property name="log_dir" value="./logs/order-admin-api" />-->
  <!-- 日志最大的历史 30天 -->
  <property name="maxHistory" value="365"/>

  <!-- ConsoleAppender 控制台输出日志 -->
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <!-- 对日志进行格式化 -->
    <encoder>
      <pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level- %caller{1} -%msg%n</pattern>
      <charset>UTF-8</charset>
    </encoder>
  </appender>

  <!-- ERROR级别日志 -->
  <!-- 滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件 RollingFileAppender-->
  <appender name="INFO" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <!-- 过滤器,只记录WARN级别的日志 -->
    <filter class="ch.qos.logback.classic.filter.LevelFilter">
      <level>DEBUG</level>
    </filter>
    <!-- 最常用的滚动策略,它根据时间来制定滚动策略.既负责滚动也负责出发滚动 -->
    <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
      <!--日志输出位置 可相对、和绝对路径 -->
      <fileNamePattern>${log_dir}/%d{yyyy-MM-dd}/logback_vegetable-shop-api_info-log-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
      <maxFileSize>10MB</maxFileSize>
      <maxHistory>360</maxHistory>
      <totalSizeCap>20GB</totalSizeCap>
    </rollingPolicy>

    <encoder>
      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level-%caller{1} - %msg%n</pattern>
      <charset>GBK</charset>
    </encoder>
  </appender>

  <appender name="ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <filter class="ch.qos.logback.classic.filter.LevelFilter">
      <level>ERROR</level>
      <onMatch>ACCEPT</onMatch>
      <onMismatch>DENY</onMismatch>
    </filter>
    <encoder>
      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level-%caller{1} - %msg%n</pattern>
      <charset>GBK</charset>
    </encoder> <!--滚动策略-->
    <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> <!--路径-->
      <fileNamePattern>${log_dir}/%d{yyyy-MM-dd}/vegetable-shop-api_error-log-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
      <maxFileSize>10MB</maxFileSize>
      <maxHistory>360</maxHistory>
      <totalSizeCap>20GB</totalSizeCap>
    </rollingPolicy>
  </appender>

  <logger name="java.sql.PreparedStatement" level="DEBUG" />
  <logger name="java.sql.Connection" level="DEBUG" />
  <logger name="java.sql.Statement" level="DEBUG" />
  <logger name="com.ibatis" level="INFO" />
  <logger name="com.ibatis.common.jdbc.SimpleDataSource" level="INFO" />
  <logger name="com.ibatis.common.jdbc.ScriptRunner" level="INFO"/>
  <logger name="com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate" level="DEBUG" />
  <logger name="org.springframework" level="INFO" />

  <!-- root级别  DEBUG -->
  <root level="${logLevel}">
    <!-- 控制台输出 -->
    <appender-ref ref="STDOUT" />
    <!-- 文件输出 -->
    <appender-ref ref="INFO" />
    <appender-ref ref="ERROR" />
  </root>
</configuration>

这一份logback描述的并不是太完整

在yml文件中进行配置的文件是:

# logback
log:
 path:
 level: INFO

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Spring Boot 使用 logback、logstash、ELK 记录日志文件的方法

    Spring Boot 下,尝试使用 log4j 记录日志到 logstash,在src/main/resources 目录下添加 log4j.properties 文件进行自定义输出日志文件,未能成功.在 application.yml 中 配置 logging path 打印日志成功了,但是未能调试成功日志分文件记录.网上查阅资料,说是 Spring Boot 默认使用 logback 记录日志.log4j 多次尝试后无果,遂改为使用 logback 记录,最终测试成功. 1. 关于 Spr

  • springboot配置logback日志管理过程详解

    这篇文章主要介绍了springboot配置logback日志管理过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 首先书写logback-spring.xml文件为: <?xml version="1.0" encoding="UTF-8"?> <configuration> <springProperty scope="context" name="

  • Spring Boot异步输出Logback日志方法详解

    一.介绍 1.1 Logback Logback是由log4j创始人设计的另一个开源日志组件,它分为下面下个模块: logback-core:其它两个模块的基础模块 logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API使你可以很方便地更换成其它日志系统如log4j或JDK14 Logging logback-access:访问模块与Servlet容器集成提供通过Http来访问日志的功能 1.2 日志级别 包括:TRACE.DEBUG.INFO.WARN

  • SpringBoot之logback-spring.xml不生效的解决方法

    一.前言 做新应用就是这样,会遇到各种问题,昨天刚解决了加载某一个类时候抛出了 class is not visible from class loader 的问题,今天就有遇到了日志文件找不到的问题,还是和二方库有关的,下面就一一道来. 二.问题产生 正常情况下在  src/main/resources 目录放下  logback-spring.xml 的配置文件(使用logback日志系统),如下图 application.properties里面设置  spring.application

  • SpringBoot中logback日志保存到mongoDB的方法

    Springboot默认集成的就是logback,logback相对来说是优秀于log4j的,log4j2也是参考了logback的设计. 自定义Appender非常简单,继承一下AppenderBase类即可. 可以看到有个AppenderBase,有个UnsynchronizedAppenderBase,还有个AsyncAppenderBase继承了UnsynchronizedAppenderBase.从名字就能看出来区别,异步的.普通的.不加锁的. 我们定义一个MongoDBAppend

  • 基于Spring Boot的Logback日志轮转配置详解

    在生产环境下,日志是最好的问题调试和跟踪方法,因此日志的地位是十分重要的.我们平时经常使用的log4j,slf4j,logback等等,他们的配置上大同小异.这里就结合Spring Boot配置一下Logback的日志. 默认最简单的配置 默认情况下,如果对日志没有特殊处理,可以直接基于application.properties进行配置. 常用的参数有: logging.level 配置日志的级别 logging.file logging.path 这两个参数只能配置一个生效,一个是文件(可以

  • springboot使用logback文件查看错误日志过程详解

    这篇文章主要介绍了springboot使用logback文件查看错误日志过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 <?xml version="1.0" encoding="UTF-8"?> <!-- 从高到地低 OFF . FATAL . ERROR . WARN . INFO . DEBUG . TRACE . ALL --> <!-- 日志输出规则 根据当前ROOT

  • Spring-boot集成pg、mongo多数据源过程详解

    这篇文章主要介绍了Spring-boot集成pg.mongo多数据源过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 修改POM文件,增加相应Jar包 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-mongodb</artifactId> </

  • php慢查询日志和错误日志使用详解

    前言 作为一名程序员,比码代码还重要那么一点点的东西就是日志的分析和查询.下面列出常见日志及设置方法. php-fpm 慢日志 php慢日志需要在php-fpm.conf设置,如果使用源码包安装默认请执行下面命令 cp php-fpm.conf.default php-fpm.conf 默认通过源码包编译安装php目录应在 /usr/local/php 目录下,如果你通过yum或者其他方式安装,不清楚或不知道php具体安装目录,可以使用 find / -name php-fpm.conf or

  • springboot jpa分库分表项目实现过程详解

    这篇文章主要介绍了springboot jpa分库分表项目实现过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 分库分表场景 关系型数据库本身比较容易成为系统瓶颈,单机存储容量.连接数.处理能力都有限.当单表的数据量达到1000W或100G以后,由于查询维度较多,即使添加从库.优化索引,做很多操作时性能仍下降严重.此时就要考虑对其进行切分了,切分的目的就在于减少数据库的负担,缩短查询时间. 分库分表用于应对当前互联网常见的两个场景--大数

  • php 自定义错误日志实例详解

    php 自定义错误日志 项目中需要对定义错误日志及时处理, 那么就需要修改自定义错误日志的输出方式(写日志.发邮件.发短信)   一. register_shutdown_function(array('phperror','shutdown_function')); //定义PHP程序执行完成后执行的函数 函数可实现当程序执行完成后执行的函数,其功能为可实现程序执行完成的后续操作.程序在运行的时候可能存在执行超时,或强制关闭等情况,但这种情况下默认的提示是非常不友好的,如果使用register

  • spring boot使用logback实现多环境日志配置详解

    软件生存周期中,涉及代码运行的环节有编码.测试和维护阶段,而一套成熟的代码,在此三个阶段,数据库.日志路径.日志级别.线程池大小等配置一般会不一样.作为开发人员,希望将代码与配置解耦合,不同的环境,代码一套,而配置多套. 针对于多环境的配置,可以使用maven的profile及filter配置,在打包环节通过打包命令 mvn clean package -P dev/test/product决定所打环境的war/jar包.此种解决方案,产生的war\jar包在不同环境的是不同的,因此MD5校验和

  • 使用Pyinstaller转换.py文件为.exe可执行程序过程详解

     前言 pyinstaller能够在Windows.Linux等操作系统下将Python脚本打包成可直接运行程序.使Python脚本可以在没有安装Python的环境中直接运行,方便共享. 开发环境 python 2.7.12 + Windows7 注意事项 1.待转换的.py文件绝对路径最好不要包含中文字符.容易出现一些莫名其妙的问题. 2.python中需要有.py文件中用到的第三方库.否则在转换后的.exe文件中会出现不符合预期的结果. pyinstaller安装步骤 1.配置pip镜像源.

  • springboot 使用poi进行数据的导出过程详解

    使用的是idea+restful风格 第一:引入依赖为: <!--poi--> <dependency> <groupId>org.apache.xmlbeans</groupId> <artifactId>xmlbeans</artifactId> <version>2.6.0</version> </dependency> <dependency> <groupId>do

  • Vue单文件组件开发实现过程详解

    第一步:配置环境 安装cnpm npm install -g cnpm --registry=https://registry.npm.taobao.org 安装@vue/cli cnpm install -g @vue/cli 检查版本是否正确 vue --version 使用vue.server和vue.build对*.vue文件进行快速原型开发,需要安装vue serve cnpm install -g @vue/cli-service-global 新建一个App.vue文件测试安装是否

随机推荐