W3Cschool
恭喜您成為首批注冊用戶
獲得88經驗值獎勵
將跟蹤和跨度ID添加到Slf4J MDC,因此您可以在日志聚合器中從給定的跟蹤或跨度提取所有日志,如以下示例日志所示:
2016-02-02 15:30:57.902 INFO [bar,6bfd228dc00d216b,6bfd228dc00d216b,false] 23030 --- [nio-8081-exec-3] ... 2016-02-02 15:30:58.372 ERROR [bar,6bfd228dc00d216b,6bfd228dc00d216b,false] 23030 --- [nio-8081-exec-3] ... 2016-02-02 15:31:01.936 INFO [bar,46ab0d418373cbc9,46ab0d418373cbc9,false] 23030 --- [nio-8081-exec-4] ...
請注意來自MDC的[appname,traceId,spanId,exportable]
條目:
spanId
:發(fā)生的特定操作的ID。
appname
:記錄跨度的應用程序的名稱。
traceId
:包含跨度的延遲圖的ID。
exportable
:是否應將日志導出到Zipkin。您何時希望跨度不可導出?當您要將某些操作包裝在Span中并且僅將其寫入日志時。
編寫Sleuth時不要過多記錄日志,也不會導致生產應用程序崩潰。為此,Sleuth:
如果spring-cloud-sleuth-zipkin
在類路徑上,則該應用生成并收集Zipkin兼容的跟蹤。默認情況下,它通過HTTP將它們發(fā)送到本地主機(端口9411)上的Zipkin服務器。您可以通過設置spring.zipkin.baseUrl
來配置服務的位置。
spring-rabbit
,則您的應用會將跟蹤發(fā)送到RabbitMQ代理,而不是HTTP。
spring-kafka
并設置為spring.zipkin.sender.type: kafka
,則您的應用會將跟蹤發(fā)送到Kafka代理而不是HTTP。
spring-cloud-sleuth-stream
已過時,不應再使用。
如果使用Zipkin,請通過設置
spring.sleuth.sampler.probability
(默認值:0.1,即10%)來配置spans導出的概率。否則,您可能會認為Sleuth無法正常工作,因為它忽略了一些spans。
始終設置SLF4J MDC,并且按先前顯示的示例,登錄用戶可以立即在日志中看到跟蹤和跨度ID。其他日志記錄系統(tǒng)必須配置自己的格式化程序才能獲得相同的結果。默認值如下:
logging.pattern.level
設置為%5p [${spring.zipkin.service.name:${spring.application.name:-}},%X{X-B3-TraceId:-},%X{X-B3-SpanId:-},%X{X-Span-Export:-}]
(這是Logback用戶的Spring Boot功能)。如果您不使用SLF4J,則不會自動應用此模式。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: