微服务实现简单的分布式日志追踪

微服务实现简单的分布式日志追踪
复制import org.apache.commons.lang.RandomStringUtils;  import org.apache.commons.lang.StringUtils;  import org.slf4j.MDC;  public class TraceIdUtils {       publicstatic final String TRACE_ID = "traceId";      private static final int MAX_ID_LENGTH = 10;      /**       * 生成 traceId       */      private static String genTraceId() {           return RandomStringUtils.randomAlphanumeric(MAX_ID_LENGTH);      }      /**       * 设置 traceId       */      publicstatic void setTraceId(String traceId) {           // 如果参数为空,微服务实则生成新 ID          traceId = StringUtils.isBlank(traceId) ?现简 genTraceId() : traceId;          // 将 traceId 放到 MDC 中          MDC.put(TRACE_ID, StringUtils.substring(traceId, -MAX_ID_LENGTH));      }      /**       * 获取 traceId       */      publicstatic String getTraceId() {           // 获取          String traceId = MDC.get(TRACE_ID);          // 如果 traceId 为空,站群服务器则生成新 ID          return StringUtils.isBlank(traceId) ?分布 genTraceId() : traceId;      }  }  1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.30.31.32.33.34.35.云服务器提供商
滇ICP备2023000592号-31