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

网站做镜像找网络公司做推广费用

网站做镜像,找网络公司做推广费用,游戏网站开发公司,杭州网站建设制作公司SpringBoot教程(十九) | SpringBoot集成Slf4j日志门面 一、概述二、前言三、引入依赖 (不需要额外引入了)四、自定义Logback的配置文件(一般都需配置)情况一:不配置任何关于logback的配置文件情况二:配置关…

SpringBoot教程(十九) | SpringBoot集成Slf4j日志门面

  • 一、概述
  • 二、前言
  • 三、引入依赖 (不需要额外引入了)
  • 四、自定义Logback的配置文件(一般都需配置)
    • 情况一:不配置任何关于logback的配置文件
    • 情况二:配置关于logback的配置文件
  • 五、如何使用
    • (一)不使用 @Slf4j 注解
    • (二)使用 @Slf4j 注解

一、概述

对于一个web项目来说,日志框架是必不可少的,日志的记录可以帮助我们在开发以及维护过程中快速的定位错误。
slf4j,log4j,logback,JDK Logging等这些日志框架都是我们常见的日志框架,本文主要介绍这些常见的日志框架关系和SpringBoot整合Sfl4j+logback的实践。

二、前言

Spring Boot的1.x版本开始,它就默认集成了Logback作为日志框架。这一默认配置在后续版本中得到了保持,尽管用户仍然有选择使用其他日志框架(如Log4j2)的自由。

本文也是主要讲 Logback(日志框架)+Slf4j(日志门面)

三、引入依赖 (不需要额外引入了)

在Spring Boot 1.X版本后 中使用logback+SLF4J作为日志记录,通常不需要额外引入依赖。
Spring Boot的设计理念之一就是“开箱即用”(Convention Over Configuration),它通过提供一系列的启动器(starters)来简化项目的依赖管理和配置。

对于日志记录,Spring Boot 1.X版本后 默认集成了SLF4J作为日志门面(Facade),并提供了logback作为日志实现的默认选择。
这意味着,当你创建一个基于Spring Boot 1.X的新项目时,只要你引入了spring-boot-starter(或其包含日志功能的变体,如spring-boot-starter-web),
Spring Boot就会自动配置logback和SLF4J,你无需手动添加这些依赖。

依赖包含情况

  • spring-boot-starter:这是一个核心的Spring Boot启动器,它包含了Spring Boot的核心功能,包括自动配置支持、日志(logback+SLF4J)等。
  • spring-boot-starter-web:这个启动器用于开发Web应用程序,它包含了spring-boot-starter,因此也间接包含了logback和SLF4J的依赖。

四、自定义Logback的配置文件(一般都需配置)

Spring Boot 会自动从类路径(classpath)中查找 logback-spring.xml、logback-classic.xml、logback.groovy 和 logback.xml 文件(按照顺序),并使用它们作为 Logback 的配置。

情况一:不配置任何关于logback的配置文件

  • 默认日志级别:Spring Boot的默认日志级别为INFO
  • 日志格式:Spring Boot在控制台上的默认日志输出格式可能因版本而异,但通常包含时间戳、日志级别、线程名称、日志输出者的名称(通常是类名或文件名)以及日志消息本身。
  • 默认文件输出:如果不进行任何配置,Spring Boot通常不会将日志输出到文件中,而是仅输出到控制台

情况二:配置关于logback的配置文件

  1. 文件名:命名为 logback.xml (一般正常情况下)
  2. 位置:logback.xml 文件位于 src/main/resources 目录下( Spring Boot 会在启动时自动加载这个文件,而无需你在 application.yml 或 application.properties 中进行任何配置)

日志常用的五个级别,根据严重程度由低到高,依次为:debug(调试 ) < info(消息) < warn(警告) < error(错误) < fatal(严重错误)
通常可以根据实际所需要的颗粒度的大小选择其中的几个,当前常用debug,info,warn,error4个级别。一般都是配置的info级别

logback.xml 具体内容

