diff --git a/2.0.x/multi/multi__span_data_as_messages.html b/2.0.x/multi/multi__span_data_as_messages.html index a73ab0956..96915d979 100644 --- a/2.0.x/multi/multi__span_data_as_messages.html +++ b/2.0.x/multi/multi__span_data_as_messages.html @@ -1,41 +1,18 @@ - 11. Span Data as Messages

11. Span Data as Messages

You can accumulate and send span data over + 11. Span Data as Messages

11. Span Data as Messages

[Important]Important

The suggested approach is to use the Zipkin’s +native support for message based span sending. Starting from +Edgware Zipkin Stream server is deprecated and in Finchley +it got removed.

You can accumulate and send span data over Spring Cloud Stream by including the spring-cloud-sleuth-stream jar as a dependency, and adding a Channel Binder implementation (e.g. spring-cloud-starter-stream-rabbit for RabbitMQ or spring-cloud-starter-stream-kafka for Kafka). This will automatically turn your app into a producer of messages with payload -type Spans.

11.1 Zipkin Consumer

There is a special convenience annotation for setting up a message consumer -for the Span data and pushing it into a Zipkin SpanStore. This application

Unresolved directive in spring-cloud-sleuth.adoc - include::../../../../spring-cloud-sleuth-zipkin-stream/src/test/java/org/springframework/cloud/sleuth/zipkin/stream/documentation/Consumer.java[tags=zipkin_consumer,indent=0]

will listen for the Span data on whatever transport you provide via a -Spring Cloud Stream Binder (e.g. include -spring-cloud-starter-stream-rabbit for RabbitMQ, and similar -starters exist for Redis and Kafka). If you add the following UI dependency

<groupId>io.zipkin.java</groupId>
-<artifactId>zipkin-autoconfigure-ui</artifactId>

Then you’ll have your app a -Zipkin server, which hosts -the UI and api on port 9411.

The default SpanStore is in-memory (good for demos and getting -started quickly). For a more robust solution you can add MySQL and -spring-boot-starter-jdbc to your classpath and enable the JDBC -SpanStore via configuration, e.g.:

spring:
-  rabbitmq:
-    host: ${RABBIT_HOST:localhost}
-  datasource:
-    schema: classpath:/mysql.sql
-    url: jdbc:mysql://${MYSQL_HOST:localhost}/test
-    username: root
-    password: root
-# Switch this on to create the schema on startup:
-    initialize: true
-    continueOnError: true
-  sleuth:
-    enabled: false
-zipkin:
-  storage:
-    type: mysql
[Note]Note

The @EnableZipkinStreamServer is also annotated with -@EnableZipkinServer so the process will also expose the standard -Zipkin server endpoints for collecting spans over HTTP, and for -querying in the Zipkin Web UI.

11.2 Custom Consumer

A custom consumer can also easily be implemented using +type Spans.

11.1 Zipkin Consumer

Please refer to the Dalston Documentaion +on how to create a Stream Zipkin server. That approach has been +deprecated in Edgware and removed in Finchley release.

11.2 Custom Consumer

A custom consumer can also easily be implemented using spring-cloud-sleuth-stream and binding to the SleuthSink. Example:

@EnableBinding(SleuthSink.class)
 @SpringBootApplication(exclude = SleuthStreamAutoConfiguration.class)
 @MessageEndpoint
diff --git a/2.0.x/single/spring-cloud-sleuth.html b/2.0.x/single/spring-cloud-sleuth.html
index 03d8a6c2b..917b845e8 100644
--- a/2.0.x/single/spring-cloud-sleuth.html
+++ b/2.0.x/single/spring-cloud-sleuth.html
@@ -567,42 +567,19 @@ Stream based span reporting).

spring.zipkin.baseUrl
 property as follows:

spring.zipkin.baseUrl: http://192.168.99.100:9411/

If you want to find Zipkin via service discovery it’s enough to pass the -Zipkin’s service id inside the URL (example for zipkinserver service id)

spring.zipkin.baseUrl: http://zipkinserver/

11. Span Data as Messages

You can accumulate and send span data over +Zipkin’s service id inside the URL (example for zipkinserver service id)

spring.zipkin.baseUrl: http://zipkinserver/

11. Span Data as Messages

[Important]Important

The suggested approach is to use the Zipkin’s +native support for message based span sending. Starting from +Edgware Zipkin Stream server is deprecated and in Finchley +it got removed.

You can accumulate and send span data over Spring Cloud Stream by including the spring-cloud-sleuth-stream jar as a dependency, and adding a Channel Binder implementation (e.g. spring-cloud-starter-stream-rabbit for RabbitMQ or spring-cloud-starter-stream-kafka for Kafka). This will automatically turn your app into a producer of messages with payload -type Spans.

11.1 Zipkin Consumer

There is a special convenience annotation for setting up a message consumer -for the Span data and pushing it into a Zipkin SpanStore. This application

