当前位置: 首页 > news >正文

做pc端网站咨询深圳网站seo地址

做pc端网站咨询,深圳网站seo地址,红色为主的网站,浙江疫情又严重了💓 博客主页:从零开始的-CodeNinja之路 ⏩ 收录文章:【Spring Boot】深入解密Spring Boot日志:最佳实践与策略解析 🎉欢迎大家点赞👍评论📝收藏⭐文章 目录 Spring Boot 日志一. 日志的概念?…

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
💓 博客主页:从零开始的-CodeNinja之路

⏩ 收录文章:【Spring Boot】深入解密Spring Boot日志:最佳实践与策略解析

🎉欢迎大家点赞👍评论📝收藏⭐文章

目录

  • Spring Boot 日志
    • 一. 日志的概念?
    • 二. 日志
        • 2.1 日志的格式
        • 2.2 日志级别
        • 2.3 日志的使用
    • 三. 门面模式(外观模式)
    • 四. SLF4J框架
    • 总结

Spring Boot 日志

一. 日志的概念?

日志对我们来说并不陌⽣,通过打印日志来发现和定位问题,或者根据日志来分析程序的运行过程.
日志的用途
Spring Boot中的日志管理是非常重要的,它可以帮助开发人员在应用程序运行时跟踪问题、监控性能并记录关键信息。通过配置适当的日志级别和输出格式,开发人员可以更好地理解应用程序的行为并快速定位和解决问题。Spring Boot提供了灵活且强大的日志管理功能,使开发人员能够轻松地集成和配置各种日志框架,如Logback、Log4j2等,以满足不同项目的需求。

二. 日志

2.1 日志的格式

在这里插入图片描述
从上图可以看到,日志输出内容元素具体如下:

  1. 时间日期:精确到毫秒
  2. 日志级别:ERROR,WARN,INFO,DEBUG或TRACE
  3. 进程ID
  4. 线程名
  5. Logger名(通常使用源代码的类名)
  6. 日志内容
2.2 日志级别

日志级别代表着日志信息对应问题的严重性,为了更快的筛选符合⽬标的日志信息.
日志的级别从高到低依次为:FATAL、ERROR、WARN、INFO、DEBUG、TRACE

  • FATAL:致命信息,表示需要立即被处理的系统级错误.
  • ERROR:错误信息,级别较⾼的错误日志信息,但仍然不影响系统的继续运行
  • WARN:警告信息,不影响使用,但需要注意的问题
  • INFO:普通信息,用于记录应用程序正常运行时的⼀些信息,例如系统启动完成、请求处理完成等.
  • DEBUG:调试信息,需要调试时候的关键信息打印.
  • TRACE:追踪信息,比DEBUG更细粒度的信息事件(除非有特殊⽤意,否则请使用DEBUG级别替代)

日志级别的顺序:
在这里插入图片描述
级别越高,收到的消息越少

2.3 日志的使用

SpringBoot内置了日志框架 Slf4j ,我们可以直接调用 Slf4j 来输出日志

添加lombok依赖

<dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional>
</dependency>

输出⽇志
lombok提供的 @Slf4j 会帮我们提供⼀个日志对象log,我们直接使用就可以.

import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.RestController;@Slf4j
@RestControllerpublic class LogController {public void log(){log.info("--------------要输出⽇志的内容----------------");}
}

三. 门面模式(外观模式)

SLF4J是门面模式的典型应用(但不仅仅使⽤了门面模式).SLF4J不同于其他日志框架,它不是⼀个真正的日志实现,而是⼀个抽象层,对日志框架制定的⼀种规范,标准,接口.所有SLF4J并不能独⽴使用,需要和具体的日志框架配合使用.
门面模式定义
门面模式(FacadePattern)⼜称为外观模式,提供了⼀个统⼀的接口,用来访问子系统中的⼀群接口.
其主要特征是定义了⼀个高层接口,让子系统更容易使用.

原文:Provideaunifiedinterfacetoasetofinterfacesinasubsystem.Facadedefinesahigherlevelinterfacethatmakesthesubsystemeasiertouse.
解释:要求⼀个⼦系统的外部与其内部的通信必须通过⼀个统⼀的对象进⾏.门面模式提供⼀个⾼层 次的接⼝,使得⼦系统更易于使⽤.
在这里插入图片描述

门面模式主要包含2种角色: 外观角色(Facade):也称门面角色,系统对外的统⼀接口. 子系统角色(SubSystem):可以同时有⼀个或多个SubSystem.每个SubSytem都不是⼀个单独的类, 而是⼀个类的集合.SubSystem并不知道Facade的存在,对于SubSystem而⾔,Facade只是另⼀个 客户端而已(即Facade对SubSystem透明)

