100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > logback日志pattern_Logback日志基础及自定义配置代码实例

logback日志pattern_Logback日志基础及自定义配置代码实例

时间:2022-05-06 14:05:11

相关推荐

logback日志pattern_Logback日志基础及自定义配置代码实例

Logback日志基础配置

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

${log.path}/errorlog.log

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

${log.pat h}/errorlog.%d{yyyyMMdd}.log.%i.gz

4096MB

365

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

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

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

Logback日志自定义配置

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

一、新建两个配置类,重写convert方法

package cn.jiashubing.config.logback;

import ch.qos.logback.classic.pattern.ClassicConverter;

import ch.qos.logback.classic.spi.ILoggingEvent;

import java.util.UUID;

public class LogIdConfig extends ClassicConverter {

@Override

public String convert(ILoggingEvent event) {

return UUID.randomUUID().toString().replaceAll("-", "");

}

}

package cn.jiashubing.config.logback;

import ch.qos.logback.classic.pattern.ClassicConverter;

import ch.qos.logback.classic.spi.ILoggingEvent;

import .InetAddress;

import .UnknownHostException;

public class IPLogConfig extends ClassicConverter {

@Override

public String convert(ILoggingEvent event) {

try {

return InetAddress.getLocalHost().getHostAddress();

} catch (UnknownHostException e) {

e.printStackTrace();

}

return null;

}

}

二、配置日志文件

${log.path}/errorlog.log

[loglevel=%level] [timestamp=%d{yyyy-MM-dd HH:mm:ss}] [logid=%logid] [ip=%ip] [cmd=%msg] \n

...

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。