NET6 Core distributed tracing
分散式追蹤系統
系統架構從單體轉變成微服務之後,使用者發出的單次請求往往會涉及到多個服務之間的呼叫,以往採用的日誌服務也較難以窺見全貌,當我們需要追蹤某一次請求中間發生了那些事情,我們期望能獲取的資訊不外乎是這次的請求,總共經過哪些服務,每個服務花費了多久的時間,呼叫的順序等等,這就是分散式追蹤系統能夠幫我們做到的事情。只不過每一家系統的 API 都不太一樣,所以 W3C
也有提供一份Trace Context - W3C,讓大家都用同一個標準來實現分散式追蹤。
在這之前看到一堆像是 RequestId
, TraceId
, SpanId
, ParentId
, ActionId
,可能還有很多我沒有列出來的名詞,真的是有看沒有懂,現在至少可以從 W3C 的建議中明確知道一些名詞與他們的用途,其他的應該就是各家廠商自己的定義了,那就有用到再說囉