spring配置文件中获取服务器ip,如何在Spring boot项目的logback日志配置里获取服务器ip...

1、首先新建工具类,通过代码获取服务器IP

package com.jd.jr.risk.insight.manager.common.utils;

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

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

import lombok.extern.slf4j.Slf4j;

import java.net.Inet4Address;

import java.net.InetAddress;

import java.net.NetworkInterface;

import java.net.UnknownHostException;

import java.util.Enumeration;

@Slf4j

public class LogIpConfigUtil extends ClassicConverter {

@Override

public String convert(ILoggingEvent iLoggingEvent) {

try {

Enumeration allNetInterfaces = NetworkInterface.getNetworkInterfaces();

InetAddress ip = null;

while (allNetInterfaces.hasMoreElements()) {

NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement();

if (netInterface.isLoopback() || netInterface.isVirtual() || !netInterface.isUp()) {

continue;

} else {

Enumeration addresses = netInterface.getInetAddresses();

while (addresses.hasMoreElements()) {

ip = addresses.nextElement();

if (ip != null && ip instanceof Inet4Address) {

return ip.getHostAddress();

}

}

}

}

} catch (Exception e) {

log.error("IP地址获取失败" + e.toString());

}

return "";

}

}

2、在logback-spring.xml文件里加入配置获取IP类

3、在需要用到IP的位置这样写: %ip

"host": "%ip" 这样写,本地日志输入的时候内容是: "host": "2.0.1.15"

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值