侦探没有向Zipkin发送跟踪信息

时间:2017-12-06 09:31:37

标签: java spring spring-boot zipkin spring-cloud-sleuth

即使Zipkin正常运行,侦探也没有向Zipkin发送跟踪信息。 我正在使用Spring 1.5.8.RELEASE,Spring cloud Dalston.SR4,我在我的微服务中添加了以下依赖项:

<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-sleuth</artifactId>
</dependency>
<dependency>
    <groupId>org.springframework.cloud</groupId>
    <artifactId>spring-cloud-starter-zipkin</artifactId>
</dependency>

我的日志总是假的: [FOOMS,2e740f33c26e286d,2e740f33c26e286d,假]

我的Zipkin依赖项是:

<dependency>
    <groupId>io.zipkin.java</groupId>
    <artifactId>zipkin-server</artifactId>
</dependency>
<dependency>
    <groupId>io.zipkin.java</groupId>
    <artifactId>zipkin-autoconfigure-ui</artifactId>
    <scope>runtime</scope>
</dependency>

为什么我在我的slu speak声明中得到假而不是真?尽管为所有调用都正确生成了traceId和SpanId。我的Zipkin正在9411端口运行

3 个答案:

答案 0 :(得分:5)

我发现我需要添加一个采样器百分比。默认情况下,发送样本的零百分比,这就是为什么侦探没有向zipkin发送任何内容。当我在属性文件中添加spring.sleuth.sampler.percentage=1.0时,它开始工作。

答案 1 :(得分:2)

有关云依赖关系的最新版本<version>Finchley.SR2</version>
将跟踪发送到zipkin的正确属性是:spring.sleuth.sampler.probability=1.0 从百分比变为概率。

答案 2 :(得分:1)

如果要将所有跨度数据导出到Zipkin,可以通过在Spring引导主类中创建bean定义来安装sampler

  @Bean
  public Sampler defaultSampler() {
    return new AlwaysSampler();
  }