生成traceId

生成traceId,规则是 服务器 IP(每段转为16机制) + 产生ID时的时间 + uuid前20位 + 当前进程号

复制代码
public static String getTraceId() {
String result = "";
String ip = "";

try {
InetAddress address = InetAddress.getLocalHost();
ip = address.getHostAddress();
} catch (Exception var5) {
return result;
}

String[] ipAddressInArray = ip.split("\\.");
for(int i = 3; i >= 0; --i) {
Integer id = Integer.parseInt(ipAddressInArray[3 - i]);
result = result + String.format("%02x", id);
}
// 拼装时间戳及随机数
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS");
result = result + simpleDateFormat.format(new Date()) + UUID.randomUUID().toString().replace("-","").substring(0,20);
RuntimeMXBean runtime = ManagementFactory.getRuntimeMXBean();
result = result + String.format("%05d", Integer.parseInt(runtime.getName().split("@")[0]));
return result;
}
复制代码

 

 
posted @   使用D  阅读(227)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
· 使用C#创建一个MCP客户端
点击右上角即可分享
微信分享提示