我得到了一個帶有 Spring REST 和 Spring cloud sleuth 的 Spring 啟動應用程式。我正在嘗試根據帶有@SpanTag注釋的控制器方法的引數設定自定義標記,但沒有運氣
這是一個示例控制器:
@RestController
@RequestMapping("/api/auth")
class ExampleController() {
@PostMapping("/create")
fun createToken(
@SpanTag(key="username",expression = "username")
@RequestBody
authTokenRequest: Request){
//Some code here
}
}
側面有一個 zipkin,用于檢索跟蹤和跨度。
當我在 上發起請求時/api/auth/create,我可以看到 Trace 在 zipkin 實體中彈出。如果我有子跨度,它們也會顯示。默認的標簽也被根跨度(可見http.path,mvc.controller.class等等),但沒有指定的標記username。
所以我的問題是,有沒有辦法強制 Spring Cloud Sleuth(在此配置中)確認@SpanTag注釋?
uj5u.com熱心網友回復:
在檔案,@SpanTag則在組合僅用于與方法,注釋@NewSpan或@ContinueSpan。(將它明確地寫在某個地方會很好,但隱含地它沒有其他意義;)
請嘗試:
@ContinueSpan(log = "createToken") //or a log of your choice
@PostMapping("/create")
fun createToken(@SpanTag ...
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/365322.html
上一篇:無效的;嵌套例外是org.xml.sax.SAXParseException;期待命名空間“http://www.springframework.org/schema/data/jpa”,
下一篇:玩家停止移動時如何關閉慣性?
