SpringBoot Logback配置,SpringBoot日志配置

 SpringBoot springProfile属性配置

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

©Copyright 蕃薯耀 2018年3月27日

http://www.cnblogs.com/fanshuyao/

附件下载(源码下载)见:http://fanshuyao.iteye.com/blog/2414522

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

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

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <configuration debug="false">
  3. <!--定义日志文件的存储地址 勿在 LogBack 的配置中使用相对路径-->
  4. <property name="LOG_HOME" value="/home" />
  5. <property name="pattern" value="%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n" />
  6. <!-- 控制台输出 -->
  7. <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  8. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
  9. <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
  10. <pattern>${pattern}</pattern>
  11. </encoder>
  12. </appender>
  13. <!-- 控制台输出 -->
  14. <!-- <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  15. <layout class="ch.qos.logback.classic.PatternLayout">
  16. <springProfile name="dev">
  17. <Pattern>%date [%thread] %-5level %logger{80} - %msg%n</Pattern>
  18. </springProfile>
  19. </layout>
  20. </appender> -->
  21. <!-- 按照每天生成日志文件 -->
  22. <appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
  23. <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
  24. <!--日志文件输出的文件名-->
  25. <FileNamePattern>${LOG_HOME}/TestWeb.log.%d{yyyy-MM-dd}.log</FileNamePattern>
  26. <!--日志文件保留天数-->
  27. <MaxHistory>30</MaxHistory>
  28. </rollingPolicy>
  29. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
  30. <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
  31. <pattern>${pattern}</pattern>
  32. </encoder>
  33. <!--日志文件最大的大小-->
  34. <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
  35. <MaxFileSize>10MB</MaxFileSize>
  36. </triggeringPolicy>
  37. </appender>
  38. <!-- 日志输出级别 -->
  39. <root level="INFO">
  40. <appender-ref ref="STDOUT" />
  41. </root>
  42. </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:

  1. <springProfile name="staging">
  2. <!-- configuration to be enabled when the "staging" profile is active -->
  3. </springProfile>
  4. <springProfile name="dev, staging">
  5. <!-- configuration to be enabled when the "dev" or "staging" profiles are active -->
  6. </springProfile>
  7. <springProfile name="!production">
  8. <!-- configuration to be enabled when the "production" profile is not active -->
  9. </springProfile>

例子:

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

  1. <springProfile name="dev">
  2. <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  3. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
  4. <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
  5. <pattern>---dev - %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
  6. </encoder>
  7. </appender>
  8. </springProfile>
  9. <springProfile name="test">
  10. <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  11. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
  12. <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
  13. <pattern>===test  %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
  14. </encoder>
  15. </appender>
  16. </springProfile>
  17. <springProfile name="zprod">
  18. <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
  19. <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
  20. <!--格式化输出:%d表示日期,%thread表示线程名,%-5level:级别从左显示5个字符宽度%msg:日志消息,%n是换行符-->
  21. <pattern>+++zprod  %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n</pattern>
  22. </encoder>
  23. </appender>
  24. </springProfile>

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

  1. spring.profiles.active=zprod

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

©Copyright 蕃薯耀 2018年3月27日

http://www.cnblogs.com/fanshuyao/