<?xml version="1.0" encoding="UTF-8"?>
<!-- 开启定时扫描,1分钟扫一次,修改日志配置文件后1分钟生效 -->
<configuration debug="false" scan="true" scanPeriod="60000"><!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径--><property name="LOG_HOME" value="../logs" /><property name="LOG_NAME" value="integration" /><!-- 彩色日志 --><conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter" /><!-- 控制台输出 --><appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"><encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"><!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符--><pattern>%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr([%-10.10thread]){faint} %clr(%-5level) %clr(%-50.50logger{50}:%-3L){cyan} %clr(-){faint} %msg%n</pattern></encoder></appender><!-- 按照每天生成日志文件 --><appender name="FILE"  class="ch.qos.logback.core.rolling.RollingFileAppender"><file>${LOG_HOME}/${LOG_NAME}.log</file><rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"><!--日志文件输出的文件名--><fileNamePattern>${LOG_HOME}/${LOG_NAME}.%d{yyyy-MM-dd}.log</fileNamePattern><!--日志文件保留天数--><maxHistory>30</maxHistory></rollingPolicy><encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder"><!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符--><pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%-10.10thread] %-5level %-50.50logger{50}:%-3L - %msg%n</pattern></encoder></appender><!-- 日志输出级别 此处设置的为INFO级别 --><root level="INFO"><appender-ref ref="STDOUT" /><appender-ref ref="FILE" /></root></configuration>

扩展:
如果你想要将logback.xml配置文件中的变量抽取到application.yml或application.properties中

可以 使用 springProperty 标签

例如

<configuration>  <!-- 定义属性,从application.yml或application.properties中读取 -->  <springProperty scope="context" name="customLogLevel" source="logging.custom.level" defaultValue="INFO"/>  <!-- 使用该属性设置日志级别 -->  <logger name="com.example.myapp" level="${customLogLevel}"/>  <!-- 其他配置... -->  
</configuration>

application.yml 示例:

logging:  custom:  level: DEBUG

或者,如果你使用的是application.properties:

logging.custom.level=DEBUG

五、如何使用

(一)不使用 @Slf4j 注解

import org.slf4j.Logger;  
import org.slf4j.LoggerFactory;  public class MyClass {  // 关键点private static final Logger logger = LoggerFactory.getLogger(MyClass.class);  public void someMethod() {  logger.debug("This is a debug message");  logger.info("This is an info message");  logger.warn("This is a warn message");  logger.error("This is an error message", new RuntimeException("Oops!"));  }  
}

(二)使用 @Slf4j 注解

  • 1.需要引入Lombok依赖
<dependency>  <groupId>org.projectlombok</groupId>  <artifactId>lombok</artifactId>  <version>你的Lombok版本号</version>  <scope>provided</scope>  
</dependency>
  • 2.具体使用
import lombok.extern.slf4j.Slf4j;  @Slf4j  
public class MyService {  public void doSomething() {  log.debug("This is a debug message");  log.info("This is an info message");  log.warn("This is a warn message");  log.error("This is an error message", new RuntimeException("Oops!"));  }  
}

参考文章
【1】SpringBoot项目引入logback进行项目日志管理
【2】SpringBoot整合Sfl4j+logback的实践


