diff --git a/spring-cloud-sleuth-dependencies/pom.xml b/spring-cloud-sleuth-dependencies/pom.xml index 80c206791..3f67b9d62 100644 --- a/spring-cloud-sleuth-dependencies/pom.xml +++ b/spring-cloud-sleuth-dependencies/pom.xml @@ -16,8 +16,7 @@ 1.1.1.BUILD-SNAPSHOT 1.8.4 - 0.18.0 - 1.40.0 + 0.21.5 @@ -71,27 +70,27 @@ io.zipkin.java zipkin - ${zipkin-java.version} + ${zipkin.version} io.zipkin.java zipkin-server - ${zipkin-java.version} - - - io.zipkin - zipkin-ui - ${zipkin-ui.version} + ${zipkin.version} io.zipkin.java - zipkin-storage-jdbc - ${zipkin-java.version} + zipkin-autoconfigure-ui + ${zipkin.version} + + + io.zipkin.java + zipkin-autoconfigure-storage-mysql + ${zipkin.version} io.zipkin.java zipkin-junit - ${zipkin-java.version} + ${zipkin.version} diff --git a/spring-cloud-sleuth-samples/pom.xml b/spring-cloud-sleuth-samples/pom.xml index a11716e50..7247de653 100644 --- a/spring-cloud-sleuth-samples/pom.xml +++ b/spring-cloud-sleuth-samples/pom.xml @@ -59,12 +59,12 @@ io.zipkin.java zipkin - 0.18.0 + 0.21.5 io.zipkin.java zipkin-server - 0.18.0 + 0.21.5 diff --git a/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/README.md b/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/README.md index d91373fcb..033f555b7 100644 --- a/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/README.md +++ b/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/README.md @@ -27,7 +27,7 @@ and test it ``` $ curl localhost:9411/api/v1/services -["zipkin-query"] +["zipkin-server"] ``` ## Instrumenting Apps diff --git a/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/pom.xml b/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/pom.xml index 18324237c..d62f124a9 100644 --- a/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/pom.xml +++ b/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/pom.xml @@ -54,8 +54,8 @@ spring-cloud-sleuth-zipkin-stream - io.zipkin - zipkin-ui + io.zipkin.java + zipkin-autoconfigure-ui org.springframework.integration diff --git a/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/src/test/java/example/ZipkinServerApplicationTests.java b/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/src/test/java/example/ZipkinServerApplicationTests.java index f79a178a6..c87052e13 100644 --- a/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/src/test/java/example/ZipkinServerApplicationTests.java +++ b/spring-cloud-sleuth-samples/spring-cloud-sleuth-sample-zipkin-stream/src/test/java/example/ZipkinServerApplicationTests.java @@ -7,7 +7,7 @@ import org.springframework.boot.test.IntegrationTest; import org.springframework.boot.test.SpringApplicationConfiguration; import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import zipkin.SpanStore; +import zipkin.storage.StorageComponent; import static org.junit.Assert.assertEquals; @@ -18,11 +18,11 @@ import static org.junit.Assert.assertEquals; public class ZipkinServerApplicationTests { @Autowired - private SpanStore store; + private StorageComponent storage; @Test public void contextLoads() { - int count = this.store.getServiceNames().size(); + int count = this.storage.spanStore().getServiceNames().size(); assertEquals(0, count); } diff --git a/spring-cloud-sleuth-zipkin-stream/README.md b/spring-cloud-sleuth-zipkin-stream/README.md index ad34dbbe9..5cf51e74c 100644 --- a/spring-cloud-sleuth-zipkin-stream/README.md +++ b/spring-cloud-sleuth-zipkin-stream/README.md @@ -24,7 +24,7 @@ public class ZipkinStreamServerApplication { } ``` -Zipkin has a web UI, which is enabled by default when you depend on `io.zipkin:zipkin-ui`. +Zipkin has a web UI, which is enabled by default when you depend on `io.zipkin.java:zipkin-autoconfigure-ui`. Bind to MySQL and the same Stream service that you did in the apps (rabbit, redis, kafka). Set `spring.datasource.initialize=true` the first time you start to initialize the database. diff --git a/spring-cloud-sleuth-zipkin-stream/pom.xml b/spring-cloud-sleuth-zipkin-stream/pom.xml index 2c14456e7..b23d2e623 100644 --- a/spring-cloud-sleuth-zipkin-stream/pom.xml +++ b/spring-cloud-sleuth-zipkin-stream/pom.xml @@ -63,7 +63,7 @@ io.zipkin.java - zipkin-storage-jdbc + zipkin-autoconfigure-storage-mysql com.h2database diff --git a/spring-cloud-sleuth-zipkin-stream/src/main/java/org/springframework/cloud/sleuth/zipkin/stream/ZipkinMessageListener.java b/spring-cloud-sleuth-zipkin-stream/src/main/java/org/springframework/cloud/sleuth/zipkin/stream/ZipkinMessageListener.java index 5d04e1090..7231930a4 100644 --- a/spring-cloud-sleuth-zipkin-stream/src/main/java/org/springframework/cloud/sleuth/zipkin/stream/ZipkinMessageListener.java +++ b/spring-cloud-sleuth-zipkin-stream/src/main/java/org/springframework/cloud/sleuth/zipkin/stream/ZipkinMessageListener.java @@ -18,14 +18,15 @@ import org.springframework.core.type.AnnotatedTypeMetadata; import org.springframework.integration.annotation.MessageEndpoint; import org.springframework.integration.annotation.ServiceActivator; import zipkin.Annotation; -import zipkin.AsyncSpanConsumer; import zipkin.BinaryAnnotation; import zipkin.BinaryAnnotation.Type; -import zipkin.CollectorMetrics; -import zipkin.CollectorSampler; import zipkin.Endpoint; import zipkin.Span.Builder; -import zipkin.StorageComponent; +import zipkin.collector.Collector; +import zipkin.collector.CollectorMetrics; +import zipkin.collector.CollectorSampler; +import zipkin.storage.Callback; +import zipkin.storage.StorageComponent; import java.io.UnsupportedEncodingException; import java.util.Collections; @@ -34,7 +35,7 @@ import java.util.Map; /** * A message listener that is turned on if Sleuth Stream is disabled. - * Asynchronously stores the received spans using {@link AsyncSpanConsumer}. + * Asynchronously stores the received spans using {@link Collector}. * * @author Dave Syer * @since 1.0.0 @@ -48,20 +49,23 @@ public class ZipkinMessageListener { private static final org.apache.commons.logging.Log log = org.apache.commons.logging.LogFactory .getLog(ZipkinMessageListener.class); static final String UNKNOWN_PROCESS_ID = "unknown"; - final AsyncSpanConsumer consumer; + final Collector collector; /** lazy so transient storage errors don't crash bootstrap */ @Lazy @Autowired ZipkinMessageListener(StorageComponent storage, CollectorSampler sampler, CollectorMetrics metrics) { - this.consumer = storage.asyncSpanConsumer(sampler, metrics); + this.collector = Collector.builder(getClass()) + .storage(storage) + .sampler(sampler) + .metrics(metrics).build(); } @ServiceActivator(inputChannel = SleuthSink.INPUT) public void sink(Spans input) { List converted = ConvertToZipkinSpanList.convert(input); - this.consumer.accept(converted, AsyncSpanConsumer.NOOP_CALLBACK); + this.collector.accept(converted, Callback.NOOP); } /** diff --git a/spring-cloud-sleuth-zipkin-stream/src/test/java/org/springframework/cloud/sleuth/zipkin/stream/ZipkinServerApplicationTests.java b/spring-cloud-sleuth-zipkin-stream/src/test/java/org/springframework/cloud/sleuth/zipkin/stream/ZipkinServerApplicationTests.java index cb7523a2e..90b2f6a99 100644 --- a/spring-cloud-sleuth-zipkin-stream/src/test/java/org/springframework/cloud/sleuth/zipkin/stream/ZipkinServerApplicationTests.java +++ b/spring-cloud-sleuth-zipkin-stream/src/test/java/org/springframework/cloud/sleuth/zipkin/stream/ZipkinServerApplicationTests.java @@ -13,7 +13,7 @@ import org.springframework.cloud.sleuth.zipkin.stream.ZipkinServerApplicationTes import org.springframework.test.context.ActiveProfiles; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; -import zipkin.SpanStore; +import zipkin.storage.StorageComponent; @RunWith(SpringJUnit4ClassRunner.class) @SpringApplicationConfiguration(classes = ZipkinStreamServerApplication.class) @@ -22,11 +22,11 @@ import zipkin.SpanStore; public class ZipkinServerApplicationTests { @Autowired - private SpanStore store; + private StorageComponent storage; @Test public void contextLoads() { - int count = this.store.getServiceNames().size(); + int count = this.storage.spanStore().getServiceNames().size(); assertEquals(0, count); }