UUID (proto)

此擴展的完整名稱為 envoy.request_id.uuid

注意

此擴展旨在增強對不受信任的下游和上游流量的可靠性。

提示

此擴展擴展了以下擴展類別,並可與之搭配使用

此擴展必須使用以下其中一個類型 URL 進行配置

extensions.request_id.uuid.v3.UuidRequestIdConfig

[extensions.request_id.uuid.v3.UuidRequestIdConfig proto]

預設 UUID 請求 ID 擴展的配置,其行為如下

  1. 請求 ID 使用 x-request-id 標頭傳播。

  2. 請求 ID 是一個通用唯一識別碼 (UUID4)

  3. 追蹤決策(採樣、強制等)在 UUID 的第 14 個半字節中設定。預設情況下,如果變更追蹤採樣決策,這會覆蓋在 x-request-id 標頭中收到的現有 UUID。UUID4 的第 14 個半字節已根據標準固定為「4」。因此,「4」表示預設 UUID 且沒有追蹤狀態。這個半字節會切換為

    1. 「9」:已採樣。

    2. 「a」:由於伺服器端覆寫而強制追蹤。

    3. 「b」:由於用戶端請求 ID 加入而強制追蹤。

    如需更多資訊,請參閱 x-request-id 文件。

{
  "pack_trace_reason": {...},
  "use_request_id_for_trace_sampling": {...}
}
pack_trace_reason

(BoolValue) 實作是否會根據 UuidRequestIdConfig 訊息文件來更改 UUID 以包含追蹤採樣決策。這預設為 true。如果停用,則不會對 UUID 執行任何修改。請務必注意,如果停用,追蹤、存取日誌等穩定採樣將不再起作用,而只會進行隨機採樣。

use_request_id_for_trace_sampling

(BoolValue) 設定是否使用 x-request-id 進行採樣。這預設為 true。如需更多資訊,請參閱 內容傳播 概述。