简体   繁体   中英

Disable distributed tracing for development

We are setting up microservice framework.

We use following stack for distributed tracing.

  • Spring boot
  • Kafka
  • Zipkin

Following is how the configuration is done

In gradle.build (or pom.xml) following starter dependencies added

compile 'org.springframework.cloud:spring-cloud-starter-sleuth'
compile 'org.springframework.cloud:spring-cloud-sleuth-zipkin'
compile 'org.springframework.cloud:spring-cloud-starter-bus-kafka'

Add one AlwaysSampler bean

@Bean
public Sampler defaultSampler() {
    return Sampler.ALWAYS_SAMPLE;
}

If we have kafka running, things work automatically.

But if kafka is not running, server does not start - this is mostly the case for development environment.

If I want to stop this, I have to comment out all the code mentioned here (as we use starter dependency with spring boot, it automatically configures as I understand).

Can we just make some changes in properties (or yaml) files so that I don't need to go and comment out all these code?

Or probably another way to disable this without doing some commenting, etc.

You can add the following setting on your properties key to disable zipkin, source .

spring.zipkin.enabled=false

Better yet, create separate development properties (like application-dev.properties ) to avoid changing above setting everytime you want to run in your machine: https://stackoverflow.com/a/34846351/4504053

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM