我正在研究將Spring Cloud Sleuth集成到我們正在構建的新Spring Boot服務中,並希望從生成跨度中排除某些URL,例如定期輪詢的健康檢查端點。排除Spring Cloud Sleuth中的資源
檢查代碼我可以看到在TraceWebAutoConfiguration.java中創建的TraceFilter具有DEFAULT_SKIP_PATTERN,可以通過設置spring.sleuth.instrument.web.skipPattern
來覆蓋該DEFAULT_SKIP_PATTERN。
然而,即使我的DEFAULT_SKIP_PATTERN我仍然觀察到一絲&跨度正在創建下訪問資源即
17:28:46.142 [XNIO-2 task-1] INFO o.s.c.sleuth.log.Slf4jSpanListener - Starting span: MilliSpan(begin=1454394526140, end=0, name=http/info, traceId=908b24a3-143f-4949-8f86-5df867e3985b, parents=[], spanId=908b24a3-143f-4949-8f86-5df867e3985b, remote=false, exportable=false, annotations={}, processId=null, timelineAnnotations=[])
17:28:46.143 [XNIO-2 task-1] INFO o.s.c.sleuth.log.Slf4jSpanListener - Continued span: MilliSpan(begin=1454394526140, end=0, name=http/info, traceId=908b24a3-143f-4949-8f86-5df867e3985b, parents=[], spanId=908b24a3-143f-4949-8f86-5df867e3985b, remote=false, exportable=false, annotations={}, processId=null, timelineAnnotations=[])
17:28:46.146 [XNIO-2 task-1] INFO io.undertow.servlet - Initializing Spring FrameworkServlet 'dispatcherServlet'
17:28:46.146 [XNIO-2 task-1] INFO o.s.web.servlet.DispatcherServlet - FrameworkServlet 'dispatcherServlet': initialization started
17:28:46.170 [XNIO-2 task-1] INFO o.s.web.servlet.DispatcherServlet - FrameworkServlet 'dispatcherServlet': initialization completed in 24 ms
17:28:46.216 [XNIO-2 task-1] INFO o.s.c.sleuth.log.Slf4jSpanListener - Stopped span: MilliSpan(begin=1454394526140, end=1454394526215, name=http/info, traceId=908b24a3-143f-4949-8f86-5df867e3985b, parents=[], spanId=908b24a3-143f-4949-8f86-5df867e3985b, remote=false, exportable=false, annotations={}, processId=null, timelineAnnotations=[])
我缺少的東西?我正在使用1.0.0.M4
你使用什麼模式。你知道這個模式是一個正則表達式,而不是一個螞蟻式的表達式。 –
您能否請您展示您的配置?這會更容易理解你在做什麼。 –
我試着通過設置'spring.sleuth.instrument.web.skipPattern =/health'來明確排除我的'/ health'端點。 調試通過我驗證跳過在TraceFilter內部設置爲true。看起來這可能與此問題有關https://github.com/spring-cloud/spring-cloud-sleuth/issues/136? –