SpringBoot记录日志

springBOO记录日志

  • SpringBoot记录日志
  • 配置文件
  • 相关依赖
    • 相关注解
  • 代码中的使用

SpringBoot记录日志

springBoot集成了logback 日志
在resources下创建名为logback-spring.xml文件,内容如下

配置文件


<configuration>
	<include resource="org/springframework/boot/logging/logback/defaults.xml"/>
	<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
		<filter class="ch.qos.logback.classic.filter.LevelFilter">
			<level>INFOlevel>
		filter>
		<encoder>
			<pattern>%date [%thread] %-5level [%logger{50}] %file:%line - %msg%npattern>
			<charset>UTF-8charset>
		encoder>
	appender>

	<appender name="FILE_INFO" class="ch.qos.logback.core.rolling.RollingFileAppender">
		
		<filter class="ch.qos.logback.classic.filter.LevelFilter">
			
			<level>ERRORlevel>
			
			<onMatch>DENYonMatch>
			
			<onMismatch>ACCEPTonMismatch>
		filter>
		
		
		
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			
			<FileNamePattern>logs/info.created_on_%d{yyyy-MM-dd}.part_%i.logFileNamePattern>
			
			<maxHistory>90maxHistory>
			
			
			<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
				
				<maxFileSize>2MBmaxFileSize>
			timeBasedFileNamingAndTriggeringPolicy>
		rollingPolicy>
		
		
		
		<encoder>
			<pattern>%date [%thread] %-5level [%logger{50}] %file:%line - %msg%npattern>
			<charset>UTF-8charset> 
		encoder>
	appender>

	<appender name="FILE_ERROR" class="ch.qos.logback.core.rolling.RollingFileAppender">
		
		<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
			<level>Errorlevel>
		filter>
		
		
		
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			
			<FileNamePattern>logs/error.created_on_%d{yyyy-MM-dd}.part_%i.logFileNamePattern>
			
			<maxHistory>90maxHistory>
			<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
				
				<maxFileSize>2MBmaxFileSize>
			timeBasedFileNamingAndTriggeringPolicy>
		rollingPolicy>
		<encoder>
			<pattern>%date [%thread] %-5level [%logger{50}] %file:%line - %msg%npattern>
			<charset>UTF-8charset> 
		encoder>
	appender>

	<root level="info">
		<appender-ref ref="CONSOLE"/>
		<appender-ref ref="FILE_INFO"/>
		<appender-ref ref="FILE_ERROR"/>
	root>
	
	<logger name="com.xxx" level="debug">  logger>
configuration>

相关依赖

在项目中添加依赖

		<dependency>
			<groupId>org.projectlombokgroupId>
			<artifactId>lombokartifactId>
		dependency>

lombok 可以大大提高开发的效率,主要功能为简化get、set、toString、构造方法、日志等

相关注解

常用的注解有@Data、@AllArgsConstructor、@NoArgsConstructor、@Slf4j、@ToString
这些注解的作用依次为 生成get、set;生成带有全部参数的构造方法;生成无参的构造方法;生成日志对象、生成toString方法

代码中的使用

重点说的是日志操作
日志的级别从高到低依次为:
log.fatal() 致命错误,将导致应用程序退出。
log.error() 错误,但仍然不影响系统的继续运行。
log.warn() 潜在的错误。
log.info() 打印运行过程,一般和在粗粒度级别上。
log.debug() 调试用,一般用于细粒度级别上。
log.trace() 追踪
在生成环境中使用info级别 日志,
在发生异常的时候也就是try、catch的时候在catch块中要是用error级别的日志,并打印堆栈信息,方便在后台查找错误信息

你可能感兴趣的:(SpringBoot,SpringBoot日志)