SpringBoot Logback配置,SpringBoot日志配置的更多相关文章

  1. ELK+SpringBoot+Logback离线安装及配置

    ELK+SpringBoot+Logback 离线安装及配置 版本 v1.0 编写时间 2018/6/11 编写人 xxx     目录 一. ELK介绍2 二. 安装环境2 三. Elasticse ...

  2. SpringBoot整合log4j2进行日志配置及防坑指南

    写在前面 最近项目经理要求将原先项目中的日志配置logBack,修改为log4j2,据说是log4j2性能更优于logback,具体快多少,网上有说快10多倍,看来还是很快的,于是新的一波挑战又开始了 ...

  3. springboot超级详细的日志配置(基于logback)

    前言   java web 下有好几种日志框架,比如:logback,log4j,log4j2(slj4f 并不是一种日志框架,它相当于定义了规范,实现了这个规范的日志框架就能够用 slj4f 调用) ...

  4. springboot支付项目之日志配置

    日志框架 本节主要内容: 1:常见的几种日志框架 2:Logback的使用 3:怎么配置info和error级别日志到不同文件中并且按照日期每天一个文件. 以上几个框架可以分类如下: SLF4J和Lo ...

  5. logback.xml解读----日志配置解读

    初次接触javaweb项目的日志是log4j文件,但是后来发现通过配置logback.xml文件实现日志输出非常好用.经过上午的学习,现总结如下: 直接上配置文件和注释: <?xml versi ...

  6. Spring Boot中实现logback多环境日志配置

    在Spring Boot中,可以在logback.xml中的springProfile标签中定义多个环境logback.xml: <springProfile name="produc ...

  7. logback&log4j异步日志配置

    logback 原始配置 配置 appender, 控制文件的滚动方式,日志的输出格式. <appender name="method-time-appender" clas ...

  8. logback条件日志配置

    logback支持条件日志配置,支持在测试环境和正式环境使用不同的参数启用不同的日志配置,从而避免手动修改日志配置文件.项目除了引入logback的包以外,还需要引入构件org.codehaus.ja ...

  9. Spring Boot 日志配置

    Spring Boot 日志配置 默认日志 Logback: 默认情况下,Spring Boot会用Logback来记录日志,并用INFO级别输出到控制台.在运行应用程序和其他例子时,你应该已经看到很 ...

  10. nginx的日志配置

    本文转自:https://www.cnblogs.com/biglittleant/p/8979856.html 版权归属原作者!!!!!! nginx access日志配置 access_log日志 ...

随机推荐

  1. [Visual Studio] NuGet发布自定义包(Library Package)

    源文章:dax.net http://www.cnblogs.com/daxnet/archive/2013/05/07/3064577.html 使用NuGet发布自己的类库包(Library Pa ...

  2. centos7下opencv3的安装

    前面说过opencv和python模块的安装,版本是基于opencv 2的,这篇主要说一下opencv3的安装过程以及相关依赖问题的解决,同样opencv3的安装包在官网上可以下载,最新稳定版是3.3 ...

  3. WPF背景图

    方法一:xaml中:<控件>  <控件.Background><ImageBrush ImageSource="/程序集;component/images/xx ...

  4. grid - 网格线命名

    通过grid-template-rows和grid-template-columns定义网格时,网格线可以被命名.网格线名称也可以设置网格项目位置. grid-template-rows和grid-t ...

  5. N1, T1刷机记录

    硬件配置 N1和T1使用的是晶晨Amlogic方案的芯片, 配置明细分别如下, 都是现在盒子的主流配置 N1CPU: Amlogic S905, ARM Cortex-A53 四核 up to 2.0 ...

  6. 基于CentOS 搭建 Seafile 专属网盘

    系统要求:CentOS 7.2 64 位操作系统 安装 Seafile 安装依赖环境 使用 yum 安装 Python 及 MySQL: yum install python python-setup ...

  7. C#_基础题1-10套答案

    one 1.用户输入一个整数,用if...else判断是偶数还是奇数             Console.WriteLine("请输入一个整数:");              ...

  8. Git教程学习(三)

    主要命令: $ git checkout -- readme.txt #使用暂存区或版本库中最新的版本替换工作区版本 $ git reset HEAD readme.txt # 撤消指定文件的add操 ...

  9. Atitit 错误处理机制:(1)静默模式(2)警告模式 (3)异常模式

    Atitit 错误处理机制:(1)静默模式(2)警告模式 (3)异常模式       三.     PDO的错误处理机制: (1)静默模式 默认情况下与mysql处理方式一致,不现实错误信息(静默模式 ...

  10. Atitit 列出wifi热点以及连接

    Atitit 列出wifi热点以及连接 配置命令 >netsh wlan  /?1 显示已经有的配置netsh wlan show profiles1 C:\Users\Administrato ...