anchor.diff:  author credit if we do.  Active contributors might be asked to join the core team, and
   given the ability to merge pull requests.
   
  +=== Code of Conduct
  +This project adheres to the Contributor Covenant https://github.com/spring-cloud/spring-cloud-build/blob/master/docs/src/main/asciidoc/code-of-conduct.adoc[code of
  +conduct]. By participating, you  are expected to uphold this code. Please report
  +unacceptable behavior to spring-code-of-conduct@pivotal.io.
  +
   === Code Conventions and Housekeeping
   None of these is essential for a pull request, but they will all help.  They can also be
   added after the original pull request but before a merge.
  
positive.code: 
  == Running the samples
  
  1. Optionally run https://github.com/openzipkin/zipkin[Zipkin], e.g. via docker compose (there's a `docker-compose.yml` in https://github.com/spring-cloud-incubator/spring-cloud-sleuth[Spring Cloud Sleuth], or in https://github.com/openzipkin/docker-zipkin[Docker Zipkin]
  7. Run the zipkin sample application (and set `sample.zipkin.enabled=false` if you have no collector running)
  8. Hit `http://localhost:3380`, `http://localhost:3380/call`, `http://localhost:3380/async` for some interesting sample traces (the app calls back to itself).
  9. Goto `http://localhost:8082` for zipkin web (8080 if running locally from source, the host is the docker host, so if you are using boot2docker it will be different)
  
  NOTE: You can see the zipkin spans without the UI (in logs) if you run the sample with `sample.zipkin.enabled=false`.
  
  There are a few samples with slightly different features:
  
  * `spring-cloud-sleuth-sample`: vanilla (no zipkin) web app that calls back to itself on various endpoints ("/", "/call", "/async")
  
  * `spring-cloud-sleuth-sample-zipkin`: same as vanilla sample but with zipkin
  
  * `spring-cloud-sleuth-sample-messaging`: a Spring Integration application with two HTTP endpoints ("/" and "/xform")
  
  * `spring-cloud-sleuth-sample-ribbon`: two endpoints ("/" and "/call") that make calls to the "zipkin" sample via Ribbon. Also has `@EnableZUulProxy" so if the other samples are running they are proxied at "/messaging", "/zipkin", "/vanilla" (see "/routes" for a list).
  
  The Ribbon sample makes an interesting demo or playground for learning about zipkin. In the screenshot below you can see a trace with 3 spans - it starts in the "testSleuthRibbon" app and crosses to "testSleuthMessaging" for the next 2 spans.
  
  image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-sleuth/master/docs/src/main/asciidoc/images/zipkin-trace-screenshot.png[Eample Zipkin Screenshot]
  
  > The fact that the first trace in says "testSleuthMessaging" seems to be a bug in the UI (it has some annotations from that service, but it originates in the "testSleuthRibbon" service).
  
  == Building
  
  :jdkversion: 1.7
  :testjdkversion: 1.8
  
  === Basic Compile and Test
  
  To build the source you will need to install JDK {jdkversion}. However to run the tests you need {testjdkversion}.
  
  Spring Cloud uses Maven for most build-related activities, and you
  should be able to get off the ground quite quickly by cloning the
  
negative.code: // Do not edit this file (e.g. go instead to src/main/asciidoc)
  
  image::https://api.travis-ci.org/spring-cloud/spring-cloud-sleuth.svg?branch=master[Build Status, link=https://travis-ci.org/spring-cloud/spring-cloud-sleuth]
  image::https://badges.gitter.im/spring-cloud/spring-cloud-sleuth.svg[Gitter, link="https://gitter.im/spring-cloud/spring-cloud-sleuth?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge"]
  == Spring Cloud Sleuth
  
  Spring Cloud Sleuth implements a distributed tracing solution for http://cloud.spring.io[Spring Cloud].
  