Logback日志名和日志内容配置增加ip等信息

这篇博客讲述了如何在Logback中为日志名和内容添加IP信息。通过创建继承自`ClassicConverter`的类并自定义转换方法,以及实现`PropertyDefiner`接口来修改日志文件名,使得日志输出时包含IP地址。
摘要由CSDN通过智能技术生成

最近线上有个需求,将每个服务的多个实例打出的日志在日志名称和内容里增加ip信息,首先当然是先百度(Google)一下,看看实现方式。

  1. 创建一个类继承自ch.qos.logback.classic.pattern.ClassicConverter
  2. 重写convert()方法,在该方法内返回ip信息
public class LogUtil extends ClassicConverter {

    @Override
    public String convert(ILoggingEvent event) {
    String ip = null;
     try {
            ip= InetAddress.getLocalHost().getHostAddress();
        } catch (UnknownHostException e) {
            logger.error("获取ip异常", e.toString());
        }
        return ip;
    }
}

3.配置logback.xml

<conversionRule conversionWord="ip" converterClass="xxx.xxx.xxx.LogUtil" />

4.在需要显示ip的地方加上:%ip

但是在运行过程中发现在日志文件创建过程中,该配置还没有生效,文件名显示undefined。 所以如果需要在日志文件名中也显示ip等自定义信息,可以实现PropertyDefiner接口或者继承PropertyDefinerBase类,然后重写getPropertyValue()方法即可。

官网介绍:

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值