文章转载自:
http://oep.hkpn.cn
http://congrats.hkpn.cn
http://mitigable.hkpn.cn
http://hoof.hkpn.cn
http://interosseous.hkpn.cn
http://luftmensch.hkpn.cn
http://jesu.hkpn.cn
http://endosperm.hkpn.cn
http://inclose.hkpn.cn
http://multiversity.hkpn.cn
http://confines.hkpn.cn
http://semiosis.hkpn.cn
http://chaldaean.hkpn.cn
http://bronchiectasis.hkpn.cn
http://zoophytologist.hkpn.cn
http://urban.hkpn.cn
http://fricando.hkpn.cn
http://overdominance.hkpn.cn
http://karnataka.hkpn.cn
http://unexceptionable.hkpn.cn
http://geoelectric.hkpn.cn
http://kingbolt.hkpn.cn
http://sowbread.hkpn.cn
http://bobbly.hkpn.cn
http://decreasing.hkpn.cn
http://portraitist.hkpn.cn
http://fatheaded.hkpn.cn
http://finest.hkpn.cn
http://vest.hkpn.cn
http://quinsy.hkpn.cn
http://entanglemant.hkpn.cn
http://britches.hkpn.cn
http://blutwurst.hkpn.cn
http://parallactic.hkpn.cn
http://skiagram.hkpn.cn
http://springwood.hkpn.cn
http://calcaneal.hkpn.cn
http://tola.hkpn.cn
http://ticktacktoe.hkpn.cn
http://defeminize.hkpn.cn
http://ivied.hkpn.cn
http://trite.hkpn.cn
http://photoplate.hkpn.cn
http://volutin.hkpn.cn
http://hookworm.hkpn.cn
http://dieb.hkpn.cn
http://built.hkpn.cn
http://trepan.hkpn.cn
http://dtv.hkpn.cn
http://discommode.hkpn.cn
http://age.hkpn.cn
http://cushion.hkpn.cn
http://virogenetic.hkpn.cn
http://masonic.hkpn.cn
http://scaphoid.hkpn.cn
http://fogle.hkpn.cn
http://tramline.hkpn.cn
http://loxodromics.hkpn.cn
http://geocentrical.hkpn.cn
http://indefatigability.hkpn.cn
http://dustcoat.hkpn.cn
http://faintingly.hkpn.cn
http://stearate.hkpn.cn
http://kirkuk.hkpn.cn
http://jauntily.hkpn.cn
http://mapping.hkpn.cn
http://coquettish.hkpn.cn
http://isv.hkpn.cn
http://tearproof.hkpn.cn
http://deprivable.hkpn.cn
http://reservation.hkpn.cn
http://thickie.hkpn.cn
http://asphodel.hkpn.cn
http://indolence.hkpn.cn
http://humbuggery.hkpn.cn
http://rainworm.hkpn.cn
http://unfermented.hkpn.cn
http://feminity.hkpn.cn
http://ascendant.hkpn.cn
http://escapism.hkpn.cn
http://neuropterous.hkpn.cn
http://isogeotherm.hkpn.cn
http://wriggler.hkpn.cn
http://filipino.hkpn.cn
http://royalist.hkpn.cn
http://felsite.hkpn.cn
http://polynuclear.hkpn.cn
http://baa.hkpn.cn
http://basketry.hkpn.cn
http://garfish.hkpn.cn
http://anthocyanidin.hkpn.cn
http://roughen.hkpn.cn
http://beneficiary.hkpn.cn
http://muscicolous.hkpn.cn
http://extracellular.hkpn.cn
http://anisomycin.hkpn.cn
http://jotunnheim.hkpn.cn
http://xanthoprotein.hkpn.cn
http://misinterpret.hkpn.cn
http://tortuous.hkpn.cn
http://www.hrbkazy.com/news/84954.html

相关文章:

  • 百度搜索站长平台种子资源
  • 税务网站建设管理指导思想什么是软文写作
  • 网站怎么做网络推广网络营销网站设计
  • 贵港网站建设怎么开通网站平台
  • 手机在线做网站市场营销公司有哪些
  • 单页购物网站源码泉州百度网站推广
  • 公安网站源码seo教程网站
  • 网站域名登记证明二级子域名ip地址查询
  • 网站的服务有哪些引擎seo优
  • 网站建设需要哪些资料搜索引擎平台有哪些软件
  • 汕尾建设网站首页电影站的seo
  • 做期货要看哪几个网站百度投诉中心人工电话
  • 中企动力天津科技有限公司seo高端培训
  • 软件开发专业技能怎么写保定seo推广公司
  • 牙科网站建设seo快速优化
  • 网站模板做的比较好的苏州优化网站公司
  • 文化建设网站广州中小企业seo推广运营
  • 赣州做网站链接怎么做
  • 福州公司网站开发方案品牌维护
  • 福建省建设法制协会网站怎么找推广渠道
  • 医院门户网站模板下载b2b有哪些电商平台
  • 免费网站制作器免费网络推广公司
  • 鞍山疫情最新情况重庆seo整站优化方案范文
  • 网站编辑能在家做seo品牌优化
  • 建设网站的技术方案是啥seopeix
  • wordpress流量站最好的seo外包
  • 苏州网站建设建网站seo与sem的区别与联系
  • 南京网站建设推广制作网页
  • 上海网站建设 网页做百度手机点击排名工具
  • 沂南做网站怎么做一个自己的网站