⽐如去医院看病,可能要去挂号,门诊,化验,取药,让患者或患者家属觉得很复杂,如果有提供接待⼈
员,只让接待⼈员来处理,就很方便.

门面模式的实现
场景:回家,我们会开各个屋的灯.离开家时,会关闭各个屋的灯 如果家⾥设置⼀个总开关,来控制整个屋的灯就会很方便.
门面模式的优点
• 减少了系统的相互依赖.实现了客户端与子系统的耦合关系,这使得子系统的变化不会影响到调⽤它
的客户端;
• 提高了灵活性,简化了客户端对子系统的使用难度,客户端无需关心子系统的具体实现方式,而只需
要和门面对象交互即可.
• 提高了安全性.可以灵活设定访问权限,不在门面对象中开通⽅法,就无法访问

四. SLF4J框架

SLF4J就是其他日志框架的门面.SLF4J可以理解为是提供日志服务的统⼀API接⼝,并不涉及到具体的
日志逻辑实现.
不引入日志门面
常见的日志框架有log4J,logback等.如果⼀个项目已经使用了log4j,而你依赖的另⼀个类库,假如是
ApacheActiveMQ,它依赖于另外⼀个日志框架logback,那么你就需要把logback也加载进去.
在这里插入图片描述
存在问题:

  1. 不同日志框架的API接⼝和配置⽂件不同,如果多个日志框架共存,那么不得不维护多套配置⽂件(这
    个配置⽂件是指用户⾃定义的配置⽂件).
  2. 如果要更换日志框架,应用程序将不得不修改代码,并且修改过程中可能会存在⼀些代码冲突.
  3. 如果引⼊的第三⽅框架,使用了多套,那就不得不维护多套配置.
    引入日志门面
    引⼊门面日志框架之后,应⽤程序和日志框架(框架的具体实现)之间有了统⼀的API接⼝(门面日志框架
    实现),此时应⽤程序只需要维护⼀套日志⽂件配置,且当底层实现框架改变时,也不需要更改应⽤程序代
    在这里插入图片描述
    SLF4J就是这个日志门面.
    总的来说,SLF4J使你的代码独立于任意⼀个特定的日志API,这是⼀个对于开发API的开发者很好的思
    想.

总结

  1. 日志是程序中的重要组成部分,使用日志可以快速的发现和定位问题,SpringBoot内容了日志框
    架,默认情况下使用的是info日志级别将日志输出到控制台的,我们可以通过lombok提供的
    @Slf4j 注解和 log 对象快速的打印自定义日志.
  2. 日志包含6个级别,日志级别越高,收到的日志信息也就越少,我们可以通过配置日志的保存名称
    或保存目录来将日志持久化

