SpringBoot|Logback 异步输出日志信息
异步输出日志的好处 通过异步输出日志减少磁盘IO提高性能
配置文件logback-spring.xml SpringBoot工程自带logback和slf4j的依赖,所以重点放在编写配置文件上,需要引入什么依赖,日志依赖冲突统统都不需要我们管了。logback框架会默认加载classpath下命名为logback-spring或logback的配置文件。将所有日志都存储在一个文件中文件大小也随着应用的运行越来越大并且不好排查问题,正确的做法应该是将error日志和其他日志分开,并且不同级别的日志根据时间段进行记录存储。
[%d{yyyy-MM-dd' 'HH:mm:ss.sss}] [%C] [%t] [%L] [%-5p] %m%n
ERROR
DENY
ACCEPT
[%d{yyyy-MM-dd' 'HH:mm:ss.sss}] [%C] [%t] [%L] [%-5p] %m%n
${LOG_INFO_HOME}//%d.log
30
ERROR
[%d{yyyy-MM-dd' 'HH:mm:ss.sss}] [%C] [%t] [%L] [%-5p] %m%n
${LOG_ERROR_HOME}//%d.log
30
部分标签说明
标签,添加append
标签,通过使用该标签指定日志的收集策略
name属性指定appender命名
class属性指定输出策略,通常有两种,控制台输出和文件输出,文件输出就是将日志进行一个持久化。
ConsoleAppender将日志输出到控制台
logback 高级特性异步输出日志 【SpringBoot|Logback 异步输出日志信息】之前的日志配置方式是基于同步的,每次日志输出到文件都会进行一次磁盘IO。采用异步写日志的方式而不让此次写日志发生磁盘IO,阻塞线程从而造成不必要的性能损耗。异步输出日志的方式很简单,添加一个基于异步写日志的appender,并指向原先配置的appender即可
0 256
0 256
推荐阅读
- Activiti(一)SpringBoot2集成Activiti6
- SpringBoot调用公共模块的自定义注解失效的解决
- 解决SpringBoot引用别的模块无法注入的问题
- springboot使用redis缓存
- springboot整合数据库连接池-->druid
- spring|spring boot中设置异步请求默认使用的线程池
- SpringBoot中YAML语法及几个注意点说明
- springboot结合redis实现搜索栏热搜功能及文字过滤
- springboot中.yml文件的值无法读取的问题及解决
- SpringBoot整合MongoDB完整实例代码