Logback日志基础实现自定义配置

  介绍

Logback日志基础实现自定义配置?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

Logback日志配置有很多介绍,但是有几个非常基础的,容易忽略的。下面是最简单的一个配置,注意加粗的描述

& lt;及# 63;xml version=?.0”;编码=癠TF-8", # 63;比;   & lt;配置调试=皌rue"扫描=皌rue"scanPeriod=?0 seconds"比;      & lt; !——log.path定义的是局部变量,。/日志指定的是相对路径下的文件夹日志——比;   & lt;属性名=發og.path"值=https://www.yisu.com/zixun/薄?日志"/>               <文件> $ {log.path}/errorlog.log>   <编码器>   <模式> % d {yyyy-MM-dd HH: mm: ss。SSS}[%线程]% 5水平%记录器{50}- %味精% n>             ${日志。帕特h}/{名称}.log. errorlog. % d % i.gz       4096 mb          365               <根水平=暗魇浴?      根>

在规范里,行结束符往往采用Linux结束符(\ n),而不是上面那样的% n。这个\ n,使用txt文档查看,并没有换行

使用%的正则还有许许多的多,比如如下:

& lt;属性名=癈ONSOLE_LOG_PATTERN"value=https://www.yisu.com/zixun/" %日期{yyyy-MM-dd HH: mm: ss} | %突出(% 5级)| %黄色(%线程)| %绿色(%记录器)| %味精% n "/>

再比如:% contextName作用是显示主机名

即便如此,还是有很多想要的东西显示不了,这时就可自定义配置。比如我希望每条日志有个uuid类型的id,希望每条日志能打印ip地址

<强>一、新建两个配置类,重写转换方法

包cn.jiashubing.config.logback;
  
  进口ch.qos.logback.classic.pattern.ClassicConverter;
  进口ch.qos.logback.classic.spi.ILoggingEvent;
  进口java.util.UUID;
  
  公开课LogIdConfig延伸ClassicConverter {
  
  @Override
  公共字符串转换(ILoggingEvent事件){
  .toString返回UUID.randomUUID () () .replaceAll(“产生绯闻,““);
  }
  }
  
  
  包cn.jiashubing.config.logback;
  
  进口ch.qos.logback.classic.pattern.ClassicConverter;
  进口ch.qos.logback.classic.spi.ILoggingEvent;
  进口java.net.InetAddress;
  进口java.net.UnknownHostException;
  
  公开课IPLogConfig延伸ClassicConverter {
  
  @Override
  公共字符串转换(ILoggingEvent事件){
  尝试{
  .getHostAddress返回InetAddress.getLocalHost () ();
  }捕捉(UnknownHostException e) {
  e.printStackTrace ();
  }
  返回null;
  }
  }

<强>二,配置日志文件

& lt;属性名=發og.path"值=https://www.yisu.com/zixun/薄?日志"/>               <文件> $ {log.path}/errorlog.log>   <模式> [loglevel=%的水平][timestamp=% d {yyyy-MM-dd HH: mm: ss}] [logid=% logid] [ip=% ip] [cmd=%味精)/n>   …   

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

Logback日志基础实现自定义配置