南宁建站模板大全,清爽网站模板,网站建设全流程,最新新闻事件报道Spring Boot 日志 一#xff0c;日志用途
尽管一个项目在没有日志记录的情况下可能能够正常运行#xff0c;但是日志记录对于我们来说却是至关重要的#xff0c;它存在以下功能#xff1a;
1#xff0c;故障排查和调试#xff1a;当项目出现异常或者故障时#xff0c;…
Spring Boot 日志 一日志用途
尽管一个项目在没有日志记录的情况下可能能够正常运行但是日志记录对于我们来说却是至关重要的它存在以下功能
1故障排查和调试当项目出现异常或者故障时日志记录可以快速帮助我们定位到异常的部分以及知道异常的原因。
2性能监测和优化通过在关键代码路径中添加日志记录可以了解应用程序的性能表现并根据性能表现优化程序。
3安全审计和监控通过监视和分析系统日志可以检测和识别潜在的安全威胁如入侵、恶意行为或非法访问等非法行为。
4数据统计和分析通过对日志信息进行统计和分析可以获取关于用户行为、系统使用情况和业务趋势等有价值信息并分析。 二日志框架
日志框架常见的两个概念
日志门面Logging Facade和日志实现Logging Implementation是在日志框架中出现的两个概念。
日志门面是一个抽象层它定义了一组统一的日志接口用于在应用程序中记录日志。它的作用是将应用程序代码与具体的日志实现解耦使得应用程序代码不直接依赖于某个具体的日志框架。通过使用日志门面可以在运行时灵活地切换不同的日志实现而无需修改应用程序的代码。
日志实现是指具体的日志框架的实现它实现了日志门面所定义的接口并提供了实际的日志记录功能。不同的日志实现提供了不同的配置选项、功能和性能特性。开发人员可以根据项目需求选择合适的日志实现并使用相应的配置进行日志记录。
要使用日志门面需要在应用程序中引入相应的日志门面库(SLF4J和Commons Logging)并通过配置文件或代码设置具体的日志实现(Log4j和Logback)。这样应用程序就可以通过调用日志门面的接口来记录日志而具体的日志记录将由所配置的日志实现来处理。这种分离的设计允许开发人员更方便地切换和管理日志框架并提供了更大的灵活性和扩展性。
常见的日志框架图 三日志信息
Spring Boot 项目刚创建好直接运行项目后就会有日志信息打印日志信息如下 以上就是新创建的项目运行后控制台打印的日志信息说明 Spring Boot 项目内置了日志框架。 日志信息格式 四日志级别
日志级别介绍及分类
日志级别Log Levels是指日志消息的优先级或者重要程度它用于对日志的不同类型和重要程度进行分类和过滤。
不同的日志框架可能使用不同的命名和数量的日志级别但基本概念是相似的。以下是常见的几个标准日志级别
1TRACE追踪最低级别的日志包含详细的调试信息用于追踪代码的执行流程如方法的输入参数、内部状态等。
2DEBUG调试用于输出调试信息在开发和调试阶段使用帮助排查问题和跟踪代码执行情况以及验证程序的行为。
3INFO信息提供程序运行过程中的重要信息用于向用户提供一些关键的操作状态和进度如程序启动关闭、配置项变更等。
4WARN警告表示潜在的问题或异常情况不会阻止程序继续执行但可能会影响程序的正常运行需要开发人员注意。
5ERROR错误表示错误情况通常表示某个功能或步骤无法正常完成但程序仍然可以继续运行需要开发人员关注和解决。
6FATAL致命最高级别的日志表示最严重的错误表示程序无法继续运行会导致应用程序的中断或崩溃如系统崩溃。
特别说明以上日志级别由上往下依次增强而日志级别越高控制台打印出的日志信息就越少但打印出的日志信息越重要。 日志级别设置
项目设置的日志级别默认为 INFO也就是控制台只打印收到的INFOWARNERRORFATAL级别的日志而TRACE和DEBUG级别的日志不进行打印。
如果想打印DEBUG级别以上的日志信息就需要对日志级别进行配置操作。那如何进行日志级别的设置呢
解答日志级别配置只需要在配置文件中设置 1ogging.leve1 配置项就行配置文件如下 项目重新运行结果就可以看到DEBUG级别以上的日志了。 五日志打印
在实际开发中有时我们需要自定义地打印一些自定义的日志信息根据自定义的日志信息进行程序代码的调试以及其他操作。
自定义打印日志的实现需要2步操作分别为在程序中获取打印对象和调用打印对象的相关语法输出打印的日志内容。
1在程序中获取打印对象
在程序中获取日志对象需要使用日志工厂LoggerFactory 2调用打印对象的相关方法
public void someMethod() {log.trace(trace 级别);log.debug(debug 级别);log.info(info 级别);log.warn(warn 级别);log.error(error 级别);
}3在项目的启动类实例化对象并调用上述方法运行项目就可以在控制台上看到项目的打印日志。 注意说明因上面操作将日志级别设置为了DEBUG所以只打印了DEBUG级别以上的日志信息而TRACE级别的日志信息没打印。 六日志持久化
日志持久化是指将应用程序的日志信息保存到持久化存储介质中以便后续的检索分析和备份。
常见的日志持久化方式就是将应用程序的日志信息保存到本地目录或文件中。
1设置日志文件的保存目录
# 日志文件的保存目录设置
logging:file:path: D:\Project Log项目运行后系统会将日志信息保存到指定路径目录下名为spring.log的文件中该文件是系统自动创建的。 2设置日志文件的保存文件名
# 日志文件的保存文件设置
logging:file:name: D:\Project Log\Spring Boot.log项目运行后系统会将日志信息保存到指定保存文件名为Spring Boot.log的文件中。 结语
这就是本期博客的全部内容啦如果有什么其他的问题无法自己解决可以在评论区留言哦
最后如果你觉得这篇文章写的还不错的话或者有所收获的话麻烦小伙伴们动动你们的小手给个三连呗点赞评论✍收藏多多支持一下各位的支持是我最大的动力后期不断更新优质的内容来帮助大家一起进步。那我们下期见