2016-10-04 85 views
0

更新:我已將代碼推送到my repo,以便人們可以在那裏查看可能出錯的地方。使用Spring Cloud Sleuth向OpenZIpkin發送跟蹤數據

編輯:我幾乎可以肯定它不會發表任何統計數據到服務器的客戶端代碼,但低於既不導遊講解如何來啓用:有,我很想念配置設置?

我一直跟着兩個OpenZipkinSpring Sleuth快速啓動:我從docker-zipkin使用docker-compose和卡桑德拉作爲後臺運行基普金服務器:

$ d ps 
CONTAINER ID  IMAGE        COMMAND     CREATED    STATUS    PORTS                    NAMES 
5ca0f0b29900  openzipkin/zipkin:1.12.1    "/bin/sh -c 'test -n " 14 minutes ago  Up 8 minutes  0.0.0.0:9410-9411->9410-9411/tcp             zipkin 
7b243a0b61e3  openzipkin/zipkin-dependencies  "crond -f"    14 minutes ago  Up 8 minutes                       dependencies 
e2e047fb3851  openzipkin/zipkin-cassandra:1.12.1 "/bin/sh -c /usr/loca" 14 minutes ago  Up 8 minutes  7000-7001/tcp, 0.0.0.0:3306->3306/tcp, 7199/tcp, 0.0.0.0:9042->9042/tcp, 9160/tcp cassandra 

我已經創建並運行Spring Sleuth sample app,它似乎是正確配置跟蹤呼叫:

# application.properties) 
server.port = 9099 
spring.application.name = zipkin-demo 
spring.zipkin.baseUrl = http://localhost:9411/ 
spring.sleuth.sampler.percentage = 1.0 

日誌似乎表明的痕跡應該被記錄:

2016-10-04 15:20:02.115 INFO [zipkin-demo,c6e06ff47bddaf4d,f7437cf1c7089522,true] 70899 --- [nio-9099-exec-3] com.apple.its.api.ApiController   : Forwarding to http://localhost:8088/api/v1/hello 
2016-10-04 15:20:02.709 INFO [zipkin-demo,de3c25ea46e8b010,f7e6017757f0ce5e,true] 70899 --- [nio-9099-exec-4] com.apple.its.api.ApiController   : Forwarding to http://localhost:8088/api/v1/hello 
2016-10-04 15:20:06.480 INFO [zipkin-demo,4c9fdeaab69b79b4,1dc8b9b7ce5c6fa5,true] 70899 --- [nio-9099-exec-5] com.apple.its.api.ApiController   : Sleeping for [278] millis 
2016-10-04 15:20:08.833 INFO [zipkin-demo,2eb26be1a6867e5,b566753eb137026,true] 70899 --- [nio-9099-exec-8] com.apple.its.api.ApiController   : Sleeping for [467] millis 
2016-10-04 15:20:10.608 INFO [zipkin-demo,eec83e7fc4ea9c9d,c88723b29ca4335c,true] 70899 --- [nio-9099-exec-1] com.apple.its.api.ApiController   : Sleeping for [20] millis 
2016-10-04 15:20:12.035 INFO [zipkin-demo,63259dd1bac357e9,5cf013d16bb1ee98,true] 70899 --- [nio-9099-exec-4] com.apple.its.api.ApiController   : Sleeping for [22] millis 

但是,無論我做什麼,UI都不會顯示任何痕跡。 奇怪的是,localhost:9411/trace顯示了一堆痕跡(它們似乎主要來自Zipkin本身),但zipkin-demo應用程序中沒有任何痕跡。

我相信這是由於演示應用程序沒有發送跟蹤到主機,但我只是使用Spring's example app,所以我能做什麼錯?

+0

您的應用程序正在調用另一個應用程序嗎? AFAIR您至少需要2個素描圖 –

+0

該應用程序簡直就是Spring Sleuth的「入門」應用程序;但是,正如您在日誌中看到的那樣,軌跡正在生成。我相信缺少的是發送到Zipkin服務器。 – Marco

+0

您是否將採樣器百分比設置爲1.0或添加了AlwaysSampler? –

回答

2

如果我沒有弄錯(我想我不是),難怪你沒有發送Span到Zipkin,因爲你沒有添加Zipkin依賴。使用Zipkin通過HTTP檢查Sleuth與文檔的部分:http://cloud.spring.io/spring-cloud-sleuth/spring-cloud-sleuth.html

dependencyManagement { 
    imports { 
     mavenBom "org.springframework.cloud:spring-cloud-dependencies:Brixton.RELEASE" 
    } 
} 
dependencies { 
    compile "org.springframework.cloud:spring-cloud-starter-zipkin" 
} 
+0

我們可以標記爲已解決? –

0

這個配置在我的應用程序中1爲我工作:

spring.zipkin.baseUrl = localhost:9411 
    spring.sleuth.enabled = true 
    spring.sleuth.sampler.percentage = 1.0 

啓用屬性可能做的伎倆!