首页 分享 Spring Boot 配置中心 多环境配置日志级别 logback

Spring Boot 配置中心 多环境配置日志级别 logback

来源:花匠小妙招 时间:2024-12-06 12:55

Spring Boot 配置中心 多环境配置日志级别 logback

最新推荐文章于 2024-10-11 20:46:08 发布

JavaAlpha 于 2019-10-28 15:12:50 发布

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

说明:根据不同的环境打印不同级别的日志或者输出日志到不同的文件路径。

 application-dev.yml 配置

# 日志配置

logging:

path: D:logdev

config: classpath:logback.xml

level:

root: INFO

application-test.yml 配置(pro可以一样)

# 日志配置

logging:

path: /data/logs

config: classpath:logback.xml

level:

root: INFO

logback.xml 配置

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

<configuration debug="false">

<!--定义日志文件的存储地址 从springboot配置文件中获取路径,勿在 LogBack 的配置中使用相对路径-->

<springProperty scope="context" name="LOG_PATH" source="logging.path"/>

<!--springboot配置文件中获取日志级别-->

<springProperty scope="context" name="LOG_LEVEL" source="logging.level.root"/>

<!-- 控制台输出-->

<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">

<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">

<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->

<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>

</encoder>

</appender>

<!-- 按照每天生成日志文件 -->

<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">

<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">

<!--日志文件输出的文件名-->

<FileNamePattern>${LOG_PATH}/server-api.log.%d{yyyy-MM-dd}.%i.log</FileNamePattern>

<!--日志文件保留天数-->

<MaxHistory>30</MaxHistory>

<!--日志文件最大的大小-->

<MaxFileSize>10MB</MaxFileSize>

</rollingPolicy>

<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">

<!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->

<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>

</encoder>

</appender>

<!--myibatis log configure-->

<!--<logger name="com.apache.ibatis" level="TRACE"/>-->

<logger name="java.sql.Connection" level="INFO"/>

<logger name="java.sql.Statement" level="INFO"/>

<logger name="java.sql.PreparedStatement" level="INFO"/>

<!-- 日志输出级别 -->

<!--Logger 可以被分配级别。级别包括:TRACE、DEBUG、INFO、WARN 和 ERROR,定义于ch.qos.logback.classic.Level类。如果 logger没有被分配级别,那么它将从有被分配级别的最近的祖先那里继承级别。root logger 默认级别是 DEBUG。-->

<!--<root level="INFO">

<appender-ref ref="STDOUT" />

<appender-ref ref="FILE" />

</root>-->

<!--开发环境:打印控制台-->

<springProfile name="dev">

<root level="${LOG_LEVEL}">

<appender-ref ref="STDOUT" />

<appender-ref ref="FILE" />

</root>

</springProfile>

<!--测试环境:打印控制台-->

<springProfile name="test">

<!-- 打印sql -->

<root level="${LOG_LEVEL}">

<appender-ref ref="STDOUT" />

<appender-ref ref="FILE" />

</root>

</springProfile>

<!--生产环境:打印控制台和输出到文件-->

<springProfile name="prod">

<root level="${LOG_LEVEL}">

<appender-ref ref="STDOUT" />

<appender-ref ref="FILE" />

</root>

</springProfile>

</configuration>

主要代码:

<springProperty scope="context" name="LOG_PATH" source="logging.path"/>

<springProperty scope="context" name="LOG_LEVEL" source="logging.level.root"/>

<springProfile name="dev">

<root level="${LOG_LEVEL}">

<appender-ref ref="STDOUT" />

<appender-ref ref="FILE" />

</root>

</springProfile>

<springProfile name="test">

<root level="${LOG_LEVEL}">

<appender-ref ref="STDOUT" />

<appender-ref ref="FILE" />

</root>

</springProfile>

<springProfile name="prod">

<root level="${LOG_LEVEL}">

<appender-ref ref="STDOUT" />

<appender-ref ref="FILE" />

</root>

</springProfile>

相关知识

Spring Boot开发的植物健康管理系统研究
Java实现鲜花预定系统:Oracle数据库与Spring Boot框架整合实战
植物健康,Spring Boot来守护
Spring Boot植物健康系统:绿色科技的创新
Spring Boot植物健康系统:智慧农业的新篇章
Spring Boot:植物健康监测的智能解决方案
基于Spring Boot的植物健康系统
Spring Boot:植物健康监测的智能专家
【春招】字节跳动、蘑菇街四轮面试,分别问了啥?
A826HHX/HuaHeng

网址: Spring Boot 配置中心 多环境配置日志级别 logback https://www.huajiangbk.com/newsview916916.html

所属分类:花卉
上一篇: 666,一日看尽水中花!3400
下一篇: 全国大学生数学建模竞赛:长江水质

推荐分享