springboot开启debug日志_SpringBoot日志快速上手简单配置
默认配置
日志级别从低到高分为:
TRACE < DEBUG < INFO < WARN < ERROR < FATAL。
如果设置为 INFO ,则低于 INFO 的信息都不会输出其他的依次类推
默认情况下,Spring Boot会用Logback来记录内部日志,并用INFO级别输出到控制台你不用做任何设置
从上图可以看到,日志输出内容元素具体如下:
- 时间日期:精确到毫秒
- 日志级别:
- 进程ID
- 分隔符:--- 标识实际日志的开始
- 线程名:方括号括起来(可能会截断控制台输出)
- Logger名:通常使用源代码的类名
- 日志内容
自己程序添加日志
基于类的方式
以后开发的时候,日志记录方法的调用,不应该来直接调用日志的实现类,而是调用日志抽象层里面的方法
这和我们单独使用日志jar包有所不同
package com.fashvn.ctmsdata.logtest;import org.slf4j.Logger;import org.slf4j.LoggerFactory;public class LogTest { private static final Logger logger=LoggerFactory.getLogger(LogTest.class); public static void main(String[] args) { logger.error("简单的日志记录测试:{}+{}={}",1,2,3); }}
基于注解方式
上面那种方式每次都要重复添加记录器那一行代码这里可以基于注解方式但是需要使用lombok前提你IDEA配置了lombok插件然后maven添加了lombok依赖才可以
package com.fashvn.ctmsdata.logtest;import lombok.extern.slf4j.Slf4j;@Slf4jpublic class LogTest { public static void main(String[] args) { log.error("简单的日志记录测试:{}+{}={}", 1, 2, 3); }}
现在你就可以愉快的在自己程序了使用日志了
修改配置
您还可以通过启动您的应用程序 --debug 标志来启用“调试”模式(开发的时候推荐开启),以下两种方式皆可:
- 在运行命令后加入--debug标志,如:$ java -jar springTest.jar --debug
- 在application.properties中配置debug=true,该属性置为true的时候,核心Logger(包含嵌入式容器、hibernate、spring)会输出更多内容,但是你自己应用的日志并不会输出为DEBUG级别。
如何你的日志记录需求简单你可以通过springboot提供的属性进行日志的简单配置复杂日志记录功能需要单独定义配置文件
logging: # 将日志输出到文件 注意name和path同时使用只会生效后一个配置 file: # 日志名称可以是相对路径和绝对路径 name: #日志路径 可以是相对路径和绝对路径,帮我们自动生成spring.log的日志文件 path: # 日志文件大小默认是10M单位是KB max-size: # 每天切割打包日志的数量默认是7 max-history: #日志格式 pattern: #输出到日志文件日志格式 file: #输出到控制台日志格式 # %clr(%d{${LOG_DATEFORMAT_PATTERN:-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: #时间格式 默认 yyyy-MM-dd HH:mm:ss.SSS dateformat: #日志等级对齐方式 默认%5p日志级别输出右对齐 level: #切割文件名称 默认是${LOG_FILE}.%d{yyyy-MM-dd}.%i.gz 如过单个日志文件超过定义的大小就切割打包 rolling-file-name: #需要记录日志的等级 level: # 根目录所以class日志记录等级 root: debug # 自定义对应包下class 日志等级 com.fashvn.ctmsdata: debug
自定义日志配置
根据不同的日志系统,你可以按如下规则组织配置文件名,就能被正确加载:
- Logback:logback-spring.xml, logback-spring.groovy, logback.xml, logback.groovy
- Log4j:log4j-spring.properties, log4j-spring.xml, log4j.properties, log4j.xml
- Log4j2:log4j2-spring.xml, log4j2.xml
- JDK (Java Util Logging):logging.properties
Spring Boot官方推荐优先使用带有-spring的文件名作为你的日志配置(如使用logback-spring.xml,而不是logback.xml),命名为logback-spring.xml的日志配置文件,spring boot可以为它添加一些spring boot特有的配置项
如果你即想完全掌控日志配置,但又不想用logback.xml作为Logback配置的名字,application.yml可以通过logging.config属性指定自定义的名字
logging.config=classpath:logging-config.xml
虽然一般并不需要改变配置文件的名字,但是如果你想针对不同运行时Profile使用不同的日志配置,这个功能会很有用。 一般不需要这个属性,而是直接在logback-spring.xml中使用springProfile配置,不需要logging.config指定不同环境使用不同配置文件
<?xml version="1.0" encoding="UTF-8"?>logback-demo%d -1 %msg%n%d -2 %msg%n%d{HH:mm:ss.SSS} %contextName [%thread] %-5level %logger{36} - %msg%nERRORDENYACCEPT${logback.logdir}/info.${logback.appname}.log${logback.logdir}/info.${logback.appname}.%d{yyyy-MM-dd}.log90UTF-8%d [%thread] %-5level %logger{36} %line - %msg%nError${logback.logdir}/error.${logback.appname}.log${logback.logdir}/error.${logback.appname}.%d{yyyy-MM-dd}.log90UTF-8%d [%thread] %-5level %logger{36} %line - %msg%n
搜索公众号【Java耕耘者】点击小助理,即可获取大量优质电子书和一份Java高级架构资料、Spring源码分析、Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式等视频资料
springboot开启debug日志_SpringBoot日志快速上手简单配置相关推荐
- springboot开启debug日志_SpringBoot 如何优雅的打印日志?
一.打印日志注意事项 1.使用 Slf4j 注解 这个代码相信大家都很熟悉,你是否曾经看到或者自己因 copy 而 没有改变"当前类名"? 如果你们项目用到 lombok ,可以在 ...
- log4j 禁止类输出日志_springboot日志详解
一. 主流日志框架 市场上存在非常多的日志框架. JUL(java.util.logging),JCL(Apache Commons Logging),Log4j,Log4j2,Logback. SL ...
- springboot 启动后打印_SpringBoot实战(五):配置健康检查与监控
强烈推荐一个大神的人工智能的教程:http://www.captainbed.net/zhanghan [前言] 众所周知,系统预警是一件十分重要的事情,系统一旦出现宕机很有可能许多真金白银就进去了: ...
- springboot开启debug日志_Spring Boot SLF4J日志实例(五十)
默认情况下,SLF4j日志记录包含在Spring Boot Web应用程序中,只需要启用它就可以了. 注意:查看此Spring Boot Logback XML模板以了解默认的日志记录模式和配置. S ...
- SpringBoot开启mybatis-plus控制台SQL日志
1.在yml文档中添加如下配置即可 mybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl 2 ...
- neo4j springboot 日志_springBoot 与neo4j的简单整合
Neo4j简介 Neo4j是基于java语言实现的世界领先的图形数据库, 是一个高性能的图形存储,具有成熟和强大的数据库所需的所有功能,如友好的查询语言(Cypher)和ACID事务.对于许多应用程序 ...
- 360公司开源Atlas快速上手安装配置
机器系统Centos6.5 下载atlas的rpm包下载地址https://github.com/Qihoo360/Atlas/releases ,因为不涉及跨机器分表,所以,版本采用 Atlas-2 ...
- springboot mysql行锁_SpringBoot基于数据库实现简单的分布式锁
本文介绍SpringBoot基于数据库实现简单的分布式锁. 1.简介 分布式锁的方式有很多种,通常方案有: 基于mysql数据库 基于redis 基于ZooKeeper 网上的实现方式有很多,本文主要 ...
- ubuntu系统ftp服务器开启,Ubuntu FTP服务器架设(最简单配置)
1: 安装vsftpd ~$ sudo apt-get install vsftpd 2: 配置vsftpd ~$ sudo gedit /etc/vsftpd.conf listen=YES ...
最新文章
- python缩进在程序中长度统一且强制使用_Python习题纠错1
- SharePoint 2010 与 SQL Server 2012 报表服务集成
- 用Java API实现HDFS操作(三)问题汇总
- autossh配置socks代理
- html怎么设置子目录,如何让主域名指向public_html下的子目录
- 【Python学习】 - Matplotlib二维绘图 - plt.matshow()和plt.imshow()区别对比
- 与梦城Typecho博客数据站+API站
- 逻辑读、物理读、预读的理解
- python如何求列表中的众数_算法(LeetCode)六种方法求数组中的绝对众数
- Ubuntu 14.04 网卡网关配置修改
- 入口函数ufusr()与ufsta()的区别
- java-php-python-ssm文献管理平台计算机毕业设计
- RFID打印机和条码打印机的4大区别
- TIPC Cluster5
- (转)C#进阶系列——WebApi 接口返回值不困惑:返回值类型详解
- 像素及其表示,灰度图
- 基于Matlab软件的视觉导航系统的仿真
- [USACO Nov08]玩具toys解题报告
- Python笔记:纯python操作矩阵:进行矩阵的相乘运算
- 【论文笔记】GeDi:Generative Discriminator Guided Sequence Generation