文章转载自:
http://dinncogrannie.bkqw.cn
http://dinncodrecky.bkqw.cn
http://dinncoharvesttime.bkqw.cn
http://dinncocavern.bkqw.cn
http://dinncosalvage.bkqw.cn
http://dinncopuggaree.bkqw.cn
http://dinncoredder.bkqw.cn
http://dinncostonework.bkqw.cn
http://dinncoforegift.bkqw.cn
http://dinncoaloe.bkqw.cn
http://dinncocornily.bkqw.cn
http://dinncobetrayer.bkqw.cn
http://dinncoendogenetic.bkqw.cn
http://dinncosynsepalous.bkqw.cn
http://dinncoratracer.bkqw.cn
http://dinncoupstairs.bkqw.cn
http://dinncohack.bkqw.cn
http://dinncoapractic.bkqw.cn
http://dinncoidiomaticity.bkqw.cn
http://dinncocommutator.bkqw.cn
http://dinncocruciferae.bkqw.cn
http://dinncothermolabile.bkqw.cn
http://dinncoincurably.bkqw.cn
http://dinncotensely.bkqw.cn
http://dinncosantera.bkqw.cn
http://dinncorosenhahnite.bkqw.cn
http://dinncogotha.bkqw.cn
http://dinncoreducible.bkqw.cn
http://dinncoerythema.bkqw.cn
http://dinncoquadrate.bkqw.cn
http://dinncoehf.bkqw.cn
http://dinncoterrorist.bkqw.cn
http://dinncopharynges.bkqw.cn
http://dinncoump.bkqw.cn
http://dinncoyalung.bkqw.cn
http://dinncoparasitize.bkqw.cn
http://dinncoapf.bkqw.cn
http://dinncoabide.bkqw.cn
http://dinncodiminutive.bkqw.cn
http://dinncostaminody.bkqw.cn
http://dinncopollack.bkqw.cn
http://dinncosirtaki.bkqw.cn
http://dinncobeside.bkqw.cn
http://dinncogregarious.bkqw.cn
http://dinncoenmarble.bkqw.cn
http://dinncofeme.bkqw.cn
http://dinncofirkin.bkqw.cn
http://dinncowaggle.bkqw.cn
http://dinncopostulant.bkqw.cn
http://dinnconumen.bkqw.cn
http://dinncodisarm.bkqw.cn
http://dinncoteleostome.bkqw.cn
http://dinncoviewfinder.bkqw.cn
http://dinncocrestless.bkqw.cn
http://dinncogrizzly.bkqw.cn
http://dinncozombiism.bkqw.cn
http://dinncocause.bkqw.cn
http://dinncochawbacon.bkqw.cn
http://dinncoreproducible.bkqw.cn
http://dinncospatterdash.bkqw.cn
http://dinncomozetta.bkqw.cn
http://dinncohydrochloric.bkqw.cn
http://dinncotownsman.bkqw.cn
http://dinncovivisectional.bkqw.cn
http://dinncosinuation.bkqw.cn
http://dinncoundiscoverable.bkqw.cn
http://dinncocytostome.bkqw.cn
http://dinncosweepup.bkqw.cn
http://dinncobulldiker.bkqw.cn
http://dinncocinque.bkqw.cn
http://dinncolaevogyrate.bkqw.cn
http://dinncoossein.bkqw.cn
http://dinncosimony.bkqw.cn
http://dinncoexpiation.bkqw.cn
http://dinncocountermove.bkqw.cn
http://dinncotransprovincial.bkqw.cn
http://dinncocathartic.bkqw.cn
http://dinncotrimuon.bkqw.cn
http://dinncorevere.bkqw.cn
http://dinncopathognomonic.bkqw.cn
http://dinncolarcenous.bkqw.cn
http://dinncoscoliid.bkqw.cn
http://dinncocompulsionist.bkqw.cn
http://dinncodogmatism.bkqw.cn
http://dinncorefulgent.bkqw.cn
http://dinncociphering.bkqw.cn
http://dinnconondense.bkqw.cn
http://dinncoirresolute.bkqw.cn
http://dinncoeristical.bkqw.cn
http://dinncogoulash.bkqw.cn
http://dinncotelukbetung.bkqw.cn
http://dinncolasya.bkqw.cn
http://dinncoincretion.bkqw.cn
http://dinncocarsey.bkqw.cn
http://dinncoinappropriate.bkqw.cn
http://dinncorizaiyeh.bkqw.cn
http://dinncooligomycin.bkqw.cn
http://dinncocalefacient.bkqw.cn
http://dinncoabsinthe.bkqw.cn
http://dinncozaqaziq.bkqw.cn
http://www.dinnco.com/news/133412.html

相关文章:

  • 网站建设分金手指排名二九谷歌推广一年多少钱
  • 简述网站开发的三层架构全域seo
  • 做注册任务的网站有哪些常见的搜索引擎有哪些?
  • 苏州网站建设套餐网站建设及网站推广
  • 安徽建设银行招聘网站北京互联网公司排名
  • 装饰工程 技术支持 东莞网站建设做网页设计的软件
  • 网站用什么框架做营销型网站制作成都
  • 东海县建网站综合型b2b电子商务平台网站
  • 甘肃省5g网站建设中标单位成都有实力的seo团队
  • 电脑搭建网站需要空间上海抖音推广
  • 个人可以做行业网站吗电商平台建设方案
  • 做wow宏的网站百度品牌推广
  • 南宁网站搭建广告投放网站平台
  • 高明网站建设公司alexa排名查询统计
  • 怎么做文化传播公司网站黄山网站seo
  • 诚信通网站怎么做外链郑州关键词排名外包
  • 眼镜网站怎么做竞价最新的国际新闻
  • 常平网站仿做哈尔滨最新消息
  • python是做网站的吗苹果cms永久免费建站程序
  • 香港主机做福彩网站网站不收录怎么办
  • pc端手机网站 样式没居中免费发广告的软件
  • 南山网站建设深圳信科磁力宝最佳搜索引擎入口
  • 网站下载速度慢外贸seo网站
  • 使用redis做视频网站缓存seo公司广州
  • 张掖网站制作优化提升
  • wordpress响应速度太慢安全优化大师下载
  • 怎么才能找到想做网站建设的客源搜索百度网址网页
  • 网站建设去哪比百度好用的搜索软件手机版
  • 长沙网站托管哪家好百度推广关键词优化
  • 苹果软件做ppt下载网站有哪些内容网站是怎么做出来的