栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringBoot--logback的xml配置文件--用法/示例

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot--logback的xml配置文件--用法/示例

原文网址:SpringBoot--logback的xml配置文件--用法/示例_IT利刃出鞘的博客-CSDN博客

简介

        本文介绍Spring的logback日志的xml配置文件的写法。

SpringBoot默认配置

         SpringBoot的logback的默认配置效果就很好,可以打印彩色,其配置位置见:spring-boot-2.3.12.RELEASE.jarorgspringframeworkbootlogginglogbackdefaults.xml

源码:(控制台颜色配置见:






	
	
	
	
	

	
	
	
	
	
	
	
	

我把它单独拿出来:

${CONSOLE_LOG_PATTERN:-%clr(%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}}

logback-spring.xml(示例)




    

    
    
    

    

    
        
            ${CONSOLE_LOG_PATTERN}
        
    

    
        ${LOG_PATH}/${appName}.log
        
            ${FILE_LOG_PATTERN}
        
        
            
                ${LOG_PATH}/%d{yyyy-MM-dd}.%i.log
            
            20MB
        
    

    
        
        
    
ELK

如果项目中的日志采用的是基于ELK(Elasticsearch,Logstash,Kibana三个开源软件的缩写)来进行日志管理。则可以在pom文件中引入logstash-logback-encoder依赖。


    net.logstash.logback
    logstash-logback-encoder
    5.1

然后在logback-spring.xml中配置对应的appender:

    
        debug
    
    192.168.0.11:5061
    
        {"project": "springboot-logback-elk"}
    

 该appender的使用与其他appender的使用无异。主要使用了LogstashTcpSocketAppender类来完成与Logstash的通信。其中destination为Logstash提供的服务地址。customFields为自定义的参数,便于Logstash识别日志是从哪个业务系统传输过来的。

输出logback状态

    有时为了了解logback配置文件加载情况,配置中对应的appender、logger的装载情况等,我们需要启用logback状态数据的输出。这也是logback官网强烈推荐的,可以帮助我们排除诊断一些问题。 

方案1:添加元素(statusListener)

logback-spring.xml:

方案2:启用调试(不推荐)

application.yml

debug=true
多环境

        SpringBoot项目,针对不同环境(profile)有不同的日志输出,比如:开发(dev)环境只输出CONSOLE的,生产环境(prod)只输出info和error,那则可用到Spring支持的profile机制。对应的元素为springProfile。

        profile的值与springboot中配置文件的spring.profiles.active值对应。



    
    
        
    



    
    
        
        
    

多彩输出

application.yml配置

如果你的终端支持ANSI,设置彩色输出会让日志更具可读性。通过在application.properties中设置spring.output.ansi.enabled参数来支持,默认为:detect。

never:禁用ANSI-colored输出
detect:会检查终端是否支持ANSI,是的话就采用彩色输出(推荐项)
always:总是使用ANSI-colored格式输出,若终端不支持的时候,会有很多干扰信息,不推荐使用

级别颜色
FATAL红色
ERROR红色
WARN黄色
INFO绿色
DEBUG绿色
TRACE绿色

手动指定颜色

可以指定将其作为转换选项的颜色或样式。例如,使文本黄色:

%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){yellow}

支持以下颜色和样式:
1. blue
2. cyan
3. faint
4. green
5. magenta
6. red
7. yellow

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/844512.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号