據我所知,sleuth框架爲每個新的請求生成唯一的TraceID。sleuth框架重複traceID
https://cloud.spring.io/spring-cloud-sleuth/
然而,想知道它是如何產生的ID。是否有可能今天生成的唯一TraceID可能會在幾個月或幾年後再次生成?它是隨機數生成器算法嗎?我需要在我的應用程序中處理這種情況嗎?
據我所知,sleuth框架爲每個新的請求生成唯一的TraceID。sleuth框架重複traceID
https://cloud.spring.io/spring-cloud-sleuth/
然而,想知道它是如何產生的ID。是否有可能今天生成的唯一TraceID可能會在幾個月或幾年後再次生成?它是隨機數生成器算法嗎?我需要在我的應用程序中處理這種情況嗎?
我們使用一個Random
來產生一個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