我知道侦探框架为每个新请求生成唯一的 TraceID。
https://cloud.spring.io/spring-cloud-sleuth/
但是,想知道它是如何生成 ID 的。今天生成的唯一 TraceID 是否有可能在几个月或几年后再次生成?是随机数生成算法吗?我需要在我的应用程序中处理这种情况吗?
我知道侦探框架为每个新请求生成唯一的 TraceID。
https://cloud.spring.io/spring-cloud-sleuth/
但是,想知道它是如何生成 ID 的。今天生成的唯一 TraceID 是否有可能在几个月或几年后再次生成?是随机数生成算法吗?我需要在我的应用程序中处理这种情况吗?
我们使用 aRandom
来生成一个 long ,我们从中设置 trace / span id。https://github.com/spring-cloud/spring-cloud-sleuth/blob/master/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth/autoconfig/TraceAutoConfiguration.java# L55-L59。这是我们如何使用它 - https://github.com/spring-cloud/spring-cloud-sleuth/blob/master/spring-cloud-sleuth-core/src/main/java/org/springframework/cloud/sleuth /trace/DefaultTracer.java#L225-L228