W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
跨度上下文是必須跨進(jìn)程邊界傳播到任何子項(xiàng)spans的狀態(tài)。Span上下文的一部分是行李。跟蹤和跨度ID是跨度上下文的必需部分。行李是可選部件。
行李是存儲(chǔ)在span上下文中的一組key:value對(duì)。行李與蹤跡一起旅行,并附著在每個(gè)跨度上。Spring Cloud Sleuth理解,如果HTTP標(biāo)頭以baggage-
為前綴,則標(biāo)頭與行李有關(guān),對(duì)于消息傳遞,標(biāo)頭以baggage_
開頭。
當(dāng)前對(duì)行李物品的數(shù)量或大小沒有限制。但是,請(qǐng)記住,太多會(huì)降低系統(tǒng)吞吐量或增加RPC延遲。在極端情況下,由于超出傳輸級(jí)消息或標(biāo)頭容量,過多的行李可能會(huì)使應(yīng)用程序崩潰。
以下示例顯示跨度設(shè)置行李:
Span initialSpan = this.tracer.nextSpan().name("span").start(); ExtraFieldPropagation.set(initialSpan.context(), "foo", "bar"); ExtraFieldPropagation.set(initialSpan.context(), "UPPER_CASE", "someValue");
行李隨身攜帶(每個(gè)孩子跨度都包含其父母的行李)。Zipkin不了解行李并且不接收該信息。
從Sleuth 2.0.0開始,您必須在項(xiàng)目配置中顯式傳遞行李密鑰名稱。在此處閱讀有關(guān)該設(shè)置的更多信息
標(biāo)簽被附加到特定范圍。換句話說,它們僅針對(duì)該特定跨度顯示。但是,您可以按標(biāo)簽搜索以找到軌跡,前提是存在一個(gè)具有所搜索標(biāo)簽值的跨度。
如果您希望能夠基于行李查找跨度,則應(yīng)在根跨度中添加相應(yīng)的條目作為標(biāo)簽。
范圍必須在范圍內(nèi)。
以下清單顯示了使用行李的集成測(cè)試:
設(shè)置。
spring.sleuth: baggage-keys: - baz - bizarrecase propagation-keys: - foo - upper_case
編碼。
initialSpan.tag("foo", ExtraFieldPropagation.get(initialSpan.context(), "foo")); initialSpan.tag("UPPER_CASE", ExtraFieldPropagation.get(initialSpan.context(), "UPPER_CASE"));
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: