您的位置:首页 > 房产 > 家装 > 免费的个人简历模板 简约_桂林论坛_青岛网站建设培训学校_谷歌seo教程

免费的个人简历模板 简约_桂林论坛_青岛网站建设培训学校_谷歌seo教程

2025/1/11 17:01:15 来源:https://blog.csdn.net/jialuosi/article/details/144105756  浏览:    关键词:免费的个人简历模板 简约_桂林论坛_青岛网站建设培训学校_谷歌seo教程
免费的个人简历模板 简约_桂林论坛_青岛网站建设培训学校_谷歌seo教程

日志是开发项目中非常重要的一个环节,它是程序员在检查程序运行的手段之一。

1.日志的基础操作

1.1 日志的作用

  1. 编程期调试代码
  2. 运营期记录信息:
    * 记录日常运营重要信息(峰值流量、平均响应时长……)
    * 记录应用报错信息(错误堆栈)
    * 记录运维过程数据(扩容、宕机、报警……)

1.2 日志级别

在这里插入图片描述
使用方式:
在这里插入图片描述

2.快速开发日志对象

2.1 日志门面库

日志门面库是一种软件设计模式,它为多种不同的日志记录框架提供一个统一的接口或抽象层。这种模式允许开发者使用一个通用的API来编写日志记录代码,而不必直接依赖于任何特定的日志框架实现。

看到这里有很多人可能看不明白,我们用人话讲一下,日志记录框架就是我们经常用到的logback或者log4j,各种类型的日志记录框架应用场景不同,可能开发时候你用到的框架不满足线上的要求,那你此时就需要更换日志记录框架,而如果你使用了日志门面库,此时你只需要如下操作:

  1. 在开发阶段,你可以选择一个日志实现(如logback),并通过添加相应的依赖和配置文件(如logback.xml)来配置它。
  2. 切换日志实现:如果你需要更换为另一个日志实现(如log4j),你只需做以下几步:
    • 移除当前日志实现(logback)的依赖和配置文件。
    • 添加新日志实现(log4j)的依赖和配置文件(如log4j.properties或log4j.xml)。
    • 无需修改代码中使用日志门面库API的任何部分。

2.2 日志实现

日志记录框架是用于记录和管理系统操作事件的软件组件。它们帮助开发者在程序运行时捕获、存储和分析日志信息,这对于调试、监控和审计系统行为至关重要。以下是一些主流的日志记录框架及其特点,他有如下实现:

  • Logback:由Log4j的原开发者之一主导开发,是Spring Boot默认的日志框架,轻量级且性能优秀,功能全面。
  • Log4j:一个非常老牌的日志框架,功能强大,可以自定义日志级别、输出格式和目的地等。
  • Log4j2:Log4j的升级版,性能和功能上都有所提升,支持异步日志和插件机制。
  • JUL(Java Util Logging):Java SE的默认日志框架,功能相对基础,但对于简单的日志需求来说足够用。

2.3 SLF4J

SLF4J是一个Java日志门面库,它提供了一个简单而统一的API来记录日志,同时允许最终用户在部署他们的应用程序时插入所需的日志框架。简而言之,SLF4J定义了一个日志记录的接口,然后通过桥接与其他具体的日志框架(如logback、log4j等)进行集成,使得开发者可以在代码中使用SLF4J API,而具体的日志实现则可以在部署时决定。

SLF4J的主要特点包括:

  • 简单性:SLF4J提供了一个简单直观的API,使得日志记录变得容易。
  • 解耦:由于SLF4J是一个门面,它允许开发者在不了解具体日志实现的情况下编写代码,这使得代码与具体的日志框架解耦。
  • 灵活性:开发者可以在运行时选择使用哪种日志系统,例如logback、log4j、java.util.logging等。
  • 性能:SLF4J的API设计注重性能,特别是在参数较多的情况下,它允许延迟参数计算,直到日志级别真正启用时才计算参数值。
  • 兼容性:SLF4J支持与多种日志框架的桥接,这意味着你可以在项目中轻松切换不同的日志系统。
  • 线程安全:SLF4J是线程安全的,可以在多线程环境中使用。

使用SLF4J的基本步骤:

  1. 添加依赖:在项目的构建配置中添加SLF4J的依赖。
  2. 配置日志系统:选择并配置一个日志系统,如logback或log4j。
  3. 编写代码:在代码中使用SLF4J提供的API来记录日志。
  4. 运行和部署:在部署时,根据需要选择和配置具体的日志实现。

示例代码:
Controller层添加slf4j的注解(lombok提供),即可在相应的Controller方法中使用log.调用API
在这里插入图片描述

在这里插入图片描述

它由loggerFactory方法获取到:
在这里插入图片描述

他有如下方法:
在这里插入图片描述

3. 日志的信息

3.1 日志的格式

一个标准的,springboot默认的日志格式输出信息如下:
在这里插入图片描述
我们也可以自定义设置日志的输出格式,例如可能有的人不想显示PID的信息,只想知道时间,级别和日志信息,我们就可以手动调整。

logging:level:root: INFOorg.springframework.web: INFOorg.hibernate: WARNpattern:console: "%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n%throwable"

属性解释:

  • logging.level: 配置日志级别。这里设置了根日志级别为INFO,并为特定的包(如org.springframework.web和org.hibernate)设置了不同的日志级别。
  • logging.pattern.console: 配置控制台日志输出格式,格式可以包含:
    * %d{yyyy-MM-dd HH:mm:ss}:日志时间戳
    * %-5level:日志级别(INFO、DEBUG等),宽度为5
    * [%thread]:线程名称
    * %logger{36}:日志记录器的名称(通常是类的名称),最多显示36个字符
    * %msg:日志消息
    * %n:换行
    * %throwable:异常堆栈

3.2 输出日志

在配置中我们可以添加file属性来设置输出日志的格式以及位置

logging:level:root: INFOorg.springframework.web: INFOorg.hibernate: WARNpattern:console: "%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n%throwable"file: "%d{yyyy-MM-dd HH:mm:ss} %-5level [%thread] %logger{36} - %msg%n%throwable"file:name: info.log  # 设置日志输出文件路径
  • logging.pattern.file: 配置日志文件的输出格式,使用相同的格式。
  • logging.file.name: 配置日志文件输出路径,可以指定一个文件名或完整路径。

那么这个文件在哪呢?就在你的项目文件里面,打开就能看到
在这里插入图片描述
我重启了几次项目,看看记录的信息:
在这里插入图片描述

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com