1.日志存储
springboot自己帮我们配置好了默认的日志,我们可以直接拿来用
在之前我们做测试的时候,我们经常用System.out.println();来输出中间结果来看看执行的过程和中间结果,有了日志后,日志可以帮你记录过程
我们在测试类里边写入以下内容
/** LoggerFactory是日志工厂,我们可以从工厂中获得一个记录日志的logger日志记录器 他有一下五个常用的用法 trace 跟踪轨迹,用于跟踪一些信息 debug 用于输出一些调试信息 info 自己定义的一些信息 warn 警告信息 error 错误信息 */ Logger logger = LoggerFactory.getLogger(getClass()); @Test public void test() { //System.out.println(person); logger.trace("trace日志"); logger.debug("debug日志"); logger.info("info日志"); logger.warn("warn日志"); logger.error("error日志"); } }
这五个常用方法的日志级别由低到高为 trace < debug < info < warn < error
运行发现只打印了后三个,前两个没打印,springboot默认级别就是到info,所以只会输出info以及以后的内容
我们在application.properties里边填入以下,后边有很多可选项,我们选择要调整级别的文件夹,如下
我们填成我们自己项目的com.zhanshen这个目录然后运行测试类
发现都打印了出来
有些时候我们需要把日志文件保存起来以后查看,我们可以用到logging.file.name
(注意这是springboot2.x的写法,若是1.x版本,可以这么写logging.file 也就是logging.file=springboot.log)
配置文件中这么写
发现文件根目录下多了一个springboot.log文件,里边的内容就是打印的日志内容
如果我们不想把日志放在这里还可以指定位置,比如logging.file.name=C:/log/springboot.log
他就会帮你把日志文件保存到C盘的log里边的文件里边
有着相同用法的还有logging.file.path(在springboot1.x使用logging.path)
比如logging.file.path=C:/log/这个有一个默认的文件名就是spring.log他会在C盘的log目录下把日志放到spring.log里边
2.日志格式
日志的格式我们是可以自己设定的,
logging.pattern.console用于指定输出到控制台的日志格式
logging.pattern.file用于指定存入到文件里边的日志的格式
logging.pattern.console=%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n
有关上边的格式,我们知道%d{yyyy-MM-dd HH:mm:ss.SSS}这个是用来规范日期的
[%thread]线程号
%-5level 表示级别, -表示左对齐,5表示五个空间类似于C语言的格式化输出
%logger{50} 表示日志全类名50个字符
%msg 表示消息
%n表示换行
我们给他修改一下格式试一下
可以看到格式就全都改变了
文件的格式也是一样的。