完成操作日志的记录

This commit is contained in:
YunaiV
2021-01-17 00:28:56 +08:00
parent b6457c0418
commit ec8f181f2f
29 changed files with 691 additions and 261 deletions

View File

@@ -0,0 +1,36 @@
package cn.iocoder.dashboard.framework.tracer.core.util;
import cn.hutool.core.util.StrUtil;
import org.apache.skywalking.apm.toolkit.trace.TraceContext;
import java.util.UUID;
/**
* 链路追踪工具类
*
* @author 芋道源码
*/
public class TracerUtils {
/**
* 获得链路追踪编号
*
* 一般来说通过链路追踪编号可以将访问日志错误日志链路追踪日志logger 打印日志等,结合在一起,从而进行排错。
*
* 默认情况下,我们使用 Apache SkyWalking 的 traceId 作为链路追踪编号。当然,可能会存在并未引入 Skywalking 的情况,此时使用 UUID 。
*
* @return 链路追踪编号
*/
public static String getTraceId() {
// 通过 SkyWalking 获取链路编号
try {
String traceId = TraceContext.traceId();
if (StrUtil.isNotBlank(traceId)) {
return traceId;
}
} catch (Throwable ignore) {}
// TODO 芋艿 多次调用会问题
return UUID.randomUUID().toString();
}
}

View File

@@ -0,0 +1,6 @@
/**
* 链路追踪
*
* 主要目的,是生成全局的链路追踪编号
*/
package cn.iocoder.dashboard.framework.tracer;