SpringBoot快速集成Logback日志组件
目录
- 前言
- 引入:
- 配置:
- 开发:
- 结语
前言 在前一节的分享中,慕歌向大家介绍了如何使用spring boot 实现简单的邮寄发送服务,用于验证码服务或者是通知服务。如果大家有兴趣,慕歌还想向大家进一步分享,如何在使用第三方服务,实现手机短信通知服务,就是那个我们每天都会使用到的短信验证码,通知服务。这一节慕歌想带来spring boot日志系统的分享,以及慕歌自己的实现的简易日志记录,慕歌会将日志同时保存在文件和数据库之中。
引入: 如果我们使用 logback 就无需额外引入依赖,在spring boot statrt 中已经默认集成了logback 日志。
org.springframework.boot spring-boot-starter-web
如果想要使用log4j2 日志需要排除默认日志,再引入,无需指定版本。
org.springframework.boot spring-boot-starter-weborg.springframework.boot spring-boot-starter-logging--> -->org.springframework.boot -->spring-boot-starter-log4j2-->
配置: 引入日志依赖后,我们还需要指定日志的输出格式,需要再resource中新建一个文件 logback.xml 。如果对于日志无特殊要求可直接参考我的日志配置。
${log.pattern} ${log.path}/sys-info.log ${log.path}/sys-info.%d{yyyy-MM-dd}.log 60 【SpringBoot快速集成Logback日志组件】${log.pattern} INFO ACCEPT DENY ${log.path}/sys-error.log ${log.path}/sys-error.%d{yyyy-MM-dd}.log 60 ${log.pattern} ERROR ACCEPT DENY ${log.path}/sys-user.log ${log.path}/sys-user.%d{yyyy-MM-dd}.log 60 ${log.pattern}
这里的日志文件目录由于是使用的linux ,配置格式就是从根目录开始,需要换成你自己的日志输出目录。然后在配置中指定扫描路径,使用我们D定义的日志格式:
# 日志配置logging:#日志等级level:#更换成你的目录channel.cert: infoorg.springframework: warn#日志路径config: classpath:logback.xml
完成以下日志配置后,即可在我们开发的时候随时打一个日志,用于错误排查。
开发: 那么在真实的开发中,我们如何在一段代码中引入日志呢。我们不妨可以将日志先看作最初学习的输出语句。可以在如何地方输出一条信息。日志与标准输出的不同在于,日志具有等级:
- 【TRACE】:trace是一种很低的日志级别,一般不会使用。目前,我只有在SpringBoot的启动之中,略微发现一些它的影子,表示的就是默认不打印的日志。
- 【DEBUG】:debug是一种调试程序的日志级别,一般用于程序开发过程中打印一些调试日志、运行信息,可以比较随意的使用。
- 【INFO】:info是用来输出程序的一些关键信息,强调业务逻辑的运行过程信息,不能随便打印。
- 【WARN】:warn是用于输出一些警告提示信息,一般是系统进入到一种可恢复的状态时打印的信息,警告但不是严重错误。
- 【ERROR】:error是系统已经发生错误的事件,比如发生了异常,但是不想影响系统的正常运行。可以打印一些错误信息,提示开发者关注或者定位问题。
/** * 管理员 */@Slf4j@RestController@RequestMapping("/admin")public class AdminUserController {@AutowiredAdminUserService adminUserService; @AutowiredAdminLogService adminLogService; //用户详情@SaCheckLogin@RequestMapping("/searchOne")public R searchOne(@RequestBody AdminUser adminUser){AdminUser user = adminUserService.getById(adminUser.getId()); log.trace("info"+user); log.info("info"+user); log.debug("info"+user); log.info("info"+user); log.warn("info"+user); return R.success(user); }}
在使用日志的时候不直接指定由logback 进行日志记录,而使用slf4j 上层接口,进行日志的写入。这样即使,我们更换了日志系统,并不会导致代码中使用了旧日志系统的日志点报错。
结语 到此这篇关于SpringBoot快速集成Logback日志组件的文章就介绍到这了,更多相关SpringBoot集成Logback日志组件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- 解决springboot|解决springboot 部署到 weblogic 中 jar 包冲突的问题
- 产品说明丨 iOS 端使用 MobPush 快速集成方法
- Springboot打印接口的三种方式分享
- 玩转云服务器|[2021.6小白向]使用腾讯云轻量服务器快速搭建一个属于自己的博客
- Java|Inno Setup使用教程 - 打包SpringBoot+Vue前后端分离项目
- redis|Redis的使用--Java连接redis、springboot整合redis、缓存 分布锁 、redssion解决分布锁的bug(超时问题) 以及redis常见面试题
- VUE.JS|Vue+Springboot前后端分离(入门级)
- 8.2、SpringBoot启动流程--把spring应用跑起来(接8.1)
- 8.1、SpringBoot启动流程--把spring应用跑起来
- spring|一个基于SpringBoot2+Vue+Redis的企业级聚合支付系统