Unresolved directive in spring-cloud-sleuth.adoc - include::../../../../spring-cloud-sleuth-zipkin-stream/src/test/java/org/springframework/cloud/sleuth/zipkin/stream/documentation/Consumer.java[tags=zipkin_consumer,indent=0]

will listen for the Span data on whatever transport you provide via a -Spring Cloud Stream Binder (e.g. include -spring-cloud-starter-stream-rabbit for RabbitMQ, and similar -starters exist for Redis and Kafka). If you add the following UI dependency

<groupId>io.zipkin.java</groupId>
-<artifactId>zipkin-autoconfigure-ui</artifactId>

Then you’ll have your app a -Zipkin server, which hosts -the UI and api on port 9411.

The default SpanStore is in-memory (good for demos and getting -started quickly). For a more robust solution you can add MySQL and -spring-boot-starter-jdbc to your classpath and enable the JDBC -SpanStore via configuration, e.g.:

spring:
-  rabbitmq:
-    host: ${RABBIT_HOST:localhost}
-  datasource:
-    schema: classpath:/mysql.sql
-    url: jdbc:mysql://${MYSQL_HOST:localhost}/test
-    username: root
-    password: root
-# Switch this on to create the schema on startup:
-    initialize: true
-    continueOnError: true
-  sleuth:
-    enabled: false
-zipkin:
-  storage:
-    type: mysql
[Note]Note

The @EnableZipkinStreamServer is also annotated with -@EnableZipkinServer so the process will also expose the standard -Zipkin server endpoints for collecting spans over HTTP, and for -querying in the Zipkin Web UI.

11.2 Custom Consumer

A custom consumer can also easily be implemented using +type Spans.

11.1 Zipkin Consumer

Please refer to the Dalston Documentaion +on how to create a Stream Zipkin server. That approach has been +deprecated in Edgware and removed in Finchley release.

11.2 Custom Consumer

A custom consumer can also easily be implemented using spring-cloud-sleuth-stream and binding to the SleuthSink. Example:

@EnableBinding(SleuthSink.class)
 @SpringBootApplication(exclude = SleuthStreamAutoConfiguration.class)
 @MessageEndpoint
diff --git a/2.0.x/spring-cloud-sleuth.xml b/2.0.x/spring-cloud-sleuth.xml
index 117f8d611..5b40e0ef8 100644
--- a/2.0.x/spring-cloud-sleuth.xml
+++ b/2.0.x/spring-cloud-sleuth.xml
@@ -1301,6 +1301,12 @@ Zipkin’s service id inside the URL (example for zipkinserver
 
 Span Data as Messages
+
+The suggested approach is to use the Zipkin’s
+native support for message based span sending. Starting from
+Edgware Zipkin Stream server is deprecated and in Finchley
+it got removed.
+
 You can accumulate and send span data over
 Spring Cloud Stream by
 including the spring-cloud-sleuth-stream jar as a dependency, and
@@ -1311,44 +1317,9 @@ automatically turn your app into a producer of messages with payload
 type Spans.
 
Zipkin Consumer -There is a special convenience annotation for setting up a message consumer -for the Span data and pushing it into a Zipkin SpanStore. This application -Unresolved directive in spring-cloud-sleuth.adoc - include::../../../../spring-cloud-sleuth-zipkin-stream/src/test/java/org/springframework/cloud/sleuth/zipkin/stream/documentation/Consumer.java[tags=zipkin_consumer,indent=0] -will listen for the Span data on whatever transport you provide via a -Spring Cloud Stream Binder (e.g. include -spring-cloud-starter-stream-rabbit for RabbitMQ, and similar -starters exist for Redis and Kafka). If you add the following UI dependency -<groupId>io.zipkin.java</groupId> -<artifactId>zipkin-autoconfigure-ui</artifactId> -Then you’ll have your app a -Zipkin server, which hosts -the UI and api on port 9411. -The default SpanStore is in-memory (good for demos and getting -started quickly). For a more robust solution you can add MySQL and -spring-boot-starter-jdbc to your classpath and enable the JDBC -SpanStore via configuration, e.g.: -spring: - rabbitmq: - host: ${RABBIT_HOST:localhost} - datasource: - schema: classpath:/mysql.sql - url: jdbc:mysql://${MYSQL_HOST:localhost}/test - username: root - password: root -# Switch this on to create the schema on startup: - initialize: true - continueOnError: true - sleuth: - enabled: false -zipkin: - storage: - type: mysql - -The @EnableZipkinStreamServer is also annotated with -@EnableZipkinServer so the process will also expose the standard -Zipkin server endpoints for collecting spans over HTTP, and for -querying in the Zipkin Web UI. - +Please refer to the Dalston Documentaion +on how to create a Stream Zipkin server. That approach has been +deprecated in Edgware and removed in Finchley release.
Custom Consumer