`
阅读更多

SpringBoot Logback配置,SpringBoot日志配置

 SpringBoot springProfile属性配置

 

================================

©Copyright 蕃薯耀 2018年3月26日

http://fanshuyao.iteye.com/

 

将logback-spring.xml或者logback.xml放在src/main/resources下,springBoot日志框架会自动识别日志配置。

建议使用logback-spring.xml命名,因为可以使用springBoot的高级属性(springProfile):可以加上开发模式、测试模式、生产模式的配置,利于多环境打包。

 

<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="false">

	<!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
	<property name="LOG_HOME" value="/home" />
	<property name="pattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n" />
	
	<!-- 控制台输出 -->
	<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
		<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
			<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
			<pattern>${pattern}</pattern>
		</encoder>
	</appender>
	
	<!-- 控制台输出 -->
	<!-- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
		<layout class="ch.qos.logback.classic.PatternLayout">
			<springProfile name="dev">
				<Pattern>%date [%thread] %-5level %logger{80} - %msg%n</Pattern>
			</springProfile>
	    </layout>
	</appender> -->
	
	<!-- 按照每天生成日志文件 -->
	<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			<!--日志文件输出的文件名-->
			<FileNamePattern>${LOG_HOME}/TestWeb.log.%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>${pattern}</pattern>
		</encoder>
		
		<!--日志文件最大的大小-->
		<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
			<MaxFileSize>10MB</MaxFileSize>
		</triggeringPolicy>
	</appender>

	<!-- 日志输出级别 -->
	<root level="INFO">
		<appender-ref ref="STDOUT" />
	</root>
	
</configuration>

 

 

springProfile官方说明:

 

The <springProfile> tag lets you optionally include or exclude sections of configuration based on the active Spring profiles. Profile sections are supported anywhere within the <configuration> element. Use the name attribute to specify which profile accepts the configuration. Multiple profiles can be specified with a comma-separated list. The following listing shows three sample profiles:

<springProfile name="staging">
	<!-- configuration to be enabled when the "staging" profile is active -->
</springProfile>

<springProfile name="dev, staging">
	<!-- configuration to be enabled when the "dev" or "staging" profiles are active -->
</springProfile>

<springProfile name="!production">
	<!-- configuration to be enabled when the "production" profile is not active -->
</springProfile>

 

例子:

使用springProfile配置,logback日志配置文件必须命名为:logback-spring.xml

 

<springProfile name="dev">
		<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
			<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
				<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
				<pattern>---dev - %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
			</encoder>
		</appender>
</springProfile>
	
<springProfile name="test">
		<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
			<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
				<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
				<pattern>===test  %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
			</encoder>
		</appender>
</springProfile>
	
<springProfile name="zprod">
		<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
			<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
				<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
				<pattern>+++zprod  %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
			</encoder>
		</appender>
</springProfile>

 

然后在application.properties配置spring.profiles.active属性:

spring.profiles.active=zprod

 

 

================================

©Copyright 蕃薯耀 2018年3月26日

http://fanshuyao.iteye.com/

1
0
分享到:
评论
1 楼 蕃薯耀 2018-03-26  
SpringBoot Logback配置,SpringBoot日志配置

========
蕃薯耀

相关推荐

    springboot-logback配置

    springboot-logback日志文件配置

    springboot日志框架logback异步输出配置

    目前所有的日志记录方式采用的都是同步的方式,即直接将日志写入文件。每次日志输出到文件都会进行一次磁盘IO,在多应用的时候这种效果会导致一定的线程运行延迟,所以可以采用异步的方式处理。 采用异步写日志的...

    SpringBoot+Logback实现一个简单的链路追踪功能

    然后,通过配置Logback,我们可以在每个日志条目中自动包含这些信息,这样就能确保同一请求的所有日志条目都具有相同的标识符,便于后续分析。 实现链路追踪的基本步骤如下: 1. **创建日志拦截器**:首先,我们...

    clickhouse+springboot+logback的Demo

    本示例"clickhouse+springboot+logback的Demo"是一个基于大数据项目的模板,它整合了ClickHouse数据库、SpringBoot框架以及Logback日志系统。让我们深入探讨这三个核心组件以及它们如何协同工作。 首先,ClickHouse...

    springboot+logback输出日志文件1

    Spring Boot 使用 Logback 输出日志文件 Spring Boot 提供了多种日志记录工具,包括 Logback、Log4J2 和 Java Util Logging。默认情况下,Spring Boot 使用 Logback 作为日志记录工具。在日志记录过程中,我们可以...

    SpringBoot Logback日志记录到数据库的实现方法

    SpringBoot Logback日志记录到数据库的实现方法 在本文中,我们将详细介绍SpringBoot Logback日志记录到数据库的实现方法。Logback是一个流行的日志记录框架,能够帮助开发者轻松地记录和管理应用程序中的日志信息...

    logback+springboot的基本使用方式.zip

    而日志系统作为任何应用的重要组成部分,Logback作为SLF4J(Simple Logging Facade for Java)的实现,以其高效、可配置性著称,常被用于SpringBoot项目中。本文将详细介绍如何在SpringBoot项目中集成和使用Logback...

    springboot logback 自定义配置

    logging.config=classpath:config/logback-spring.xml,把config文件夹复制到resource下即可,logback-spring.xml不需要修改,路径和日志大小格式等配置在logback.properties中。

    springboot 日志配置文件 logback

    springboot 日志配置文件 logback 它当前分为以下三个模块: logback-core:其它两个模块的基础模块。 logback-classic:它是log4j的一个改良版本,同时它完整实现了slf4j API使你可以很方便地更换成其它日志系统如...

    SpringBoot-logback

    现在,当你的SpringBoot应用运行时,它会根据`logback.xml`配置来记录日志,区分不同级别,并自动按日期归档。例如,你可以通过`@Slf4j`注解或者`LoggerFactory.getLogger()`获取一个Logger实例,然后调用`logger....

    在SpringBoot中使用logback优化异常堆栈的输出.doc

    SpringBoot默认的日志框架是Logback,它具有强大的日志配置能力。为了简化异常堆栈的输出,我们将借助第三方库`ogstash-logback-encoder`中的`ShortenedThrowableConverter`。此转换器可以在非JSON格式的日志输出中...

    SpringBoot+tk.Mybatis整合+yml配置+logback配置

    在 SpringBoot 中,`application.yml` 文件用于定义配置属性,如服务器端口、数据库连接信息、日志配置等。可以通过 `@Value` 注解或 `@ConfigurationProperties` 来注入这些配置。 3. **Logback 配置**: Logback...

    SpringBoot logback日志框架使用过程解析

    在SpringBoot项目中,可以直接将日志配置文件放在resources目录下。 简单使用时,也可以不使用日志配置文件,将日志相关的配置直接放在application.yml中。例如: logging: file: root.log level: ...

    springBoot+druid+mybatis+redis+logback

    用户需要按照文件的指示,配置相关组件,例如设置SpringBoot的启动类、配置Druid的数据源、MyBatis的Mapper文件和XML配置、Redis的连接信息以及Logback的日志配置,然后就可以运行和测试这个平台的各个功能了。

    SpringBoot之LogBack配置详解

    SpringBoot之LogBack配置详解 LogBack是基于Slf4j的日志框架,默认集成在Spring Boot中。默认情况下,Spring Boot是以INFO级别输出到控制台。...LogBack提供了灵活的日志配置方式,可以满足不同项目的需求。

    springboot、logback源码解读

    同时,了解Spring Boot如何与Logback整合,以及如何使用Spring Boot提供的各种日志配置选项,对于构建高性能日志系统也是必不可少的。总之,这些知识点有助于开发者在应用中更好地监控和调试,从而确保应用程序的...

    springboot配置logback日志管理过程详解

    SpringBoot 配置 Logback 日志管理过程详解 本文将详细介绍 SpringBoot 配置 Logback 日志管理过程的知识点,通过示例代码,帮助读者更好地理解Logback日志管理在 SpringBoot 中的应用。 Logback 简介 Logback 是...

Global site tag (gtag.js) - Google Analytics