From ad7f700e3ce06b06fe5b5091fe021635208a45b3 Mon Sep 17 00:00:00 2001 From: buildmaster Date: Thu, 9 Apr 2020 22:48:11 +0000 Subject: [PATCH] Sync docs from v3.0.0.M1 to gh-pages --- .../3.0.0.M1/reference/html/README.html | 1438 +++++++++ .../3.0.0.M1/reference/html/appendix.html | 482 +++ .../3.0.0.M1/reference/html/css/spring.css | 1 + .../3.0.0.M1/reference/html/favicon.ico | Bin 0 -> 111804 bytes .../3.0.0.M1/reference/html/features.html | 489 +++ .../3.0.0.M1/reference/html/images/.gitkeep | 1 + .../3.0.0.M1/reference/html/images/kibana.png | Bin 0 -> 186956 bytes .../html/images/zipkin-dependencies.png | Bin 0 -> 46703 bytes .../images/zipkin-error-trace-screenshot.png | Bin 0 -> 69605 bytes .../html/images/zipkin-error-trace.png | Bin 0 -> 67467 bytes .../html/images/zipkin-error-traces.png | Bin 0 -> 36680 bytes .../html/images/zipkin-trace-screenshot.png | Bin 0 -> 53157 bytes .../3.0.0.M1/reference/html/index.html | 2785 +++++++++++++++++ .../html/js/highlight/highlight.min.js | 2 + .../js/highlight/styles/a11y-dark.min.css | 99 + .../js/highlight/styles/an-old-hope.min.css | 89 + .../styles/atom-one-dark-reasonable.min.css | 77 + .../js/highlight/styles/atom-one-dark.min.css | 96 + .../highlight/styles/atom-one-light.min.css | 96 + .../html/js/highlight/styles/dracula.min.css | 76 + .../html/js/highlight/styles/github.min.css | 99 + .../highlight/styles/monokai-sublime.min.css | 83 + .../html/js/highlight/styles/monokai.min.css | 70 + .../highlight/styles/solarized-light.min.css | 84 + .../html/js/highlight/styles/zenburn.min.css | 80 + .../3.0.0.M1/reference/html/js/toc.js | 80 + .../reference/html/js/tocbot/tocbot.css | 1 + .../reference/html/js/tocbot/tocbot.min.js | 1 + .../reference/html/logback-spring.xml | 72 + .../3.0.0.M1/reference/html/overview.html | 170 + .../3.0.0.M1/reference/html/sagan-boot.html | 219 ++ .../3.0.0.M1/reference/html/sagan-index.html | 163 + .../3.0.0.M1/reference/html/setup.html | 462 +++ .../reference/html/spring-cloud-sleuth.html | 2785 +++++++++++++++++ .../reference/htmlsingle/css/spring.css | 1 + .../3.0.0.M1/reference/htmlsingle/favicon.ico | Bin 0 -> 111804 bytes .../reference/htmlsingle/images/.gitkeep | 1 + .../reference/htmlsingle/images/kibana.png | Bin 0 -> 186956 bytes .../htmlsingle/images/zipkin-dependencies.png | Bin 0 -> 46703 bytes .../images/zipkin-error-trace-screenshot.png | Bin 0 -> 69605 bytes .../htmlsingle/images/zipkin-error-trace.png | Bin 0 -> 67467 bytes .../htmlsingle/images/zipkin-error-traces.png | Bin 0 -> 36680 bytes .../images/zipkin-trace-screenshot.png | Bin 0 -> 53157 bytes .../htmlsingle/js/highlight/highlight.min.js | 2 + .../js/highlight/styles/a11y-dark.min.css | 99 + .../js/highlight/styles/an-old-hope.min.css | 89 + .../styles/atom-one-dark-reasonable.min.css | 77 + .../js/highlight/styles/atom-one-dark.min.css | 96 + .../highlight/styles/atom-one-light.min.css | 96 + .../js/highlight/styles/dracula.min.css | 76 + .../js/highlight/styles/github.min.css | 99 + .../highlight/styles/monokai-sublime.min.css | 83 + .../js/highlight/styles/monokai.min.css | 70 + .../highlight/styles/solarized-light.min.css | 84 + .../js/highlight/styles/zenburn.min.css | 80 + .../3.0.0.M1/reference/htmlsingle/js/toc.js | 80 + .../reference/htmlsingle/js/tocbot/tocbot.css | 1 + .../htmlsingle/js/tocbot/tocbot.min.js | 1 + .../reference/htmlsingle/logback-spring.xml | 72 + 59 files changed, 11207 insertions(+) create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/README.html create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/appendix.html create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/css/spring.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/favicon.ico create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/features.html create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/images/.gitkeep create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/images/kibana.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-dependencies.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-error-trace-screenshot.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-error-trace.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-error-traces.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-trace-screenshot.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/index.html create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/highlight.min.js create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/a11y-dark.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/an-old-hope.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-dark-reasonable.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-dark.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-light.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/dracula.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/github.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/monokai-sublime.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/monokai.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/solarized-light.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/zenburn.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/toc.js create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/tocbot/tocbot.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/js/tocbot/tocbot.min.js create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/logback-spring.xml create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/overview.html create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/sagan-boot.html create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/sagan-index.html create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/setup.html create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/html/spring-cloud-sleuth.html create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/css/spring.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/favicon.ico create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/.gitkeep create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/kibana.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-dependencies.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-error-trace-screenshot.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-error-trace.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-error-traces.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-trace-screenshot.png create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/highlight.min.js create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/a11y-dark.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/an-old-hope.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-dark-reasonable.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-dark.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-light.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/dracula.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/github.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/monokai-sublime.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/monokai.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/solarized-light.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/zenburn.min.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/toc.js create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/tocbot/tocbot.css create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/tocbot/tocbot.min.js create mode 100644 spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/logback-spring.xml diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/README.html b/spring-cloud-sleuth/3.0.0.M1/reference/html/README.html new file mode 100644 index 00000000..2b7fd1d9 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/README.html @@ -0,0 +1,1438 @@ + + + + + + + +Spring Cloud Sleuth + + + + + + + + + + +
+
+
+
+
+CircleCI +
+
+
+
+codecov +
+
+
+
+Gitter +
+
+
+
+
+

Spring Cloud Sleuth

+
+
+

Spring Cloud Sleuth provides Spring Boot auto-configuration for distributed +tracing. Underneath, Spring Cloud Sleuth is a layer over a tracer library named +Brave.

+
+
+

Sleuth configures everything you need to get started. This includes where trace +data (spans) are reported to, how many traces to keep (sampling), if remote +fields (baggage) are sent, and which libraries are traced.

+
+
+

Quick Start

+
+

Add sleuth to the classpath of a Spring Boot application +(see “Adding Sleuth to your Project” for Maven and Gradle examples), and you will +see trace IDs in logs.

+
+
+

For example, consider the following HTTP handler:

+
+
+
+
@RestController
+public class DemoController {
+  private static Logger log = LoggerFactory.getLogger(DemoController.class);
+
+  @RequestMapping("/")
+  public String home() {
+    log.info("Handling home");
+    ...
+    return "Hello World";
+  }
+}
+
+
+
+

If you add that handler to a controller, you can see the calls to home() +being traced in the logs as well in Zipkin, if configured.

+
+
+ + + + + +
+ + +Instead of logging the request in the handler explicitly, you +could set logging.level.org.springframework.web.servlet.DispatcherServlet=DEBUG. +
+
+
+ + + + + +
+ + +Set spring.application.name=myService (for instance) to see the service +name as well as the trace and span IDs. +
+
+
+
+
+
+

Overview

+
+
+

Spring Cloud Sleuth provides Spring Boot auto-configuration for distributed +tracing. Underneath, Spring Cloud Sleuth is a layer over a Tracer library named +Brave.

+
+
+

Sleuth configures everything you need to get started. This includes where trace +data (spans) are reported to, how many traces to keep (sampling), if remote +fields (baggage) are sent, and which libraries are traced.

+
+
+

We maintain an example app where two Spring Boot services collaborate on an +HTTP request. Sleuth configures these apps, so that timing of these requests are +recorded into Zipkin, a distributed tracing system. Tracing +UIs visualize latency, such as time in one service vs waiting for other +services.

+
+
+

Here’s an example of what it looks like:

+
+
+
+Zipkin Trace +
+
+
+

The source repository of this +example includes demonstrations of many things, including WebFlux and messaging. +Most features require only a property or dependency change to work. These +snippets showcase the value of Spring Cloud Sleuth: Through auto-configuration, +Sleuth make getting started with distributed tracing easy!

+
+
+

To keep things simple, the same example is used throughout documentation using +basic HTTP communication.

+
+
+
+
+

1. Features

+
+
+

Sleuth sets up instrumentation not only to track timing, but also to catch +errors so that they can be analyzed or correlated with logs. This works the +same way regardless of if the error came from a common instrumented library, +such as RestTemplate, or your own code annotated with @NewSpan or similar.

+
+
+

Below, we’ll use the word Zipkin to describe the tracing system, and include +Zipkin screenshots. However, most services accepting Zipkin format +have similar base features. Sleuth can also be configured to send data in other +formats, something detailed later.

+
+
+

1.1. Contextualizing errors

+
+

Without distributed tracing, it can be difficult to understand the impact of a +an exception. For example, it can be hard to know if a specific request caused +the caller to fail or not.

+
+
+

Zipkin reduces time in triage by contextualizing errors and delays.

+
+
+

Requests colored red in the search screen failed:

+
+
+
+Error Traces +
+
+
+

If you then click on one of the traces, you can understand if the failure +happened before the request hit another service or not:

+
+
+
+Error Traces Info propagation +
+
+
+

For example, the above error happened in the "backend" service, and caused the +"frontend" service to fail.

+
+
+
+

1.2. Log correlation

+
+

Sleuth configures the logging context with variables including the service name +(%{spring.zipkin.service.name}) and the trace ID (%{traceId}). These help +you connect logs with distributed traces and allow you choice in what tools you +use to troubleshoot your services.

+
+
+

Once you find any log with an error, you can look for the trace ID in the +message. Paste that into Zipkin to visualize the entire trace, regardless of +how many services the first request ended up hitting.

+
+
+
+
backend.log:  2020-04-09 17:45:40.516 ERROR [backend,5e8eeec48b08e26882aba313eb08f0a4,dcc1df555b5777b3,true] 97203 --- [nio-9000-exec-1] o.s.c.s.i.web.ExceptionLoggingFilter     : Uncaught exception thrown
+frontend.log:2020-04-09 17:45:40.574 ERROR [frontend,5e8eeec48b08e26882aba313eb08f0a4,82aba313eb08f0a4,true] 97192 --- [nio-8081-exec-2] o.s.c.s.i.web.ExceptionLoggingFilter     : Uncaught exception thrown
+
+
+
+

Above, you’ll notice the trace ID is 5e8eeec48b08e26882aba313eb08f0a4, for +example. This log configuration was automatically setup by Sleuth.

+
+
+

If you use a log aggregating tool (such as Kibana, Splunk, and others), you can order the events that took place. +An example from Kibana would resemble the following image:

+
+
+
+Log correlation with Kibana +
+
+
+

If you want to use Logstash, the following listing shows the Grok pattern for Logstash:

+
+
+
+
filter {
+  # pattern matching logback pattern
+  grok {
+    match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:severity}\s+\[%{DATA:service},%{DATA:trace},%{DATA:span}\]\s+%{DATA:pid}\s+---\s+\[%{DATA:thread}\]\s+%{DATA:class}\s+:\s+%{GREEDYDATA:rest}" }
+  }
+  date {
+    match => ["timestamp", "ISO8601"]
+  }
+  mutate {
+    remove_field => ["timestamp"]
+  }
+}
+
+
+
+ + + + + +
+ + +If you want to use Grok together with the logs from Cloud Foundry, you have to use the following pattern: +
+
+
+
+
filter {
+  # pattern matching logback pattern
+  grok {
+    match => { "message" => "(?m)OUT\s+%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:severity}\s+\[%{DATA:service},%{DATA:trace},%{DATA:span}\]\s+%{DATA:pid}\s+---\s+\[%{DATA:thread}\]\s+%{DATA:class}\s+:\s+%{GREEDYDATA:rest}" }
+  }
+  date {
+    match => ["timestamp", "ISO8601"]
+  }
+  mutate {
+    remove_field => ["timestamp"]
+  }
+}
+
+
+
+

1.2.1. JSON Logback with Logstash

+
+

Often, you do not want to store your logs in a text file but in a JSON file that Logstash can immediately pick. +To do so, you have to do the following (for readability, we pass the dependencies in the groupId:artifactId:version notation).

+
+
+

Dependencies Setup

+
+
+
    +
  1. +

    Ensure that Logback is on the classpath (ch.qos.logback:logback-core).

    +
  2. +
  3. +

    Add Logstash Logback encode. For example, to use version 4.6, add net.logstash.logback:logstash-logback-encoder:4.6.

    +
  4. +
+
+
+

Logback Setup

+
+
+

Consider the following example of a Logback configuration file (logback-spring.xml).

+
+
+
+
<?xml version="1.0" encoding="UTF-8"?>
+<configuration>
+    <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
+    <springProperty scope="context" name="springAppName" source="spring.application.name"/>
+    <!-- Example for logging into the build folder of your project -->
+    <property name="LOG_FILE" value="${BUILD_FOLDER:-build}/${springAppName}"/>
+
+    <!-- You can override this to have a custom pattern -->
+    <property name="CONSOLE_LOG_PATTERN"
+              value="%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}"/>
+
+    <!-- Appender to log to console -->
+    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <!-- Minimum logging level to be presented in the console logs-->
+            <level>DEBUG</level>
+        </filter>
+        <encoder>
+            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
+            <charset>utf8</charset>
+        </encoder>
+    </appender>
+
+    <!-- Appender to log to file -->
+    <appender name="flatfile" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${LOG_FILE}</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.gz</fileNamePattern>
+            <maxHistory>7</maxHistory>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
+            <charset>utf8</charset>
+        </encoder>
+    </appender>
+    <!-- Appender to log to file in a JSON format -->
+    <appender name="logstash" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${LOG_FILE}.json</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${LOG_FILE}.json.%d{yyyy-MM-dd}.gz</fileNamePattern>
+            <maxHistory>7</maxHistory>
+        </rollingPolicy>
+        <encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
+            <providers>
+                <timestamp>
+                    <timeZone>UTC</timeZone>
+                </timestamp>
+                <pattern>
+                    <pattern>
+                        {
+                        "timestamp": "@timestamp",
+                        "severity": "%level",
+                        "service": "${springAppName:-}",
+                        "trace": "%X{traceId:-}",
+                        "span": "%X{spanId:-}",
+                        "pid": "${PID:-}",
+                        "thread": "%thread",
+                        "class": "%logger{40}",
+                        "rest": "%message"
+                        }
+                    </pattern>
+                </pattern>
+            </providers>
+        </encoder>
+    </appender>
+    <root level="INFO">
+        <appender-ref ref="console"/>
+        <!-- uncomment this to have also JSON logs -->
+        <!--<appender-ref ref="logstash"/>-->
+        <!--<appender-ref ref="flatfile"/>-->
+    </root>
+</configuration>
+
+
+
+

That Logback configuration file:

+
+
+
    +
  • +

    Logs information from the application in a JSON format to a build/${spring.application.name}.json file.

    +
  • +
  • +

    Has commented out two additional appenders: console and standard log file.

    +
  • +
  • +

    Has the same logging pattern as the one presented in the previous section.

    +
  • +
+
+
+ + + + + +
+ + +If you use a custom logback-spring.xml, you must pass the spring.application.name in the bootstrap rather than the application property file. +Otherwise, your custom logback file does not properly read the property. +
+
+
+
+
+

1.3. Service Dependency Graph

+
+

When you consider distributed tracing tracks requests, it makes sense that +trace data can paint a picture of your architecture.

+
+
+

Zipkin includes a tool to build service dependency diagrams from traces, +including the count of calls and how many errors exist.

+
+
+

The example application will make a simple diagram like this, but your real +environment diagram may be more complex. +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-sleuth/master/docs/src/main/asciidoc/images/zipkin-depedendencies.png[Zipkin Dependencies]

+
+
+

Note: Production environments will generate a lot of data. You will likely +need to run a separate service to aggregate the dependency graph. You can learn +more here.

+
+
+
+

1.4. Request scoped properties (Baggage)

+
+

Distributed tracing works by propagating fields inside and across services that +connect the trace together: traceId and spanId notably. The context that holds +these fields can optionally push other fields that need to be consistent +regardless of many services are touched. The simple name for these extra fields +is "Baggage".

+
+
+

Sleuth allows you to define which baggage are permitted to exist in the trace +context, including what header names are used.

+
+
+

The following example shows setting baggage values:

+
+
+
+
Span initialSpan = this.tracer.nextSpan().name("span").start();
+BUSINESS_PROCESS.updateValue(initialSpan.context(), "ALM");
+COUNTRY_CODE.updateValue(initialSpan.context(), "FO");
+
+
+
+ + + + + +
+ + +There is currently no limitation of the count or size of baggage +items. Keep in mind that too many can decrease system throughput or increase +RPC latency. In extreme cases, too much baggage can crash the application, due +to exceeding transport-level message or header capacity. +
+
+
+

1.4.1. Baggage versus Tags

+
+

Like trace IDs, Baggage is attached to messages or requests, usually as +headers. Tags are key value pairs sent in a Span to Zipkin. Baggage values are +not added spans by default, which means you can’t search based on Baggage +unless you opt-in.

+
+
+

To make baggage also tags, use the property spring.sleuth.baggage.tag-fields +like so:

+
+
+
+
spring:
+  sleuth:
+    baggage:
+      remoteFields:
+        - country-code
+        - x-vcap-request-id
+      tagFields:
+        - country-code
+
+
+
+
+
+
+
+

2. Adding Sleuth to your Project

+
+
+

This section addresses how to add Sleuth to your project with either Maven or Gradle.

+
+
+ + + + + +
+ + +To ensure that your application name is properly displayed in Zipkin, set the spring.application.name property in bootstrap.yml. +
+
+
+

2.1. Sleuth with Zipkin via HTTP

+
+

If you want both Sleuth and Zipkin, add the spring-cloud-starter-zipkin dependency.

+
+
+

The following example shows how to do so for Maven:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-zipkin</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin.
+
+
+

The following example shows how to do so for Gradle:

+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies { (2)
+    compile "org.springframework.cloud:spring-cloud-starter-zipkin"
+}
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin.
+
+
+
+

2.2. Sleuth with Zipkin over RabbitMQ or Kafka

+
+

If you want to use RabbitMQ or Kafka instead of HTTP, add the spring-rabbit or spring-kafka dependency. +The default destination name is zipkin.

+
+
+

If using Kafka, you must set the property spring.zipkin.sender.type property accordingly:

+
+
+
+
spring.zipkin.sender.type: kafka
+
+
+
+ + + + + +
+ + +spring-cloud-sleuth-stream is deprecated and incompatible with these destinations. +
+
+
+

If you want Sleuth over RabbitMQ, add the spring-cloud-starter-zipkin and spring-rabbit +dependencies.

+
+
+

The following example shows how to do so for Gradle:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-zipkin</artifactId>
+</dependency>
+<dependency> (3)
+    <groupId>org.springframework.amqp</groupId>
+    <artifactId>spring-rabbit</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin. That way, all nested dependencies get downloaded.
3To automatically configure RabbitMQ, add the spring-rabbit dependency.
+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies {
+    compile "org.springframework.cloud:spring-cloud-starter-zipkin" (2)
+    compile "org.springframework.amqp:spring-rabbit" (3)
+}
+
+
+
+ + + + + + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin. That way, all nested dependencies get downloaded.
3To automatically configure RabbitMQ, add the spring-rabbit dependency.
+
+
+
+

2.3. Overriding the auto-configuration of Zipkin

+
+

Spring Cloud Sleuth supports sending traces to multiple tracing systems as of version 2.1.0. +In order to get this to work, every tracing system needs to have a Reporter<Span> and Sender. +If you want to override the provided beans you need to give them a specific name. +To do this you can use respectively ZipkinAutoConfiguration.REPORTER_BEAN_NAME and ZipkinAutoConfiguration.SENDER_BEAN_NAME.

+
+
+
+
@Configuration
+protected static class MyConfig {
+
+    @Bean(ZipkinAutoConfiguration.REPORTER_BEAN_NAME)
+    Reporter<zipkin2.Span> myReporter() {
+        return AsyncReporter.create(mySender());
+    }
+
+    @Bean(ZipkinAutoConfiguration.SENDER_BEAN_NAME)
+    MySender mySender() {
+        return new MySender();
+    }
+
+    static class MySender extends Sender {
+
+        private boolean spanSent = false;
+
+        boolean isSpanSent() {
+            return this.spanSent;
+        }
+
+        @Override
+        public Encoding encoding() {
+            return Encoding.JSON;
+        }
+
+        @Override
+        public int messageMaxBytes() {
+            return Integer.MAX_VALUE;
+        }
+
+        @Override
+        public int messageSizeInBytes(List<byte[]> encodedSpans) {
+            return encoding().listSizeInBytes(encodedSpans);
+        }
+
+        @Override
+        public Call<Void> sendSpans(List<byte[]> encodedSpans) {
+            this.spanSent = true;
+            return Call.create(null);
+        }
+
+    }
+
+}
+
+
+
+
+

2.4. Only Sleuth (log correlation)

+
+

If you want to use only Spring Cloud Sleuth without the Zipkin integration, add the spring-cloud-starter-sleuth module to your project.

+
+
+

The following example shows how to add Sleuth with Maven:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-sleuth</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-sleuth.
+
+
+

The following example shows how to add Sleuth with Gradle:

+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies { (2)
+    compile "org.springframework.cloud:spring-cloud-starter-sleuth"
+}
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-sleuth.
+
+
+
+
+
+

3. Building

+
+
+

3.1. Basic Compile and Test

+
+

To build the source you will need to install JDK 1.7.

+
+
+

Spring Cloud uses Maven for most build-related activities, and you +should be able to get off the ground quite quickly by cloning the +project you are interested in and typing

+
+
+
+
$ ./mvnw install
+
+
+
+ + + + + +
+ + +You can also install Maven (>=3.3.3) yourself and run the mvn command +in place of ./mvnw in the examples below. If you do that you also +might need to add -P spring if your local Maven settings do not +contain repository declarations for spring pre-release artifacts. +
+
+
+ + + + + +
+ + +Be aware that you might need to increase the amount of memory +available to Maven by setting a MAVEN_OPTS environment variable with +a value like -Xmx512m -XX:MaxPermSize=128m. We try to cover this in +the .mvn configuration, so if you find you have to do it to make a +build succeed, please raise a ticket to get the settings added to +source control. +
+
+
+

For hints on how to build the project look in .travis.yml if there +is one. There should be a "script" and maybe "install" command. Also +look at the "services" section to see if any services need to be +running locally (e.g. mongo or rabbit). Ignore the git-related bits +that you might find in "before_install" since they’re related to setting git +credentials and you already have those.

+
+
+

The projects that require middleware generally include a +docker-compose.yml, so consider using +Docker Compose to run the middeware servers +in Docker containers. See the README in the +scripts demo +repository for specific instructions about the common cases of mongo, +rabbit and redis.

+
+
+ + + + + +
+ + +If all else fails, build with the command from .travis.yml (usually +./mvnw install). +
+
+
+
+

3.2. Documentation

+
+

The spring-cloud-build module has a "docs" profile, and if you switch +that on it will try to build asciidoc sources from +src/main/asciidoc. As part of that process it will look for a +README.adoc and process it by loading all the includes, but not +parsing or rendering it, just copying it to ${main.basedir} +(defaults to ${basedir}, i.e. the root of the project). If there are +any changes in the README it will then show up after a Maven build as +a modified file in the correct place. Just commit it and push the change.

+
+
+
+

3.3. Working with the code

+
+

If you don’t have an IDE preference we would recommend that you use +Spring Tools Suite or +Eclipse when working with the code. We use the +m2eclipse eclipse plugin for maven support. Other IDEs and tools +should also work without issue as long as they use Maven 3.3.3 or better.

+
+
+

3.3.1. Importing into eclipse with m2eclipse

+
+

We recommend the m2eclipse eclipse plugin when working with +eclipse. If you don’t already have m2eclipse installed it is available from the "eclipse +marketplace".

+
+
+ + + + + +
+ + +Older versions of m2e do not support Maven 3.3, so once the +projects are imported into Eclipse you will also need to tell +m2eclipse to use the right profile for the projects. If you +see many different errors related to the POMs in the projects, check +that you have an up to date installation. If you can’t upgrade m2e, +add the "spring" profile to your settings.xml. Alternatively you can +copy the repository settings from the "spring" profile of the parent +pom into your settings.xml. +
+
+
+
+

3.3.2. Importing into eclipse without m2eclipse

+
+

If you prefer not to use m2eclipse you can generate eclipse project metadata using the +following command:

+
+
+
+
$ ./mvnw eclipse:eclipse
+
+
+
+

The generated eclipse projects can be imported by selecting import existing projects +from the file menu.

+
+
+ + + + + +
+ + +Spring Cloud Sleuth uses two different versions of language level. Java 1.7 is used for main sources, and +Java 1.8 is used for tests. When importing your project to an IDE, you should activate the ide Maven profile to turn on +Java 1.8 for both main and test sources. You MUST NOT use Java 1.8 features in the main sources. If you do +so, your app breaks during the Maven build. +
+
+
+
+
+
+
+

4. Contributing

+
+
+

Spring Cloud is released under the non-restrictive Apache 2.0 license, +and follows a very standard Github development process, using Github +tracker for issues and merging pull requests into master. If you want +to contribute even something trivial please do not hesitate, but +follow the guidelines below.

+
+
+

4.1. Sign the Contributor License Agreement

+
+

Before we accept a non-trivial patch or pull request we will need you to sign the +Contributor License Agreement. +Signing the contributor’s agreement does not grant anyone commit rights to the main +repository, but it does mean that we can accept your contributions, and you will get an +author credit if we do. Active contributors might be asked to join the core team, and +given the ability to merge pull requests.

+
+
+
+

4.2. Code of Conduct

+
+

This project adheres to the Contributor Covenant code of +conduct. By participating, you are expected to uphold this code. Please report +unacceptable behavior to spring-code-of-conduct@pivotal.io.

+
+
+
+

4.3. 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.

+
+
+
    +
  • +

    Use the Spring Framework code format conventions. If you use Eclipse +you can import formatter settings using the +eclipse-code-formatter.xml file from the +Spring +Cloud Build project. If using IntelliJ, you can use the +Eclipse Code Formatter +Plugin to import the same file.

    +
  • +
  • +

    Make sure all new .java files to have a simple Javadoc class comment with at least an +@author tag identifying you, and preferably at least a paragraph on what the class is +for.

    +
  • +
  • +

    Add the ASF license header comment to all new .java files (copy from existing files +in the project)

    +
  • +
  • +

    Add yourself as an @author to the .java files that you modify substantially (more +than cosmetic changes).

    +
  • +
  • +

    Add some Javadocs and, if you change the namespace, some XSD doc elements.

    +
  • +
  • +

    A few unit tests would help a lot as well — someone has to do it.

    +
  • +
  • +

    If no-one else is using your branch, please rebase it against the current master (or +other target branch in the main project).

    +
  • +
  • +

    When writing a commit message please follow these conventions, +if you are fixing an existing issue please add Fixes gh-XXXX at the end of the commit +message (where XXXX is the issue number).

    +
  • +
+
+
+
+

4.4. Checkstyle

+
+

Spring Cloud Build comes with a set of checkstyle rules. You can find them in the spring-cloud-build-tools module. The most notable files under the module are:

+
+
+
spring-cloud-build-tools/
+
+
└── src
+    ├── checkstyle
+    │   └── checkstyle-suppressions.xml (3)
+    └── main
+        └── resources
+            ├── checkstyle-header.txt (2)
+            └── checkstyle.xml (1)
+
+
+
+ + + + + + + + + + + + + +
1Default Checkstyle rules
2File header setup
3Default suppression rules
+
+
+

4.4.1. Checkstyle configuration

+
+

Checkstyle rules are disabled by default. To add checkstyle to your project just define the following properties and plugins.

+
+
+
pom.xml
+
+
<properties>
+<maven-checkstyle-plugin.failsOnError>true</maven-checkstyle-plugin.failsOnError> (1)
+        <maven-checkstyle-plugin.failsOnViolation>true
+        </maven-checkstyle-plugin.failsOnViolation> (2)
+        <maven-checkstyle-plugin.includeTestSourceDirectory>true
+        </maven-checkstyle-plugin.includeTestSourceDirectory> (3)
+</properties>
+
+<build>
+        <plugins>
+            <plugin> (4)
+                <groupId>io.spring.javaformat</groupId>
+                <artifactId>spring-javaformat-maven-plugin</artifactId>
+            </plugin>
+            <plugin> (5)
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+            </plugin>
+        </plugins>
+
+    <reporting>
+        <plugins>
+            <plugin> (5)
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-checkstyle-plugin</artifactId>
+            </plugin>
+        </plugins>
+    </reporting>
+</build>
+
+
+
+ + + + + + + + + + + + + + + + + + + + + +
1Fails the build upon Checkstyle errors
2Fails the build upon Checkstyle violations
3Checkstyle analyzes also the test sources
4Add the Spring Java Format plugin that will reformat your code to pass most of the Checkstyle formatting rules
5Add checkstyle plugin to your build and reporting phases
+
+
+

If you need to suppress some rules (e.g. line length needs to be longer), then it’s enough for you to define a file under ${project.root}/src/checkstyle/checkstyle-suppressions.xml with your suppressions. Example:

+
+
+
projectRoot/src/checkstyle/checkstyle-suppresions.xml
+
+
<?xml version="1.0"?>
+<!DOCTYPE suppressions PUBLIC
+        "-//Puppy Crawl//DTD Suppressions 1.1//EN"
+        "https://www.puppycrawl.com/dtds/suppressions_1_1.dtd">
+<suppressions>
+    <suppress files=".*ConfigServerApplication\.java" checks="HideUtilityClassConstructor"/>
+    <suppress files=".*ConfigClientWatch\.java" checks="LineLengthCheck"/>
+</suppressions>
+
+
+
+

It’s advisable to copy the ${spring-cloud-build.rootFolder}/.editorconfig and ${spring-cloud-build.rootFolder}/.springformat to your project. That way, some default formatting rules will be applied. You can do so by running this script:

+
+
+
+
$ curl https://raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/.editorconfig -o .editorconfig
+$ touch .springformat
+
+
+
+
+
+

4.5. IDE setup

+
+

4.5.1. Intellij IDEA

+
+

In order to setup Intellij you should import our coding conventions, inspection profiles and set up the checkstyle plugin. +The following files can be found in the Spring Cloud Build project.

+
+
+
spring-cloud-build-tools/
+
+
└── src
+    ├── checkstyle
+    │   └── checkstyle-suppressions.xml (3)
+    └── main
+        └── resources
+            ├── checkstyle-header.txt (2)
+            ├── checkstyle.xml (1)
+            └── intellij
+                ├── Intellij_Project_Defaults.xml (4)
+                └── Intellij_Spring_Boot_Java_Conventions.xml (5)
+
+
+
+ + + + + + + + + + + + + + + + + + + + + +
1Default Checkstyle rules
2File header setup
3Default suppression rules
4Project defaults for Intellij that apply most of Checkstyle rules
5Project style conventions for Intellij that apply most of Checkstyle rules
+
+
+
+Code style +
+
Figure 1. Code style
+
+
+

Go to FileSettingsEditorCode style. There click on the icon next to the Scheme section. There, click on the Import Scheme value and pick the Intellij IDEA code style XML option. Import the spring-cloud-build-tools/src/main/resources/intellij/Intellij_Spring_Boot_Java_Conventions.xml file.

+
+
+
+Code style +
+
Figure 2. Inspection profiles
+
+
+

Go to FileSettingsEditorInspections. There click on the icon next to the Profile section. There, click on the Import Profile and import the spring-cloud-build-tools/src/main/resources/intellij/Intellij_Project_Defaults.xml file.

+
+
+
Checkstyle
+

To have Intellij work with Checkstyle, you have to install the Checkstyle plugin. It’s advisable to also install the Assertions2Assertj to automatically convert the JUnit assertions

+
+
+
+Checkstyle +
+
+
+

Go to FileSettingsOther settingsCheckstyle. There click on the + icon in the Configuration file section. There, you’ll have to define where the checkstyle rules should be picked from. In the image above, we’ve picked the rules from the cloned Spring Cloud Build repository. However, you can point to the Spring Cloud Build’s GitHub repository (e.g. for the checkstyle.xml : raw.githubusercontent.com/spring-cloud/spring-cloud-build/master/spring-cloud-build-tools/src/main/resources/checkstyle.xml). We need to provide the following variables:

+
+
+ +
+
+ + + + + +
+ + +Remember to set the Scan Scope to All sources since we apply checkstyle rules for production and test sources. +
+
+
+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/appendix.html b/spring-cloud-sleuth/3.0.0.M1/reference/html/appendix.html new file mode 100644 index 00000000..ff9e93a7 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/appendix.html @@ -0,0 +1,482 @@ + + + + + + + +Common application properties + + + + + + + + + + +
+
+

Appendix A: Common application properties

+
+
+

Various properties can be specified inside your application.properties file, inside your application.yml file, or as command line switches. +This appendix provides a list of common Spring Cloud Sleuth properties and references to the underlying classes that consume them.

+
+
+ + + + + +
+ + +Property contributions can come from additional jar files on your classpath, so you should not consider this an exhaustive list. +Also, you can define your own properties. +
+
+ +++++ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NameDefaultDescription

spring.sleuth.annotation.enabled

true

spring.sleuth.async.configurer.enabled

true

Enable default AsyncConfigurer.

spring.sleuth.async.enabled

true

Enable instrumenting async related components so that the tracing information is passed between threads.

spring.sleuth.async.ignored-beans

List of {@link java.util.concurrent.Executor} bean names that should be ignored and not wrapped in a trace representation.

spring.sleuth.baggage.correlation-enabled

true

Adds a {@link CorrelationScopeDecorator} to put baggage values into the correlation context.

spring.sleuth.baggage.correlation-fields

A list of {@link BaggageField#name() fields} to add to correlation (MDC) context. @see CorrelationScopeConfig.SingleCorrelationField#create(BaggageField)

spring.sleuth.baggage.local-fields

Same as {@link #remoteFields} except that this field is not propagated to remote services. @see BaggagePropagationConfig.SingleBaggageField#local(BaggageField)

spring.sleuth.baggage.remote-fields

List of fields that are referenced the same in-process as it is on the wire. For example, the field "x-vcap-request-id" would be set as-is including the prefix. @see BaggagePropagationConfig.SingleBaggageField#remote(BaggageField) @see BaggagePropagationConfig.SingleBaggageField.Builder#addKeyName(String)

spring.sleuth.baggage.tag-fields

A list of {@link BaggageField#name() fields} to tag into the span. @see Tags#BAGGAGE_FIELD

spring.sleuth.circuitbreaker.enabled

true

Enable Spring Cloud CircuitBreaker instrumentation.

spring.sleuth.enabled

true

spring.sleuth.feign.enabled

true

Enable span information propagation when using Feign.

spring.sleuth.feign.processor.enabled

true

Enable post processor that wraps Feign Context in its tracing representations.

spring.sleuth.grpc.enabled

true

Enable span information propagation when using GRPC.

spring.sleuth.http.enabled

true

spring.sleuth.http.legacy.enabled

false

spring.sleuth.integration.enabled

true

Enable Spring Integration sleuth instrumentation.

spring.sleuth.integration.patterns

[!hystrixStreamOutput*, , !channel]

An array of patterns against which channel names will be matched. @see org.springframework.integration.config.GlobalChannelInterceptor#patterns() Defaults to any channel name not matching the Hystrix Stream and functional Stream channel names.

spring.sleuth.integration.websockets.enabled

true

Enable tracing for WebSockets.

spring.sleuth.messaging.enabled

false

Should messaging be turned on.

spring.sleuth.messaging.jms.enabled

true

Enable tracing of JMS.

spring.sleuth.messaging.jms.remote-service-name

jms

spring.sleuth.messaging.kafka.enabled

true

Enable tracing of Kafka.

spring.sleuth.messaging.kafka.mapper.enabled

true

Enable DefaultKafkaHeaderMapper tracing for Kafka.

spring.sleuth.messaging.kafka.remote-service-name

kafka

spring.sleuth.messaging.rabbit.enabled

true

Enable tracing of RabbitMQ.

spring.sleuth.messaging.rabbit.remote-service-name

rabbitmq

spring.sleuth.opentracing.enabled

true

spring.sleuth.reactor.decorate-on-each

true

When true decorates on each operator, will be less performing, but logging will always contain the tracing entries in each operator. When false decorates on last operator, will be more performing, but logging might not always contain the tracing entries.

spring.sleuth.reactor.enabled

true

When true enables instrumentation for reactor.

spring.sleuth.redis.enabled

true

Enable span information propagation when using Redis.

spring.sleuth.redis.remote-service-name

redis

Service name for the remote Redis endpoint.

spring.sleuth.rxjava.schedulers.hook.enabled

true

Enable support for RxJava via RxJavaSchedulersHook.

spring.sleuth.rxjava.schedulers.ignoredthreads

[HystrixMetricPoller, ^RxComputation.*$]

Thread names for which spans will not be sampled.

spring.sleuth.sampler.probability

Probability of requests that should be sampled. E.g. 1.0 - 100% requests should be sampled. The precision is whole-numbers only (i.e. there’s no support for 0.1% of the traces).

spring.sleuth.sampler.rate

10

A rate per second can be a nice choice for low-traffic endpoints as it allows you surge protection. For example, you may never expect the endpoint to get more than 50 requests per second. If there was a sudden surge of traffic, to 5000 requests per second, you would still end up with 50 traces per second. Conversely, if you had a percentage, like 10%, the same surge would end up with 500 traces per second, possibly overloading your storage. Amazon X-Ray includes a rate-limited sampler (named Reservoir) for this purpose. Brave has taken the same approach via the {@link brave.sampler.RateLimitingSampler}.

spring.sleuth.scheduled.enabled

true

Enable tracing for {@link org.springframework.scheduling.annotation.Scheduled}.

spring.sleuth.scheduled.skip-pattern

Pattern for the fully qualified name of a class that should be skipped.

spring.sleuth.supports-join

true

True means the tracing system supports sharing a span ID between a client and server.

spring.sleuth.trace-id128

false

When true, generate 128-bit trace IDs instead of 64-bit ones.

spring.sleuth.web.additional-skip-pattern

Additional pattern for URLs that should be skipped in tracing. This will be appended to the {@link SleuthWebProperties#skipPattern}.

spring.sleuth.web.client.enabled

true

Enable interceptor injecting into {@link org.springframework.web.client.RestTemplate}.

spring.sleuth.web.client.skip-pattern

Pattern for URLs that should be skipped in client side tracing.

spring.sleuth.web.enabled

true

When true enables instrumentation for web applications.

spring.sleuth.web.exception-logging-filter-enabled

true

Flag to toggle the presence of a filter that logs thrown exceptions.

spring.sleuth.web.exception-throwing-filter-enabled

true

Flag to toggle the presence of a filter that logs thrown exceptions. @deprecated use {@link #exceptionLoggingFilterEnabled}

spring.sleuth.web.filter-order

Order in which the tracing filters should be registered. Defaults to {@link TraceHttpAutoConfiguration#TRACING_FILTER_ORDER}.

spring.sleuth.web.ignore-auto-configured-skip-patterns

false

If set to true, auto-configured skip patterns will be ignored. @see TraceWebAutoConfiguration

spring.sleuth.web.skip-pattern

/api-docs.|/swagger.|.\.png|.\.css|.\.js|.\.html|/favicon.ico|/hystrix.stream

Pattern for URLs that should be skipped in tracing.

spring.zipkin.activemq.message-max-bytes

100000

Maximum number of bytes for a given message with spans sent to Zipkin over ActiveMQ.

spring.zipkin.activemq.queue

zipkin

Name of the ActiveMQ queue where spans should be sent to Zipkin.

spring.zipkin.base-url

localhost:9411/

URL of the zipkin query server instance. You can also provide the service id of the Zipkin server if Zipkin’s registered in service discovery (e.g. zipkinserver/).

spring.zipkin.compression.enabled

false

spring.zipkin.discovery-client-enabled

If set to {@code false}, will treat the {@link ZipkinProperties#baseUrl} as a URL always.

spring.zipkin.enabled

true

Enables sending spans to Zipkin.

spring.zipkin.encoder

Encoding type of spans sent to Zipkin. Set to {@link SpanBytesEncoder#JSON_V1} if your server is not recent.

spring.zipkin.kafka.topic

zipkin

Name of the Kafka topic where spans should be sent to Zipkin.

spring.zipkin.locator.discovery.enabled

false

Enabling of locating the host name via service discovery.

spring.zipkin.message-timeout

1

Timeout in seconds before pending spans will be sent in batches to Zipkin.

spring.zipkin.rabbitmq.addresses

Addresses of the RabbitMQ brokers used to send spans to Zipkin

spring.zipkin.rabbitmq.queue

zipkin

Name of the RabbitMQ queue where spans should be sent to Zipkin.

spring.zipkin.sender.type

Means of sending spans to Zipkin.

spring.zipkin.service.name

The name of the service, from which the Span was sent via HTTP, that should appear in Zipkin.

+
+
+
+ + + + + + + \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/css/spring.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/css/spring.css new file mode 100644 index 00000000..ca64edd5 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/css/spring.css @@ -0,0 +1 @@ +@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,700&display=swap");/*! normalize.css v2.1.2 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}script{display:none !important}html,body{font-size:100%}html{font-family:'Open Sans', sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}*,*:before,*:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}body{background:white;color:#000;padding:0;margin:0;font-size:16px;font-family:'Open Sans', sans-serif;font-weight:normal;font-style:normal;line-height:1.6em;position:relative;cursor:auto}a:hover{cursor:pointer}img,object,embed{max-width:100%;height:auto}object,embed{height:100%}img{-ms-interpolation-mode:bicubic}#map_canvas img,#map_canvas embed,#map_canvas object,.map_canvas img,.map_canvas embed,.map_canvas object{max-width:none !important}.left{float:left !important}.right{float:right !important}.text-left{text-align:left !important}.text-right{text-align:right !important}.text-center{text-align:center !important}.text-justify{text-align:justify !important}.hide{display:none}.antialiased{-webkit-font-smoothing:antialiased}img{display:inline-block;vertical-align:middle}textarea{height:auto;min-height:50px}select{width:100%}object,svg{display:inline-block;vertical-align:middle}.center{margin-left:auto;margin-right:auto}.spread,.stretch{width:100%}p.lead,.paragraph.lead>p,#preamble>.sectionbody>.paragraph:first-of-type p{line-height:1.6}.subheader,.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#0b0a0a;font-weight:bold;margin-top:0;margin-bottom:0.8em}div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0;direction:ltr}a{color:#086dc3;line-height:inherit;text-decoration:none}a:hover,a:focus{color:#086dc3;text-decoration:underline}a img{border:none}p{font-family:inherit;font-weight:normal;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}p aside{font-size:0.875em;line-height:1.35;font-style:italic}h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:Montserrat, sans-serif;font-weight:400;font-style:normal;color:#000;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:0.5em;line-height:1.0125em}h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#867c74;line-height:0}h1{font-size:2.125em}h2{font-size:1.6875em}h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em}h4{font-size:1.125em}h5{font-size:1.125em}h6{font-size:1em}hr{border:solid #dce6e6;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}em,i{font-style:italic;line-height:inherit}strong,b{font-weight:bold;line-height:inherit}small{font-size:60%;line-height:inherit}code{font-family:Monaco, Menlo, Consolas, "Courier New", monospace;font-weight:normal;color:#3d3d3c;word-break:break-word}a:not(pre)>code{border:1px solid #086dc3;color:#086dc3}ul,ol,dl{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}ul,ol{margin-left:1.5em}ul.no-bullet,ol.no-bullet{margin-left:1.5em}ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0;font-size:1em}ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit}ul.square{list-style-type:square}ul.circle{list-style-type:circle}ul.disc{list-style-type:disc}ul.no-bullet{list-style:none}ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0}dl dt{margin-bottom:0.3125em;font-weight:bold}dl dd{margin-bottom:1.25em}abbr,acronym{text-transform:uppercase;font-size:90%;color:#000;border-bottom:1px dotted #dddddd;cursor:help}abbr{text-transform:none}blockquote{margin:0 0 1.25em;padding:0.5625em 1.25em 0 1.1875em;border-left:1px solid #dddddd}blockquote cite{display:block;font-size:0.9375em;color:rgba(0,0,0,0.6)}blockquote cite:before{content:"\2014 \0020"}blockquote cite a,blockquote cite a:visited{color:rgba(0,0,0,0.6)}blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,0.85)}.vcard{display:inline-block;margin:0 0 1.25em 0;border:1px solid #dddddd;padding:0.625em 0.75em}.vcard li{margin:0;display:block}.vcard .fn{font-weight:bold;font-size:0.9375em}.vevent .summary{font-weight:bold}.vevent abbr{cursor:auto;text-decoration:none;font-weight:bold;border:none;padding:0 0.0625em}#tocbot{padding:0 0 0.5rem 0;line-height:1.5rem;padding-left:10px}.mobile-toc{padding:0 0 1rem 0;line-height:1.5rem}.mobile-toc li a{display:block;padding:.3rem 0}#tocbot ol li{list-style:none;padding:0;margin:0}#tocbot ol{margin:0;padding:0}#tocbot ol ol{padding-left:0.6rem}#tocbot .toc-link{display:block;padding-top:.6rem;padding-bottom:.6rem;outline:none;border-radius:4px;font-size:15px;transition:all .15s}#tocbot .toc-link:hover{background:#ebf2f2;color:#06c;text-decoration:none}table{background:white;margin-bottom:1.25em;border:solid 1px #d4dfdf;border-spacing:0}table thead,table tfoot{background:#ebf2f2;font-weight:bold}table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:0.5em 0.625em 0.625em;font-size:inherit;color:#000;text-align:left}table tr th,table tr td{padding:0.5625em 0.625em;font-size:inherit;color:#000}table tr.even,table tr.alt,table tr:nth-child(even){background:#f5f9f9}table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{display:table-cell;line-height:1.6}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;tab-size:4}h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-0.05em}.clearfix:before,.clearfix:after,.float-group:before,.float-group:after{content:" ";display:table}.clearfix:after,.float-group:after{clear:both}*:not(pre)>code{white-space:nowrap;background-color:#fff;border:1px solid #e1e1e8;color:#009;padding:2px 6px;font-size:.875rem;font-family:Monaco, Menlo, Consolas, "Courier New", monospace}pre,pre>code{line-height:1.85;color:rgba(0,0,0,0.9);font-family:Monaco, Menlo, Consolas, "Courier New", monospace;font-weight:normal;text-rendering:optimizeSpeed;word-break:normal}pre{overflow:auto}em em{font-style:normal}strong strong{font-weight:normal}.keyseq{color:#6b625c}kbd{font-family:Monaco, Menlo, Consolas, "Courier New", monospace;display:inline-block;color:#000;font-size:0.65em;line-height:1.45;background-color:#f7f7f7;border:1px solid #ccc;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.2),0 0 0 0.1em white inset;box-shadow:0 1px 0 rgba(0,0,0,0.2),0 0 0 0.1em white inset;margin:0 0.15em;padding:0.2em 0.5em;vertical-align:middle;position:relative;top:-0.1em;white-space:nowrap}.keyseq kbd:first-child{margin-left:0}.keyseq kbd:last-child{margin-right:0}.menuseq,.menu{color:#191715}b.button:before,b.button:after{position:relative;top:-1px;font-weight:normal}b.button:before{content:"[";padding:0 3px 0 2px}b.button:after{content:"]";padding:0 2px 0 3px}p a>code:hover{color:rgba(0,0,0,0.9)}#toc{border-bottom:1px solid #dce6e6;padding-bottom:0.5em}#toc>ul{margin-left:0.125em}#toc ul.sectlevel0>li>a{font-style:italic}#toc ul.sectlevel0 ul.sectlevel1{margin:0.5em 0}#toc ul{list-style-type:none}#toc li{line-height:1.3334}#toc a{text-decoration:none}#toc a:active{text-decoration:underline}#toctitle{color:#0b0a0a;font-size:1.2em;display:none}body.toc2{padding-top:80px;text-rendering:optimizeLegibility}#content #toc{border-style:solid;border-width:1px;border-color:#dce6e6;margin-bottom:1.25em;padding:1.25em;background:#f1f1f1;-webkit-border-radius:4px;border-radius:4px}#content #toc>:first-child{margin-top:0}#content #toc>:last-child{margin-bottom:0}#footer{padding-bottom:2rem}#footer #footer-text{padding:2rem 0;border-top:1px solid #efefed}#footer-text{color:rgba(0,0,0,0.6);line-height:1.44}.sect1{padding-bottom:0.625em}.sect1+.sect1{border-top:1px solid #efefed}#content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;margin-top:0.1rem;display:block;visibility:hidden;text-align:center;font-weight:normal;color:rgba(0,0,0,0.2)}#content h1>a.anchor:hover,h2>a.anchor:hover,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4>a.anchor:hover,h5>a.anchor:hover,h6>a.anchor:hover{color:#097dff;text-decoration:none}#content h1>a.anchor:before,h2>a.anchor:before,h3>a.anchor:before,#toctitle>a.anchor:before,.sidebarblock>.content>.title>a.anchor:before,h4>a.anchor:before,h5>a.anchor:before,h6>a.anchor:before{content:"\0023";font-size:0.85em;display:block;padding-top:0.1em}#content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible}#content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#000;text-decoration:none}#content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#262321}.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em}.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:'Open Sans', sans-serif;font-size:1rem}table.tableblock>caption.title{white-space:nowrap;overflow:visible;max-width:0;padding:0.6rem 0}table.tableblock #preamble>.sectionbody>.paragraph:first-of-type p{font-size:inherit}.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.admonitionblock>table td.icon{text-align:center;vertical-align:top;padding-top:0.8em;width:80px}.admonitionblock>table td.icon img{max-width:initial}.admonitionblock>table td.icon .title{font-weight:bold;font-family:Montserrat, sans-serif;text-transform:uppercase}.admonitionblock>table td.content{padding-left:0em;padding-right:1.25em;border-left:1px solid #dce6e6}.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.exampleblock>.content{border-style:solid;border-width:0;border-color:#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#f1f1f1;border-radius:4px}.exampleblock>.content>:first-child{margin-top:0}.exampleblock>.content>:last-child{margin-bottom:0}.sidebarblock{border-style:solid;border-width:0;border-color:#dce6e6;margin-bottom:1.25em;padding:1.25em;background:#ebf2f2;border-radius:4px;overflow:scroll}.sidebarblock>:first-child{margin-top:0}.sidebarblock>:last-child{margin-bottom:0}.sidebarblock>.content>.title{color:#0b0a0a;margin-top:0;text-align:center}.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child{margin-bottom:0}.literalblock pre,.listingblock pre:not(.highlight),.listingblock pre[class="highlight"],.listingblock pre[class^="highlight "],.listingblock pre.CodeRay,.listingblock pre.prettyprint{background:#fff;border:1px solid #d9d9d9;border-radius:4px}.sidebarblock .literalblock pre,.sidebarblock .listingblock pre:not(.highlight),.sidebarblock .listingblock pre[class="highlight"],.sidebarblock .listingblock pre[class^="highlight "],.sidebarblock .listingblock pre.CodeRay,.sidebarblock .listingblock pre.prettyprint{background:#fff;border:1px solid #d9d9d9;color:#222}.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class],.listingblock pre:not(.highlight){padding:1em 1.5rem;font-size:0.8125em}.literalblock pre.nowrap,.literalblock pre[class].nowrap,.listingblock pre.nowrap,.listingblock pre[class].nowrap{overflow-x:auto}.literalblock.output pre{color:whitesmoke;background-color:rgba(0,0,0,0.9)}.listingblock{white-space:nowrap}.listingblock pre.highlightjs>code{padding:1em 1.5rem;border-radius:4px}.listingblock>.content{position:relative}.listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:0.8em;font-weight:bold;top:0.425rem;right:0.5rem;line-height:1;text-transform:uppercase;color:#999}.listingblock code[data-lang]:before{display:block}.listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:0.5em;color:#999}.listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}table.pyhltable{border-collapse:separate;border:0;margin-bottom:0;background:none}table.pyhltable td{vertical-align:top;padding-top:0;padding-bottom:0;line-height:1.45}table.pyhltable td.code{padding-left:.75em;padding-right:0}pre.pygments .lineno,table.pyhltable td:not(.code){color:#999;padding-left:0;padding-right:.5em;border-right:1px solid #dce6e6}pre.pygments .lineno{display:block;margin-right:.25em}table.pyhltable .linenodiv{background:none !important;padding-right:0 !important}.quoteblock{margin:0 1em 1.25em 1.5em;display:block;text-align:left;padding-left:20px}.quoteblock blockquote,.quoteblock blockquote p{color:rgba(0,0,0,0.85);line-height:1.75;letter-spacing:0}.quoteblock blockquote{margin:0;padding:0;border:0;position:relative}.quoteblock blockquote:before{content:"\201c";font-size:2.75em;font-weight:bold;line-height:0.6em;margin-left:0em;margin-right:1rem;margin-top:0.8rem;color:rgba(0,0,0,0.1);position:absolute;top:0;left:-30px}.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.quoteblock .attribution{margin-right:0.5ex}.quoteblock .quoteblock{margin-left:0;margin-right:0;padding:0.5em 0;border-left:3px solid rgba(0,0,0,0.6)}.quoteblock .quoteblock blockquote{padding:0 0 0 0.75em}.quoteblock .quoteblock blockquote:before{display:none}.verseblock{margin:0 1em 1.25em 0;background-color:#f1f1f1;padding:1rem 1.4rem;border-radius:4px}.verseblock pre{font-family:Monaco, Menlo, Consolas, "Courier New", monospace;font-size:0.9rem;color:rgba(0,0,0,0.85);font-weight:300;text-rendering:optimizeLegibility}.verseblock pre strong{font-weight:400}.verseblock .attribution{margin-top:1.25rem;margin-left:0.5ex}.quoteblock .attribution,.verseblock .attribution{font-size:0.9375em;line-height:1.45;font-style:italic}.quoteblock .attribution br,.verseblock .attribution br{display:none}.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-0.025em;color:rgba(0,0,0,0.6)}.quoteblock.abstract{margin:0 0 1.25em 0;display:block}.quoteblock.abstract blockquote,.quoteblock.abstract blockquote p{text-align:left;word-spacing:0}.quoteblock.abstract blockquote:before,.quoteblock.abstract blockquote p:first-of-type:before{display:none}table.tableblock{max-width:100%;border-collapse:separate;overflow-x:scroll}table.tableblock td>.paragraph:last-child p>p:last-child,table.tableblock th>p:last-child,table.tableblock td>p:last-child{margin-bottom:0}table.tableblock,th.tableblock,td.tableblock{border:0 solid #d4dfdf}table.grid-all th.tableblock,table.grid-all td.tableblock{border-width:0 1px 1px 0}table.grid-all tfoot>tr>th.tableblock,table.grid-all tfoot>tr>td.tableblock{border-width:1px 1px 0 0}table.grid-cols th.tableblock,table.grid-cols td.tableblock{border-width:0 1px 0 0}table.grid-all *>tr>.tableblock:last-child,table.grid-cols *>tr>.tableblock:last-child{border-right-width:0}table.grid-rows th.tableblock,table.grid-rows td.tableblock{border-width:0 0 1px 0}table.grid-all tbody>tr:last-child>th.tableblock,table.grid-all tbody>tr:last-child>td.tableblock,table.grid-all thead:last-child>tr>th.tableblock,table.grid-rows tbody>tr:last-child>th.tableblock,table.grid-rows tbody>tr:last-child>td.tableblock,table.grid-rows thead:last-child>tr>th.tableblock{border-bottom-width:0}table.grid-rows tfoot>tr>th.tableblock,table.grid-rows tfoot>tr>td.tableblock{border-width:1px 0 0 0}table.frame-all{border-width:1px}table.frame-sides{border-width:0 1px}table.frame-topbot{border-width:1px 0}th.halign-left,td.halign-left{text-align:left}th.halign-right,td.halign-right{text-align:right}th.halign-center,td.halign-center{text-align:center}th.valign-top,td.valign-top{vertical-align:top}th.valign-bottom,td.valign-bottom{vertical-align:bottom}th.valign-middle,td.valign-middle{vertical-align:middle}table thead th,table tfoot th{font-weight:bold}tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:#34302d;font-weight:bold}p.tableblock{font-size:1em}td>div.verse{white-space:pre}ol{margin-left:1.75em}ul li ol{margin-left:1.5em}dl dd{margin-left:1.125em}dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}ol>li p,ul>li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:0.625em}ul.unstyled,ol.unnumbered,ul.checklist,ul.none{list-style-type:none}ul.unstyled,ol.unnumbered,ul.checklist{margin-left:0.625em}ul.checklist li>p:first-child>.fa-square-o:first-child,ul.checklist li>p:first-child>.fa-check-square-o:first-child{width:1em;font-size:0.85em}ul.checklist li>p:first-child>input[type="checkbox"]:first-child{width:1em;position:relative;top:1px}ul.inline{margin:0 auto 0.625em auto;margin-left:-1.375em;margin-right:0;padding:0;list-style:none;overflow:hidden}ul.inline>li{list-style:none;float:left;margin-left:1.375em;display:block}ul.inline>li>*{display:block}.unstyled dl dt{font-weight:normal;font-style:normal}ol.arabic{list-style-type:decimal}ol.decimal{list-style-type:decimal-leading-zero}ol.loweralpha{list-style-type:lower-alpha}ol.upperalpha{list-style-type:upper-alpha}ol.lowerroman{list-style-type:lower-roman}ol.upperroman{list-style-type:upper-roman}ol.lowergreek{list-style-type:lower-greek}.hdlist>table,.colist>table{border:0;background:none}.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none}td.hdlist1,td.hdlist2{vertical-align:top;padding:0 0.625em}td.hdlist1{font-weight:bold;padding-bottom:1.25em}.literalblock+.colist,.listingblock+.colist{margin-top:-0.5em}.colist>table tr>td:first-of-type{padding:0 0.75em;line-height:1}.colist>table tr>td:first-of-type img{max-width:initial}.colist>table tr>td:last-of-type{padding:0.25em 0}.colist>table tr>td{white-space:pre-wrap}.thumb,.th{line-height:0;display:inline-block;border:solid 4px white;-webkit-box-shadow:0 0 0 1px #dddddd;box-shadow:0 0 0 1px #dddddd}.imageblock.left,.imageblock[style*="float: left"]{margin:0.25em 0.625em 1.25em 0}.imageblock.right,.imageblock[style*="float: right"]{margin:0.25em 0 1.25em 0.625em}.imageblock>.title{margin-bottom:0}.imageblock.thumb,.imageblock.th{border-width:6px}.imageblock.thumb>.title,.imageblock.th>.title{padding:0 0.125em}.image.left,.image.right{margin-top:0.25em;margin-bottom:0.25em;display:inline-block;line-height:0}.image.left{margin-right:0.625em}.image.right{margin-left:0.625em}a.image{text-decoration:none;display:inline-block}a.image object{pointer-events:none}sup.footnote,sup.footnoteref{font-size:0.875em;position:static;vertical-align:super}sup.footnote a,sup.footnoteref a{text-decoration:none}sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline}#footnotes{padding-top:0.75em;padding-bottom:0.75em;margin-bottom:0.625em}#footnotes hr{width:20%;min-width:6.25em;margin:-0.25em 0 0.75em 0;border-width:1px 0 0 0}#footnotes .footnote{padding:0 0.375em 0 0.225em;line-height:1.3334;font-size:0.875em;margin-left:1.2em;text-indent:-1.05em;margin-bottom:0.2em}#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none}#footnotes .footnote:last-of-type{margin-bottom:0}#content #footnotes{margin-top:-0.625em;margin-bottom:0;padding:0.75em 0}.gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.gist .file-data>table td.line-data{width:99%}div.unbreakable{page-break-inside:avoid}.big{font-size:larger}.small{font-size:smaller}.underline{text-decoration:underline}.overline{text-decoration:overline}.line-through{text-decoration:line-through}.aqua{color:#00bfbf}.aqua-background{background-color:#00fafa}.black{color:black}.black-background{background-color:black}.blue{color:#0000bf}.blue-background{background-color:#0000fa}.fuchsia{color:#bf00bf}.fuchsia-background{background-color:#fa00fa}.gray{color:#606060}.gray-background{background-color:#7d7d7d}.green{color:#006000}.green-background{background-color:#007d00}.lime{color:#00bf00}.lime-background{background-color:#00fa00}.maroon{color:#600000}.maroon-background{background-color:#7d0000}.navy{color:#000060}.navy-background{background-color:#00007d}.olive{color:#606000}.olive-background{background-color:#7d7d00}.purple{color:#600060}.purple-background{background-color:#7d007d}.red{color:#bf0000}.red-background{background-color:#fa0000}.silver{color:#909090}.silver-background{background-color:#bcbcbc}.teal{color:#006060}.teal-background{background-color:#007d7d}.white{color:#bfbfbf}.white-background{background-color:#f5f9f9}.yellow{color:#bfbf00}.yellow-background{background-color:#fafa00}span.icon>.fa{cursor:default}.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;cursor:default}.admonitionblock td.icon .icon-note:before{content:"\f05a";color:#3f6a22}.admonitionblock td.icon .icon-tip:before{content:"\f0eb";color:#0077b9}.admonitionblock td.icon .icon-warning:before{content:"\f071";color:#d88400}.admonitionblock td.icon .icon-caution:before{content:"\f06d";color:#bf3400}.admonitionblock td.icon .icon-important:before{content:"\f06a";color:#bf0000}.conum[data-value]{display:inline-block;color:#000 !important;background-color:#ffe157;-webkit-border-radius:100px;border-radius:100px;text-align:center;font-size:0.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open Sans", "DejaVu Sans", sans-serif;font-style:normal;font-weight:bold}.conum[data-value] *{color:#fff !important}.conum[data-value]+b{display:none}.conum[data-value]:after{content:attr(data-value)}pre .conum[data-value]{position:relative;top:0;color:#000 !important;background-color:#ffe157;font-size:12px}b.conum *{color:inherit !important}.conum:not([data-value]):empty{display:none}.admonitionblock{background-color:#ecf1e8;padding:0.8em 0;margin:30px 0;width:auto;border-radius:4px;overflow-x:auto}.admonitionblock.important{border-left:0px solid #e20000;background-color:#f9ebeb}.admonitionblock.warning{border-left:0px solid #d88400;background-color:#fff9e4}.admonitionblock.tip{border-left:0px solid #0077b9;background-color:#e9f1f6}.admonitionblock.caution{border-left:0px solid #e20000;background-color:#f9ebeb}.admonitionblock .exampleblock>.content{border:0 none;background-color:#fff}#toc a:hover{text-decoration:underline}.admonitionblock>table{margin-bottom:0}.admonitionblock>table td.content{border-left:none}@media print{#tocbot a.toc-link.node-name--H4{display:none}}.is-collapsible{max-height:1000px;overflow:hidden;transition:all 200ms ease-in-out}.is-collapsed{max-height:0}#index-link{display:none}ul li>p>a>code{color:#086dc3}ul li>p>a:hover>code{color:#086dc3}#content .listingblock .switch{border-style:none;display:inline-block;position:relative;bottom:0;margin-bottom:4px}#content .listingblock .switch--item:not(:first-child){border:2px solid #000}#content .listingblock .switch--item{padding:6px 12px;background-color:#fff;color:#000;display:inline-block;cursor:pointer;border:2px solid #000;margin-right:2px;border-radius:0}#content .listingblock .switch--item:hover{color:#086dc3}#content .listingblock .switch--item.selected{background-color:#000;color:#fff;border-color:#000}#content .listingblock .switch--item.selected:hover{color:#fff}#content .listingblock pre.highlightjs{padding:0}div.back-action,#toc.toc2 div.back-action{padding:0.8rem 0 0 5px}div.back-action a,#toc.toc2 div.back-action a{position:relative;display:inline-block;padding:0.6rem 1.2rem;padding-left:35px}div.back-action a span,#toc.toc2 div.back-action a span{position:absolute;left:5px;top:5px;display:block;color:#333;height:26px;width:26px;border-radius:13px}div.back-action a i,#toc.toc2 div.back-action a i{position:absolute;top:10px;left:5px}div.back-action a:hover span,#toc.toc2 div.back-action a:hover span{color:#000}#tocbot.desktop-toc{padding:.5rem}#header-spring{position:absolute;text-rendering:optimizeLegibility;top:0;left:0;right:0;height:80px;margin:0 1rem;padding:0 1rem;border-bottom:1px solid #dce6e6}#header-spring h1{margin:0;padding:0;font-size:22px;text-align:left;line-height:76px;padding-left:0.6rem}#header-spring h1 svg{width:240px}#header-spring h1 svg .st0{fill:#6bb536}#header-spring h1 svg .st2{fill:#444}body.book #header-spring{position:relative;top:auto;left:auto;right:auto;margin:0}body.book #header>h1:only-child{border:0 none;padding-bottom:1.2rem;font-size:1.8rem}body.book #header,body.book #content,body.book #footnotes,body.book #footer{margin:0 auto}body.toc2 #header-spring{position:absolute;left:0;right:0;top:0}body.toc2 #header>h1:only-child{font-size:2.2rem}body.toc2 #header,body.toc2 #content,body.toc2 #footnotes,body.toc2 #footer{margin:0 auto}body.toc2 #content{padding-top:2rem}#header,#content,#footnotes,#footer{width:100%;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5em;*zoom:1;position:relative;padding-left:0.9375em;padding-right:0.9375em}#header:before,#header:after,#content:before,#content:after,#footnotes:before,#footnotes:after,#footer:before,#footer:after{content:" ";display:table}#header:after,#content:after,#footnotes:after,#footer:after{clear:both}#content{margin-top:1.25em}#content:before{content:none}#header{position:relative}#header>h1:first-child{margin-top:2.55rem;margin-bottom:0.5em;margin-bottom:0.7em;font-size:2rem}#header>h1:first-child+#toc{margin-top:8px;border-top:0 none}#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #ebf2f2;padding-bottom:8px}#header .details{line-height:1.45;color:#222;display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap;background-color:#ebf2f2;padding:2rem 2.5rem}#header .details span:first-child{margin-left:-0.125em}#header .details span.email a{color:rgba(0,0,0,0.85)}#header .details br{display:none}#header .details br+span:before{content:"\00a0\2013\00a0"}#header .details br+span.author:before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,0.85)}#header .details br+span#revremark:before{content:"\00a0|\00a0"}#header #revnumber{text-transform:capitalize}#header #revnumber:after{content:"\00a0"}#content>h1:first-child:not([class]){color:rgba(0,0,0,0.85);border-bottom:1px solid #ebf2f2;padding-bottom:8px;margin-top:0;padding-top:1.5rem;margin-bottom:1.25rem}h1{font-size:2.2rem}h1,h2,h3,h4,h5,h6{font-weight:bold;font-family:Montserrat, Arial, Helvetica, sans-serif}h1:focus,h2:focus,h3:focus,h4:focus,h5:focus,h6:focus{box-shadow:none;outline:none}h2,h3,h4,h5,h6{padding:.8rem 0 .4rem}h1{font-size:1.75em}h2{font-size:1.6rem}h3{font-size:1.5rem}h4{font-size:1.4rem}h5{font-size:1.3rem}h6{font-size:1.2rem}pre.highlight{padding:20px;border:1px solid #d9d9d9;overflow-x:scroll;color:#222}pre.highlight code{color:#222}pre.highlight a,#toc.toc2 a{color:#000}pre.highlight ul.sectlevel1,#toc.toc2 ul.sectlevel1{padding-left:0.2rem}pre.highlight ul.sectlevel1 li,#toc.toc2 ul.sectlevel1 li{line-height:1.4rem}::selection{background-color:#d1ff79}.literalblock pre::selection,.listingblock pre[class="highlight"]::selection,.highlight::selection,pre::selection,.highlight code::selection,.highlight code span::selection{background:rgba(0,0,0,0.2) !important}body.book #header{margin-bottom:2rem}body.toc2 #header{margin-bottom:0}.desktop-toc{display:none}.admonitionblock td.icon{display:none}.admonitionblock>table td.content{padding-left:1.25em}@media only screen and (min-width: 768px){#toctitle{font-size:1.375em}.sect1{padding-bottom:1.25em}.mobile-toc{display:none}.desktop-toc{display:block}.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:0.90625em}.admonitionblock td.icon{display:table-cell}.admonitionblock>table td.content{padding-left:0}#header{position:relative;min-height:98px;padding-right:210px}#header::after{position:absolute;right:0;top:0;display:block;content:'';height:98px;width:203px;z-index:-1;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAmIAAAEmCAIAAABOFWtWAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjEgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODRBOEI2NUE1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODRBOEI2NUI1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4NEE4QjY1ODUwQjUxMUVBOUI1MkE4RDBBMzY4NkRCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4NEE4QjY1OTUwQjUxMUVBOUI1MkE4RDBBMzY4NkRCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PooJeGcAAB/mSURBVHja7N15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");background-repeat:no-repeat;background-size:203px 98px}body.toc2{padding-right:0}body.toc2 #toc.toc2{position:absolute;margin-top:0 !important;width:15em;top:0;border-top-width:0 !important;border-bottom-width:0 !important;margin-left:-15.9375em;z-index:1000;padding:0 1em 1.25em 0em;overflow:auto}body.toc2 #toc.toc2 #toctitle{margin-top:0;margin-bottom:0.8rem;font-size:1.2em}body.toc2 #toc.toc2>ul{font-size:0.9em;margin-bottom:0}body.toc2 #toc.toc2 ul ul{margin-left:0;padding-left:1em}body.toc2 #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:0.5em;margin-bottom:0.5em}body.toc2 #header,body.toc2 #content,body.toc2 #footnotes,body.toc2 #footer{padding-left:15.9375em;max-width:none}body.book #header-spring h1{max-width:1400px;margin:0 auto}body.book #header,body.book #content,body.book #footnotes,body.book #footer{max-width:1400px}body.is-position-fixed #toc.toc2{position:fixed;height:100%}h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2}h1{font-size:1.75em}h2{font-size:1.6em}h3,#toctitle,.sidebarblock>.content>.title{font-size:1.5em}h4{font-size:1.4em}h5{font-size:1.2em}h6{font-size:1.2em}#tocbot a.toc-link.node-name--H1{font-style:italic}#tocbot ol{margin:0;padding:0}#tocbot ol li{list-style:none;padding:0 0;margin:0;display:block}#tocbot{z-index:999}#tocbot .toc-link{position:relative;display:block;z-index:999;padding:.4rem .6rem}#tocbot a.is-active-link{padding-right:3px;background:black;color:white}}@media only screen and (min-width: 768px){#tocbot>ul.toc-list{margin-bottom:0.5em;margin-left:0.125em}#tocbot ul.sectlevel0,#tocbot a.toc-link.node-name--H1+ul{padding-left:0}#tocbot a.toc-link{height:100%}.is-collapsible{max-height:3000px;overflow:hidden}.is-collapsed{max-height:0}}@media only screen and (min-width: 768px){body.toc2 #header,body.toc2 #content,body.toc2 #footer{background-repeat:repeat-y;background-position:14em 0;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAMAAAAoyzS7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQwIDc5LjE2MDQ1MSwgMjAxNy8wNS8wNi0wMTowODoyMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RDE0NUNENzNGMTVGMTFFODk5RjI5ODk3QURGRjcxMkEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RDE0NUNENzRGMTVGMTFFODk5RjI5ODk3QURGRjcxMkEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpEMTQ1Q0Q3MUYxNUYxMUU4OTlGMjk4OTdBREZGNzEyQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpEMTQ1Q0Q3MkYxNUYxMUU4OTlGMjk4OTdBREZGNzEyQSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjmGxxYAAAAGUExURd3d2AAAAJlCnKAAAAAMSURBVHjaYmAACDAAAAIAAU9tWeEAAAAASUVORK5CYII=);background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjEgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDMyRDZERkQ1MEE4MTFFQTlCNTJBOEQwQTM2ODZEQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDMyRDZERkU1MEE4MTFFQTlCNTJBOEQwQTM2ODZEQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0MzJENkRGQjUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0MzJENkRGQzUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjdyLKIAAAAPSURBVHjaYnj16RNAgAEABZgCz/xXiToAAAAASUVORK5CYII=");background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjEgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODRBOEI2NTI1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODRBOEI2NTM1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0MzJENkRGRjUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0MzJENkUwMDUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pul87iAAAAAPSURBVHjaYrj17BlAgAEABUQCpxgONc4AAAAASUVORK5CYII=")}}@media only screen and (min-width: 1280px){body.toc2{padding-right:0}body.toc2 #toc.toc2{width:25em;left:auto;margin-left:-26.9375em}body.toc2 #toc.toc2 #toctitle{font-size:1.375em}body.toc2 #toc.toc2>ul{font-size:0.95em}body.toc2 #toc.toc2 ul ul{padding-left:1.25em}body.toc2 body.toc2.toc-right{padding-left:0;padding-right:20em}body.toc2 #header,body.toc2 #content,body.toc2 #footnotes,body.toc2 #footer{padding-left:26.9375em;max-width:2000px}body.toc2 #header-spring h1{margin:0 auto;max-width:2000px}.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:0.8125em}body.toc2 #header,body.toc2 #content,body.toc2 #footer{background-repeat:repeat-y;background-position:24em 0;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAMAAAAoyzS7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQwIDc5LjE2MDQ1MSwgMjAxNy8wNS8wNi0wMTowODoyMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RDE0NUNENzNGMTVGMTFFODk5RjI5ODk3QURGRjcxMkEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RDE0NUNENzRGMTVGMTFFODk5RjI5ODk3QURGRjcxMkEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpEMTQ1Q0Q3MUYxNUYxMUU4OTlGMjk4OTdBREZGNzEyQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpEMTQ1Q0Q3MkYxNUYxMUU4OTlGMjk4OTdBREZGNzEyQSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjmGxxYAAAAGUExURd3d2AAAAJlCnKAAAAAMSURBVHjaYmAACDAAAAIAAU9tWeEAAAAASUVORK5CYII=);background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjEgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDMyRDZERkQ1MEE4MTFFQTlCNTJBOEQwQTM2ODZEQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDMyRDZERkU1MEE4MTFFQTlCNTJBOEQwQTM2ODZEQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0MzJENkRGQjUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0MzJENkRGQzUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjdyLKIAAAAPSURBVHjaYnj16RNAgAEABZgCz/xXiToAAAAASUVORK5CYII=");background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjEgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODRBOEI2NTI1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODRBOEI2NTM1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0MzJENkRGRjUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0MzJENkUwMDUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pul87iAAAAAPSURBVHjaYrj17BlAgAEABUQCpxgONc4AAAAASUVORK5CYII=")}#header{min-height:150px;padding-right:310px}#header::after{height:147px;width:305px;background-size:305px 147px}} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/favicon.ico b/spring-cloud-sleuth/3.0.0.M1/reference/html/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..1a4956e64705230122da8c19d762a7f8e6971533 GIT binary patch literal 111804 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 Pn5$L + + + + + + +Features + + + + + + + + + + +
+
+

1. Features

+
+
+

Sleuth sets up instrumentation not only to track timing, but also to catch +errors so that they can be analyzed or correlated with logs. This works the +same way regardless of if the error came from a common instrumented library, +such as RestTemplate, or your own code annotated with @NewSpan or similar.

+
+
+

Below, we’ll use the word Zipkin to describe the tracing system, and include +Zipkin screenshots. However, most services accepting Zipkin format +have similar base features. Sleuth can also be configured to send data in other +formats, something detailed later.

+
+
+

1.1. Contextualizing errors

+
+

Without distributed tracing, it can be difficult to understand the impact of a +an exception. For example, it can be hard to know if a specific request caused +the caller to fail or not.

+
+
+

Zipkin reduces time in triage by contextualizing errors and delays.

+
+
+

Requests colored red in the search screen failed:

+
+
+
+Error Traces +
+
+
+

If you then click on one of the traces, you can understand if the failure +happened before the request hit another service or not:

+
+
+
+Error Traces Info propagation +
+
+
+

For example, the above error happened in the "backend" service, and caused the +"frontend" service to fail.

+
+
+
+

1.2. Log correlation

+
+

Sleuth configures the logging context with variables including the service name +(%{spring.zipkin.service.name}) and the trace ID (%{traceId}). These help +you connect logs with distributed traces and allow you choice in what tools you +use to troubleshoot your services.

+
+
+

Once you find any log with an error, you can look for the trace ID in the +message. Paste that into Zipkin to visualize the entire trace, regardless of +how many services the first request ended up hitting.

+
+
+
+
backend.log:  2020-04-09 17:45:40.516 ERROR [backend,5e8eeec48b08e26882aba313eb08f0a4,dcc1df555b5777b3,true] 97203 --- [nio-9000-exec-1] o.s.c.s.i.web.ExceptionLoggingFilter     : Uncaught exception thrown
+frontend.log:2020-04-09 17:45:40.574 ERROR [frontend,5e8eeec48b08e26882aba313eb08f0a4,82aba313eb08f0a4,true] 97192 --- [nio-8081-exec-2] o.s.c.s.i.web.ExceptionLoggingFilter     : Uncaught exception thrown
+
+
+
+

Above, you’ll notice the trace ID is 5e8eeec48b08e26882aba313eb08f0a4, for +example. This log configuration was automatically setup by Sleuth.

+
+
+

If you use a log aggregating tool (such as Kibana, Splunk, and others), you can order the events that took place. +An example from Kibana would resemble the following image:

+
+
+
+Log correlation with Kibana +
+
+
+

If you want to use Logstash, the following listing shows the Grok pattern for Logstash:

+
+
+
+
filter {
+  # pattern matching logback pattern
+  grok {
+    match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:severity}\s+\[%{DATA:service},%{DATA:trace},%{DATA:span}\]\s+%{DATA:pid}\s+---\s+\[%{DATA:thread}\]\s+%{DATA:class}\s+:\s+%{GREEDYDATA:rest}" }
+  }
+  date {
+    match => ["timestamp", "ISO8601"]
+  }
+  mutate {
+    remove_field => ["timestamp"]
+  }
+}
+
+
+
+ + + + + +
+ + +If you want to use Grok together with the logs from Cloud Foundry, you have to use the following pattern: +
+
+
+
+
filter {
+  # pattern matching logback pattern
+  grok {
+    match => { "message" => "(?m)OUT\s+%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:severity}\s+\[%{DATA:service},%{DATA:trace},%{DATA:span}\]\s+%{DATA:pid}\s+---\s+\[%{DATA:thread}\]\s+%{DATA:class}\s+:\s+%{GREEDYDATA:rest}" }
+  }
+  date {
+    match => ["timestamp", "ISO8601"]
+  }
+  mutate {
+    remove_field => ["timestamp"]
+  }
+}
+
+
+
+

1.2.1. JSON Logback with Logstash

+
+

Often, you do not want to store your logs in a text file but in a JSON file that Logstash can immediately pick. +To do so, you have to do the following (for readability, we pass the dependencies in the groupId:artifactId:version notation).

+
+
+

Dependencies Setup

+
+
+
    +
  1. +

    Ensure that Logback is on the classpath (ch.qos.logback:logback-core).

    +
  2. +
  3. +

    Add Logstash Logback encode. For example, to use version 4.6, add net.logstash.logback:logstash-logback-encoder:4.6.

    +
  4. +
+
+
+

Logback Setup

+
+
+

Consider the following example of a Logback configuration file (logback-spring.xml).

+
+
+
+
<?xml version="1.0" encoding="UTF-8"?>
+<configuration>
+    <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
+    <springProperty scope="context" name="springAppName" source="spring.application.name"/>
+    <!-- Example for logging into the build folder of your project -->
+    <property name="LOG_FILE" value="${BUILD_FOLDER:-build}/${springAppName}"/>
+
+    <!-- You can override this to have a custom pattern -->
+    <property name="CONSOLE_LOG_PATTERN"
+              value="%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}"/>
+
+    <!-- Appender to log to console -->
+    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <!-- Minimum logging level to be presented in the console logs-->
+            <level>DEBUG</level>
+        </filter>
+        <encoder>
+            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
+            <charset>utf8</charset>
+        </encoder>
+    </appender>
+
+    <!-- Appender to log to file -->
+    <appender name="flatfile" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${LOG_FILE}</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.gz</fileNamePattern>
+            <maxHistory>7</maxHistory>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
+            <charset>utf8</charset>
+        </encoder>
+    </appender>
+    <!-- Appender to log to file in a JSON format -->
+    <appender name="logstash" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${LOG_FILE}.json</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${LOG_FILE}.json.%d{yyyy-MM-dd}.gz</fileNamePattern>
+            <maxHistory>7</maxHistory>
+        </rollingPolicy>
+        <encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
+            <providers>
+                <timestamp>
+                    <timeZone>UTC</timeZone>
+                </timestamp>
+                <pattern>
+                    <pattern>
+                        {
+                        "timestamp": "@timestamp",
+                        "severity": "%level",
+                        "service": "${springAppName:-}",
+                        "trace": "%X{traceId:-}",
+                        "span": "%X{spanId:-}",
+                        "pid": "${PID:-}",
+                        "thread": "%thread",
+                        "class": "%logger{40}",
+                        "rest": "%message"
+                        }
+                    </pattern>
+                </pattern>
+            </providers>
+        </encoder>
+    </appender>
+    <root level="INFO">
+        <appender-ref ref="console"/>
+        <!-- uncomment this to have also JSON logs -->
+        <!--<appender-ref ref="logstash"/>-->
+        <!--<appender-ref ref="flatfile"/>-->
+    </root>
+</configuration>
+
+
+
+

That Logback configuration file:

+
+
+
    +
  • +

    Logs information from the application in a JSON format to a build/${spring.application.name}.json file.

    +
  • +
  • +

    Has commented out two additional appenders: console and standard log file.

    +
  • +
  • +

    Has the same logging pattern as the one presented in the previous section.

    +
  • +
+
+
+ + + + + +
+ + +If you use a custom logback-spring.xml, you must pass the spring.application.name in the bootstrap rather than the application property file. +Otherwise, your custom logback file does not properly read the property. +
+
+
+
+
+

1.3. Service Dependency Graph

+
+

When you consider distributed tracing tracks requests, it makes sense that +trace data can paint a picture of your architecture.

+
+
+

Zipkin includes a tool to build service dependency diagrams from traces, +including the count of calls and how many errors exist.

+
+
+

The example application will make a simple diagram like this, but your real +environment diagram may be more complex. +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-sleuth/master/docs/src/main/asciidoc/images/zipkin-depedendencies.png[Zipkin Dependencies]

+
+
+

Note: Production environments will generate a lot of data. You will likely +need to run a separate service to aggregate the dependency graph. You can learn +more here.

+
+
+
+

1.4. Request scoped properties (Baggage)

+
+

Distributed tracing works by propagating fields inside and across services that +connect the trace together: traceId and spanId notably. The context that holds +these fields can optionally push other fields that need to be consistent +regardless of many services are touched. The simple name for these extra fields +is "Baggage".

+
+
+

Sleuth allows you to define which baggage are permitted to exist in the trace +context, including what header names are used.

+
+
+

The following example shows setting baggage values:

+
+
+
+
Span initialSpan = this.tracer.nextSpan().name("span").start();
+BUSINESS_PROCESS.updateValue(initialSpan.context(), "ALM");
+COUNTRY_CODE.updateValue(initialSpan.context(), "FO");
+
+
+
+ + + + + +
+ + +There is currently no limitation of the count or size of baggage +items. Keep in mind that too many can decrease system throughput or increase +RPC latency. In extreme cases, too much baggage can crash the application, due +to exceeding transport-level message or header capacity. +
+
+
+

1.4.1. Baggage versus Tags

+
+

Like trace IDs, Baggage is attached to messages or requests, usually as +headers. Tags are key value pairs sent in a Span to Zipkin. Baggage values are +not added spans by default, which means you can’t search based on Baggage +unless you opt-in.

+
+
+

To make baggage also tags, use the property spring.sleuth.baggage.tag-fields +like so:

+
+
+
+
spring:
+  sleuth:
+    baggage:
+      remoteFields:
+        - country-code
+        - x-vcap-request-id
+      tagFields:
+        - country-code
+
+
+
+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/images/.gitkeep b/spring-cloud-sleuth/3.0.0.M1/reference/html/images/.gitkeep new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/images/.gitkeep @@ -0,0 +1 @@ + diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/images/kibana.png b/spring-cloud-sleuth/3.0.0.M1/reference/html/images/kibana.png new file mode 100644 index 0000000000000000000000000000000000000000..571e7afe8e42b1e68a4ac48c8b0573043b72c0f9 GIT binary patch literal 186956 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 literal 0 HcmV?d00001 diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-dependencies.png b/spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-dependencies.png new file mode 100644 index 0000000000000000000000000000000000000000..ae09dafe005c1ea7f9b60665ebf68e93b72ba93f GIT binary patch literal 46703 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 <{)MSGH-uh$P+h2iw zQwov=oqUtHAsrYjZjIPnH0!|Z?ChdjZO7uenhg|@8xvd?Qt&5Flaa-KuI18t*1WPZ zEu8}V*rpoe*g)5HUGEqTbh3aj(+k^hl?I~m)Lq4e)YE9&h8L-4X7rbDy^X0~lIZ?h zoe)2$O2M&SAGaj$mPcm?h#Ip2g<7$2oP&z1!ACp!xCS@(Q25mM+Bfqmn_NZQAQ`?O zOvW$1fMLqg2fbLPJm#E zi8~b5fusP*+;;q_l32zPbuu;acGOp9vEgD;#JX;oBX1FfF zpSNo};V*e#lsWSzYz^JG+cL6 z{nA?25y}oGYq0WChBY*#*IT&lp2&5mJKz- zLhX7s^u4XqUVATLo{pP#b?;;F#o_qFm)yr<)ejQ)O*>4JG0Khwy)?Vjk}5US+ygYjXotkpxUMj4DRQe)kK0zG4xnI=ppSaMh4!8~ODF6Q|O3F3Un+_JQJQyQ1+JfoXm^eEJh zZE~-UN!Lw(ACS(>lTQ(@eJ5n@o~B;J!=i|KK9sF$i0sEKc}>1>ALyF$Bxq>u+5lA} zAdWdpk|uCJD+}-qy$G3`y-we^Ef;4uxBedWVV!KLXtr$ib@3tP>HI)&xlrX@AMPmG zazw}0;|mIxO_oP9cG3P*|ItgprD_{`LZwp&V=*3Mo6BC4y?}haA?-eAm4PPEc%Ti1 zVoFwtol7-r%3V6vnW2%yD$55==IWBs9?(uIrVP&1vfZ7ZeiDEwa~=ZvPT6sW<6u90 zlOgM&v6lM*Q^(+vCEVP=d0=cb3@__usb|`{xot?@?++Yrny|sg!LM^<%)IZ-> z94!$Rwgk&;aYK}qISsFdC~YpqdLl{kIe(m{9QO-z=Yorfdh{5u$6PJ4nCT^xC9n08 gvW$LA8Ja-VGaYVPD4NE%2mHHvP5Elp6{AQ02c5f+{r~^~ literal 0 HcmV?d00001 diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-error-trace-screenshot.png b/spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-error-trace-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..be65504ce915415c94ec3f36625c044deaedd59e GIT binary patch literal 69605 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 literal 0 HcmV?d00001 diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-error-trace.png b/spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-error-trace.png new file mode 100644 index 0000000000000000000000000000000000000000..4ccf454711fbc03b458879125906b336c11aae05 GIT binary patch literal 67467 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 J7Ctlf`#<@-eJ%h1 literal 0 HcmV?d00001 diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-trace-screenshot.png b/spring-cloud-sleuth/3.0.0.M1/reference/html/images/zipkin-trace-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..4e133364e896c7cb14f15679f359c319a65132cf GIT binary patch literal 53157 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 k&U*gL=l + + + + + + + +Spring Cloud Sleuth + + + + + + + + + +

+
+
+
+
+

3.0.0.M1

+
+
+
+
+

1. Overview

+
+
+

Spring Cloud Sleuth provides Spring Boot auto-configuration for distributed +tracing. Underneath, Spring Cloud Sleuth is a layer over a Tracer library named +Brave.

+
+
+

Sleuth configures everything you need to get started. This includes where trace +data (spans) are reported to, how many traces to keep (sampling), if remote +fields (baggage) are sent, and which libraries are traced.

+
+
+

We maintain an example app where two Spring Boot services collaborate on an +HTTP request. Sleuth configures these apps, so that timing of these requests are +recorded into Zipkin, a distributed tracing system. Tracing +UIs visualize latency, such as time in one service vs waiting for other +services.

+
+
+

Here’s an example of what it looks like:

+
+
+
+Zipkin Trace +
+
+
+

The source repository of this +example includes demonstrations of many things, including WebFlux and messaging. +Most features require only a property or dependency change to work. These +snippets showcase the value of Spring Cloud Sleuth: Through auto-configuration, +Sleuth make getting started with distributed tracing easy!

+
+
+

To keep things simple, the same example is used throughout documentation using +basic HTTP communication.

+
+
+
+
+

2. Features

+
+
+

Sleuth sets up instrumentation not only to track timing, but also to catch +errors so that they can be analyzed or correlated with logs. This works the +same way regardless of if the error came from a common instrumented library, +such as RestTemplate, or your own code annotated with @NewSpan or similar.

+
+
+

Below, we’ll use the word Zipkin to describe the tracing system, and include +Zipkin screenshots. However, most services accepting Zipkin format +have similar base features. Sleuth can also be configured to send data in other +formats, something detailed later.

+
+
+

2.1. Contextualizing errors

+
+

Without distributed tracing, it can be difficult to understand the impact of a +an exception. For example, it can be hard to know if a specific request caused +the caller to fail or not.

+
+
+

Zipkin reduces time in triage by contextualizing errors and delays.

+
+
+

Requests colored red in the search screen failed:

+
+
+
+Error Traces +
+
+
+

If you then click on one of the traces, you can understand if the failure +happened before the request hit another service or not:

+
+
+
+Error Traces Info propagation +
+
+
+

For example, the above error happened in the "backend" service, and caused the +"frontend" service to fail.

+
+
+
+

2.2. Log correlation

+
+

Sleuth configures the logging context with variables including the service name +(%{spring.zipkin.service.name}) and the trace ID (%{traceId}). These help +you connect logs with distributed traces and allow you choice in what tools you +use to troubleshoot your services.

+
+
+

Once you find any log with an error, you can look for the trace ID in the +message. Paste that into Zipkin to visualize the entire trace, regardless of +how many services the first request ended up hitting.

+
+
+
+
backend.log:  2020-04-09 17:45:40.516 ERROR [backend,5e8eeec48b08e26882aba313eb08f0a4,dcc1df555b5777b3,true] 97203 --- [nio-9000-exec-1] o.s.c.s.i.web.ExceptionLoggingFilter     : Uncaught exception thrown
+frontend.log:2020-04-09 17:45:40.574 ERROR [frontend,5e8eeec48b08e26882aba313eb08f0a4,82aba313eb08f0a4,true] 97192 --- [nio-8081-exec-2] o.s.c.s.i.web.ExceptionLoggingFilter     : Uncaught exception thrown
+
+
+
+

Above, you’ll notice the trace ID is 5e8eeec48b08e26882aba313eb08f0a4, for +example. This log configuration was automatically setup by Sleuth.

+
+
+

If you use a log aggregating tool (such as Kibana, Splunk, and others), you can order the events that took place. +An example from Kibana would resemble the following image:

+
+
+
+Log correlation with Kibana +
+
+
+

If you want to use Logstash, the following listing shows the Grok pattern for Logstash:

+
+
+
+
filter {
+  # pattern matching logback pattern
+  grok {
+    match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:severity}\s+\[%{DATA:service},%{DATA:trace},%{DATA:span}\]\s+%{DATA:pid}\s+---\s+\[%{DATA:thread}\]\s+%{DATA:class}\s+:\s+%{GREEDYDATA:rest}" }
+  }
+  date {
+    match => ["timestamp", "ISO8601"]
+  }
+  mutate {
+    remove_field => ["timestamp"]
+  }
+}
+
+
+
+ + + + + +
+ + +If you want to use Grok together with the logs from Cloud Foundry, you have to use the following pattern: +
+
+
+
+
filter {
+  # pattern matching logback pattern
+  grok {
+    match => { "message" => "(?m)OUT\s+%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:severity}\s+\[%{DATA:service},%{DATA:trace},%{DATA:span}\]\s+%{DATA:pid}\s+---\s+\[%{DATA:thread}\]\s+%{DATA:class}\s+:\s+%{GREEDYDATA:rest}" }
+  }
+  date {
+    match => ["timestamp", "ISO8601"]
+  }
+  mutate {
+    remove_field => ["timestamp"]
+  }
+}
+
+
+
+

2.2.1. JSON Logback with Logstash

+
+

Often, you do not want to store your logs in a text file but in a JSON file that Logstash can immediately pick. +To do so, you have to do the following (for readability, we pass the dependencies in the groupId:artifactId:version notation).

+
+
+

Dependencies Setup

+
+
+
    +
  1. +

    Ensure that Logback is on the classpath (ch.qos.logback:logback-core).

    +
  2. +
  3. +

    Add Logstash Logback encode. For example, to use version 4.6, add net.logstash.logback:logstash-logback-encoder:4.6.

    +
  4. +
+
+
+

Logback Setup

+
+
+

Consider the following example of a Logback configuration file (logback-spring.xml).

+
+
+
+
<?xml version="1.0" encoding="UTF-8"?>
+<configuration>
+    <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
+    <springProperty scope="context" name="springAppName" source="spring.application.name"/>
+    <!-- Example for logging into the build folder of your project -->
+    <property name="LOG_FILE" value="${BUILD_FOLDER:-build}/${springAppName}"/>
+
+    <!-- You can override this to have a custom pattern -->
+    <property name="CONSOLE_LOG_PATTERN"
+              value="%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}"/>
+
+    <!-- Appender to log to console -->
+    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <!-- Minimum logging level to be presented in the console logs-->
+            <level>DEBUG</level>
+        </filter>
+        <encoder>
+            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
+            <charset>utf8</charset>
+        </encoder>
+    </appender>
+
+    <!-- Appender to log to file -->
+    <appender name="flatfile" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${LOG_FILE}</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.gz</fileNamePattern>
+            <maxHistory>7</maxHistory>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
+            <charset>utf8</charset>
+        </encoder>
+    </appender>
+    <!-- Appender to log to file in a JSON format -->
+    <appender name="logstash" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${LOG_FILE}.json</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${LOG_FILE}.json.%d{yyyy-MM-dd}.gz</fileNamePattern>
+            <maxHistory>7</maxHistory>
+        </rollingPolicy>
+        <encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
+            <providers>
+                <timestamp>
+                    <timeZone>UTC</timeZone>
+                </timestamp>
+                <pattern>
+                    <pattern>
+                        {
+                        "timestamp": "@timestamp",
+                        "severity": "%level",
+                        "service": "${springAppName:-}",
+                        "trace": "%X{traceId:-}",
+                        "span": "%X{spanId:-}",
+                        "pid": "${PID:-}",
+                        "thread": "%thread",
+                        "class": "%logger{40}",
+                        "rest": "%message"
+                        }
+                    </pattern>
+                </pattern>
+            </providers>
+        </encoder>
+    </appender>
+    <root level="INFO">
+        <appender-ref ref="console"/>
+        <!-- uncomment this to have also JSON logs -->
+        <!--<appender-ref ref="logstash"/>-->
+        <!--<appender-ref ref="flatfile"/>-->
+    </root>
+</configuration>
+
+
+
+

That Logback configuration file:

+
+
+
    +
  • +

    Logs information from the application in a JSON format to a build/${spring.application.name}.json file.

    +
  • +
  • +

    Has commented out two additional appenders: console and standard log file.

    +
  • +
  • +

    Has the same logging pattern as the one presented in the previous section.

    +
  • +
+
+
+ + + + + +
+ + +If you use a custom logback-spring.xml, you must pass the spring.application.name in the bootstrap rather than the application property file. +Otherwise, your custom logback file does not properly read the property. +
+
+
+
+
+

2.3. Service Dependency Graph

+
+

When you consider distributed tracing tracks requests, it makes sense that +trace data can paint a picture of your architecture.

+
+
+

Zipkin includes a tool to build service dependency diagrams from traces, +including the count of calls and how many errors exist.

+
+
+

The example application will make a simple diagram like this, but your real +environment diagram may be more complex. +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-sleuth/master/docs/src/main/asciidoc/images/zipkin-depedendencies.png[Zipkin Dependencies]

+
+
+

Note: Production environments will generate a lot of data. You will likely +need to run a separate service to aggregate the dependency graph. You can learn +more here.

+
+
+
+

2.4. Request scoped properties (Baggage)

+
+

Distributed tracing works by propagating fields inside and across services that +connect the trace together: traceId and spanId notably. The context that holds +these fields can optionally push other fields that need to be consistent +regardless of many services are touched. The simple name for these extra fields +is "Baggage".

+
+
+

Sleuth allows you to define which baggage are permitted to exist in the trace +context, including what header names are used.

+
+
+

The following example shows setting baggage values:

+
+
+
+
Span initialSpan = this.tracer.nextSpan().name("span").start();
+BUSINESS_PROCESS.updateValue(initialSpan.context(), "ALM");
+COUNTRY_CODE.updateValue(initialSpan.context(), "FO");
+
+
+
+ + + + + +
+ + +There is currently no limitation of the count or size of baggage +items. Keep in mind that too many can decrease system throughput or increase +RPC latency. In extreme cases, too much baggage can crash the application, due +to exceeding transport-level message or header capacity. +
+
+
+

2.4.1. Baggage versus Tags

+
+

Like trace IDs, Baggage is attached to messages or requests, usually as +headers. Tags are key value pairs sent in a Span to Zipkin. Baggage values are +not added spans by default, which means you can’t search based on Baggage +unless you opt-in.

+
+
+

To make baggage also tags, use the property spring.sleuth.baggage.tag-fields +like so:

+
+
+
+
spring:
+  sleuth:
+    baggage:
+      remoteFields:
+        - country-code
+        - x-vcap-request-id
+      tagFields:
+        - country-code
+
+
+
+
+
+
+
+

3. Adding Sleuth to your Project

+
+
+

This section addresses how to add Sleuth to your project with either Maven or Gradle.

+
+
+ + + + + +
+ + +To ensure that your application name is properly displayed in Zipkin, set the spring.application.name property in bootstrap.yml. +
+
+
+

3.1. Sleuth with Zipkin via HTTP

+
+

If you want both Sleuth and Zipkin, add the spring-cloud-starter-zipkin dependency.

+
+
+

The following example shows how to do so for Maven:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-zipkin</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin.
+
+
+

The following example shows how to do so for Gradle:

+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies { (2)
+    compile "org.springframework.cloud:spring-cloud-starter-zipkin"
+}
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin.
+
+
+
+

3.2. Sleuth with Zipkin over RabbitMQ or Kafka

+
+

If you want to use RabbitMQ or Kafka instead of HTTP, add the spring-rabbit or spring-kafka dependency. +The default destination name is zipkin.

+
+
+

If using Kafka, you must set the property spring.zipkin.sender.type property accordingly:

+
+
+
+
spring.zipkin.sender.type: kafka
+
+
+
+ + + + + +
+ + +spring-cloud-sleuth-stream is deprecated and incompatible with these destinations. +
+
+
+

If you want Sleuth over RabbitMQ, add the spring-cloud-starter-zipkin and spring-rabbit +dependencies.

+
+
+

The following example shows how to do so for Gradle:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-zipkin</artifactId>
+</dependency>
+<dependency> (3)
+    <groupId>org.springframework.amqp</groupId>
+    <artifactId>spring-rabbit</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin. That way, all nested dependencies get downloaded.
3To automatically configure RabbitMQ, add the spring-rabbit dependency.
+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies {
+    compile "org.springframework.cloud:spring-cloud-starter-zipkin" (2)
+    compile "org.springframework.amqp:spring-rabbit" (3)
+}
+
+
+
+ + + + + + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin. That way, all nested dependencies get downloaded.
3To automatically configure RabbitMQ, add the spring-rabbit dependency.
+
+
+
+

3.3. Overriding the auto-configuration of Zipkin

+
+

Spring Cloud Sleuth supports sending traces to multiple tracing systems as of version 2.1.0. +In order to get this to work, every tracing system needs to have a Reporter<Span> and Sender. +If you want to override the provided beans you need to give them a specific name. +To do this you can use respectively ZipkinAutoConfiguration.REPORTER_BEAN_NAME and ZipkinAutoConfiguration.SENDER_BEAN_NAME.

+
+
+
+
@Configuration
+protected static class MyConfig {
+
+    @Bean(ZipkinAutoConfiguration.REPORTER_BEAN_NAME)
+    Reporter<zipkin2.Span> myReporter() {
+        return AsyncReporter.create(mySender());
+    }
+
+    @Bean(ZipkinAutoConfiguration.SENDER_BEAN_NAME)
+    MySender mySender() {
+        return new MySender();
+    }
+
+    static class MySender extends Sender {
+
+        private boolean spanSent = false;
+
+        boolean isSpanSent() {
+            return this.spanSent;
+        }
+
+        @Override
+        public Encoding encoding() {
+            return Encoding.JSON;
+        }
+
+        @Override
+        public int messageMaxBytes() {
+            return Integer.MAX_VALUE;
+        }
+
+        @Override
+        public int messageSizeInBytes(List<byte[]> encodedSpans) {
+            return encoding().listSizeInBytes(encodedSpans);
+        }
+
+        @Override
+        public Call<Void> sendSpans(List<byte[]> encodedSpans) {
+            this.spanSent = true;
+            return Call.create(null);
+        }
+
+    }
+
+}
+
+
+
+
+

3.4. Only Sleuth (log correlation)

+
+

If you want to use only Spring Cloud Sleuth without the Zipkin integration, add the spring-cloud-starter-sleuth module to your project.

+
+
+

The following example shows how to add Sleuth with Maven:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-sleuth</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-sleuth.
+
+
+

The following example shows how to add Sleuth with Gradle:

+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies { (2)
+    compile "org.springframework.cloud:spring-cloud-starter-sleuth"
+}
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-sleuth.
+
+
+
+
+
+

4. How Sleuth works

+
+
+

Spring Cloud Sleuth is a layer over Brave.

+
+
+

Brave is a distributed tracing instrumentation library. Brave typically +intercepts production requests to gather timing data, correlate and propagate +trace contexts.

+
+
+

Trace data, also called spans, are typically reported to Zipkin. +Zipkin is an Open Source tracing system, which includes a UI and various +collectors, such as HTTP and messaging.

+
+
+

Many Open Source and commercial products accept Zipkin format. +Some options are documented here, +but many are not. If you cannot use Zipkin and your product isn’t listed, clarify +with your support representative and have them update that page. In many cases, +products already support Zipkin format, they just don’t document it.

+
+
+

Traces connect from service to service using header propagation. The default +format is B3. Similar to data +formats, you can configure alternate header formats also, provided trace and +span IDs are compatible with B3. Most notably, this means the trace ID and span +IDs are lower-case hex, not UUIDs. Besides trace identifiers, other properties +(Baggage) can also be passed along with the request. Remote Baggage must be +predefined, but is flexible otherwise.

+
+
+

Sleuth configures everything you need to get started with tracing. Sleuth +configures where trace data (spans) are reported to, how many traces to keep +(sampling), if remote fields (baggage) are sent, and which libraries are traced. +Sleuth also adds annotation based tracing features and some instrumentation not +available otherwise, such as Reactor. If cannot find the configuration you are +looking for in the documentation, ask Gitter +before assuming something cannot be done.

+
+
+

4.1. Brave Basics

+
+

Most instrumentation work is done for you by default. Sleuth provides beans to +allow you to change what’s traced, and it even provides annotations to avoid +using tracing libraries! All of this is explained later in this document.

+
+
+

That said, you might want to know more about how things work underneath. Here +are some pointers.

+
+
+

Here are the most core types you might use: +* SpanCustomizer - to change the span currently in progress +* Tracer - to get a start new spans ad-hoc

+
+
+

Here are the most relevant links from the OpenZipkin Brave project: +* [Brave’s core library](github.com/openzipkin/brave/tree/master/brave) +* [Baggage (propagated fields)](github.com/openzipkin/brave/tree/master/brave#baggage) +* [HTTP tracing](github.com/openzipkin/brave/tree/master/instrumentation/http)

+
+
+
+
+
+

5. Sampling

+
+
+

By default Spring Cloud Sleuth doesn’t sample spans. +That means that traces appear in logs but not in any remote store. +For testing the default is often enough, and it probably is all you need if you use only the logs (for example, with an ELK aggregator). +If you export span data to Zipkin, there is also an Sampler.ALWAYS_SAMPLE setting that exports everything, RateLimitingSampler setting that samples X transactions per second (defaults to 1000) or ProbabilityBasedSampler setting that samples a fixed fraction of spans.

+
+
+ + + + + +
+ + +The RateLimitingSampler is the default if you use spring-cloud-sleuth-zipkin. +You can configure the rate limit by setting spring.sleuth.sampler.rate. +
+
+
+

A sampler can be installed by creating a bean definition, as shown in the following example:

+
+
+
+
@Bean
+public Sampler defaultSampler() {
+    return Sampler.ALWAYS_SAMPLE;
+}
+
+
+
+ + + + + +
+ + +You can set the HTTP header b3 to 1, or, when doing messaging, you can set the spanFlags header to 1. +Doing so forces the current request to be sampled regardless of configuration. +
+
+
+

In order to use the rate-limited sampler set the spring.sleuth.sampler.rate property to choose an amount of traces to accept on a per-second interval. The minimum number is 0 and the max is 2,147,483,647 (max int).

+
+
+
+
+

6. Baggage

+
+
+

Baggage are fields that are propagated with the trace, optionally out of process. You can use +properties to define fields that have no special configuration such as name mapping:

+
+
+
    +
  • +

    spring.sleuth.remote-fields is a list of header names to accept and propagate to remote services.

    +
  • +
  • +

    spring.sleuth.local-fields is a list of names to propagate locally

    +
  • +
+
+
+

No prefixing applies with these keys. What you set is literally what is used.

+
+
+

A name set in either of these properties will result in a BaggageField of the same name.

+
+
+

In order to automatically set the baggage values to Slf4j’s MDC, you have to set +the spring.sleuth.baggage.correlation-fields property with a list of whitelisted +local or remote keys. E.g. spring.sleuth.baggage.correlation-fields=country-code will set the +value of the country-code baggage into MDC.

+
+
+ + + + + +
+ + +Remember that adding entries to MDC can drastically decrease the performance of your application! +
+
+
+

If you want to add the baggage entries as tags, to make it possible to search for spans via the baggage entries, you can set the value of +spring.sleuth.baggage.tag-fields with a list of whitelisted baggage keys. To disable the feature you have to pass the spring.sleuth.propagation.tag.enabled=false property.

+
+
+

6.1. Java configuration

+
+

If you need to do anything more advanced than above, do not define properties and instead use a +@Bean config for the baggage fields you use. + * BaggagePropagationCustomizer sets up baggage fields + * Add a SingleBaggageField to control header names for a BaggageField. + * CorrelationScopeCustomizer sets up MDC fields + * Add a SingleCorrelationField to change the MDC name of a BaggageField or if updates flush.

+
+
+
+
+
+

7. Instrumentation

+
+
+

Spring Cloud Sleuth automatically instruments all your Spring applications, so you should not have to do anything to activate it. +The instrumentation is added by using a variety of technologies according to the stack that is available. For example, for a servlet web application, we use a Filter, and, for Spring Integration, we use ChannelInterceptors.

+
+
+

You can customize the keys used in span tags. +To limit the volume of span data, an HTTP request is, by default, tagged only with a handful of metadata, such as the status code, the host, and the URL. +You can add request headers by configuring spring.sleuth.keys.http.headers (a list of header names).

+
+
+ + + + + +
+ + +Tags are collected and exported only if there is a Sampler that allows it. By default, there is no such Sampler, to ensure that there is no danger of accidentally collecting too much data without configuring something). +
+
+
+
+
+

8. Span lifecycle

+
+
+

You can do the following operations on the Span by means of brave.Tracer:

+
+
+
    +
  • +

    start: When you start a span, its name is assigned and the start timestamp is recorded.

    +
  • +
  • +

    close: The span gets finished (the end time of the span is recorded) and, if the span is sampled, it is eligible for collection (for example, to Zipkin).

    +
  • +
  • +

    continue: A new instance of span is created. +It is a copy of the one that it continues.

    +
  • +
  • +

    detach: The span does not get stopped or closed. +It only gets removed from the current thread.

    +
  • +
  • +

    create with explicit parent: You can create a new span and set an explicit parent for it.

    +
  • +
+
+
+ + + + + +
+ + +Spring Cloud Sleuth creates an instance of Tracer for you. In order to use it, you can autowire it. +
+
+
+

8.1. Creating and finishing spans

+
+

You can manually create spans by using the Tracer, as shown in the following example:

+
+
+
+
// Start a span. If there was a span present in this thread it will become
+// the `newSpan`'s parent.
+Span newSpan = this.tracer.nextSpan().name("calculateTax");
+try (Tracer.SpanInScope ws = this.tracer.withSpanInScope(newSpan.start())) {
+    // ...
+    // You can tag a span
+    newSpan.tag("taxValue", taxValue);
+    // ...
+    // You can log an event on a span
+    newSpan.annotate("taxCalculated");
+}
+finally {
+    // Once done remember to finish the span. This will allow collecting
+    // the span to send it to Zipkin
+    newSpan.finish();
+}
+
+
+
+

In the preceding example, we could see how to create a new instance of the span. +If there is already a span in this thread, it becomes the parent of the new span.

+
+
+ + + + + +
+ + +Always clean after you create a span. Also, always finish any span that you want to send to Zipkin. +
+
+
+ + + + + +
+ + +If your span contains a name greater than 50 chars, that name is truncated to 50 chars. +Your names have to be explicit and concrete. Big names lead to latency issues and sometimes even exceptions. +
+
+
+
+

8.2. Continuing Spans

+
+

Sometimes, you do not want to create a new span but you want to continue one. An example of such a +situation might be as follows:

+
+
+
    +
  • +

    AOP: If there was already a span created before an aspect was reached, you might not want to create a new span.

    +
  • +
+
+
+

To continue a span, you can use brave.Tracer, as shown in the following example:

+
+
+
+
// let's assume that we're in a thread Y and we've received
+// the `initialSpan` from thread X
+Span continuedSpan = this.tracer.toSpan(newSpan.context());
+try {
+    // ...
+    // You can tag a span
+    continuedSpan.tag("taxValue", taxValue);
+    // ...
+    // You can log an event on a span
+    continuedSpan.annotate("taxCalculated");
+}
+finally {
+    // Once done remember to flush the span. That means that
+    // it will get reported but the span itself is not yet finished
+    continuedSpan.flush();
+}
+
+
+
+
+

8.3. Creating a Span with an explicit Parent

+
+

You might want to start a new span and provide an explicit parent of that span. +Assume that the parent of a span is in one thread and you want to start a new span in another thread. +In Brave, whenever you call nextSpan(), it creates a span in reference to the span that is currently in scope. +You can put the span in scope and then call nextSpan(), as shown in the following example:

+
+
+
+
// let's assume that we're in a thread Y and we've received
+// the `initialSpan` from thread X. `initialSpan` will be the parent
+// of the `newSpan`
+Span newSpan = null;
+try (Tracer.SpanInScope ws = this.tracer.withSpanInScope(initialSpan)) {
+    newSpan = this.tracer.nextSpan().name("calculateCommission");
+    // ...
+    // You can tag a span
+    newSpan.tag("commissionValue", commissionValue);
+    // ...
+    // You can log an event on a span
+    newSpan.annotate("commissionCalculated");
+}
+finally {
+    // Once done remember to finish the span. This will allow collecting
+    // the span to send it to Zipkin. The tags and events set on the
+    // newSpan will not be present on the parent
+    if (newSpan != null) {
+        newSpan.finish();
+    }
+}
+
+
+
+ + + + + +
+ + +After creating such a span, you must finish it. Otherwise it is not reported (for example, to Zipkin). +
+
+
+
+
+
+

9. Naming spans

+
+
+

Picking a span name is not a trivial task. A span name should depict an operation name. +The name should be low cardinality, so it should not include identifiers.

+
+
+

Since there is a lot of instrumentation going on, some span names are artificial:

+
+
+
    +
  • +

    controller-method-name when received by a Controller with a method name of controllerMethodName

    +
  • +
  • +

    async for asynchronous operations done with wrapped Callable and Runnable interfaces.

    +
  • +
  • +

    Methods annotated with @Scheduled return the simple name of the class.

    +
  • +
+
+
+

Fortunately, for asynchronous processing, you can provide explicit naming.

+
+
+

9.1. @SpanName Annotation

+
+

You can name the span explicitly by using the @SpanName annotation, as shown in the following example:

+
+
+
+
@SpanName("calculateTax")
+class TaxCountingRunnable implements Runnable {
+
+    @Override
+    public void run() {
+        // perform logic
+    }
+
+}
+
+
+
+

In this case, when processed in the following manner, the span is named calculateTax:

+
+
+
+
Runnable runnable = new TraceRunnable(this.tracing, spanNamer,
+        new TaxCountingRunnable());
+Future<?> future = executorService.submit(runnable);
+// ... some additional logic ...
+future.get();
+
+
+
+
+

9.2. toString() method

+
+

It is pretty rare to create separate classes for Runnable or Callable. +Typically, one creates an anonymous instance of those classes. +You cannot annotate such classes. +To overcome that limitation, if there is no @SpanName annotation present, we check whether the class has a custom implementation of the toString() method.

+
+
+

Running such code leads to creating a span named calculateTax, as shown in the following example:

+
+
+
+
Runnable runnable = new TraceRunnable(this.tracing, spanNamer, new Runnable() {
+    @Override
+    public void run() {
+        // perform logic
+    }
+
+    @Override
+    public String toString() {
+        return "calculateTax";
+    }
+});
+Future<?> future = executorService.submit(runnable);
+// ... some additional logic ...
+future.get();
+
+
+
+
+
+
+

10. Managing Spans with Annotations

+
+
+

You can manage spans with a variety of annotations.

+
+
+

10.1. Rationale

+
+

There are a number of good reasons to manage spans with annotations, including:

+
+
+
    +
  • +

    API-agnostic means to collaborate with a span. Use of annotations lets users add to a span with no library dependency on a span api. +Doing so lets Sleuth change its core API to create less impact to user code.

    +
  • +
  • +

    Reduced surface area for basic span operations. Without this feature, you must use the span api, which has lifecycle commands that could be used incorrectly. +By only exposing scope, tag, and log functionality, you can collaborate without accidentally breaking span lifecycle.

    +
  • +
  • +

    Collaboration with runtime generated code. With libraries such as Spring Data and Feign, the implementations of interfaces are generated at runtime. +Consequently, span wrapping of objects was tedious. +Now you can provide annotations over interfaces and the arguments of those interfaces.

    +
  • +
+
+
+
+

10.2. Creating New Spans

+
+

If you do not want to create local spans manually, you can use the @NewSpan annotation. +Also, we provide the @SpanTag annotation to add tags in an automated fashion.

+
+
+

Now we can consider some examples of usage.

+
+
+
+
@NewSpan
+void testMethod();
+
+
+
+

Annotating the method without any parameter leads to creating a new span whose name equals the annotated method name.

+
+
+
+
@NewSpan("customNameOnTestMethod4")
+void testMethod4();
+
+
+
+

If you provide the value in the annotation (either directly or by setting the name parameter), the created span has the provided value as the name.

+
+
+
+
// method declaration
+@NewSpan(name = "customNameOnTestMethod5")
+void testMethod5(@SpanTag("testTag") String param);
+
+// and method execution
+this.testBean.testMethod5("test");
+
+
+
+

You can combine both the name and a tag. Let’s focus on the latter. +In this case, the value of the annotated method’s parameter runtime value becomes the value of the tag. +In our sample, the tag key is testTag, and the tag value is test.

+
+
+
+
@NewSpan(name = "customNameOnTestMethod3")
+@Override
+public void testMethod3() {
+}
+
+
+
+

You can place the @NewSpan annotation on both the class and an interface. +If you override the interface’s method and provide a different value for the @NewSpan annotation, the most +concrete one wins (in this case customNameOnTestMethod3 is set).

+
+
+
+

10.3. Continuing Spans

+
+

If you want to add tags and annotations to an existing span, you can use the @ContinueSpan annotation, as shown in the following example:

+
+
+
+
// method declaration
+@ContinueSpan(log = "testMethod11")
+void testMethod11(@SpanTag("testTag11") String param);
+
+// method execution
+this.testBean.testMethod11("test");
+this.testBean.testMethod13();
+
+
+
+

(Note that, in contrast with the @NewSpan annotation ,you can also add logs with the log parameter.)

+
+
+

That way, the span gets continued and:

+
+
+
    +
  • +

    Log entries named testMethod11.before and testMethod11.after are created.

    +
  • +
  • +

    If an exception is thrown, a log entry named testMethod11.afterFailure is also created.

    +
  • +
  • +

    A tag with a key of testTag11 and a value of test is created.

    +
  • +
+
+
+
+

10.4. Advanced Tag Setting

+
+

There are 3 different ways to add tags to a span. All of them are controlled by the SpanTag annotation. +The precedence is as follows:

+
+
+
    +
  1. +

    Try with a bean of TagValueResolver type and a provided name.

    +
  2. +
  3. +

    If the bean name has not been provided, try to evaluate an expression. +We search for a TagValueExpressionResolver bean. +The default implementation uses SPEL expression resolution. +IMPORTANT You can only reference properties from the SPEL expression. Method execution is not allowed due to security constraints.

    +
  4. +
  5. +

    If we do not find any expression to evaluate, return the toString() value of the parameter.

    +
  6. +
+
+
+

10.4.1. Custom extractor

+
+

The value of the tag for the following method is computed by an implementation of TagValueResolver interface. +Its class name has to be passed as the value of the resolver attribute.

+
+
+

Consider the following annotated method:

+
+
+
+
@NewSpan
+public void getAnnotationForTagValueResolver(
+        @SpanTag(key = "test", resolver = TagValueResolver.class) String test) {
+}
+
+
+
+

Now further consider the following TagValueResolver bean implementation:

+
+
+
+
@Bean(name = "myCustomTagValueResolver")
+public TagValueResolver tagValueResolver() {
+    return parameter -> "Value from myCustomTagValueResolver";
+}
+
+
+
+

The two preceding examples lead to setting a tag value equal to Value from myCustomTagValueResolver.

+
+
+
+

10.4.2. Resolving Expressions for a Value

+
+

Consider the following annotated method:

+
+
+
+
@NewSpan
+public void getAnnotationForTagValueExpression(@SpanTag(key = "test",
+        expression = "'hello' + ' characters'") String test) {
+}
+
+
+
+

No custom implementation of a TagValueExpressionResolver leads to evaluation of the SPEL expression, and a tag with a value of 4 characters is set on the span. +If you want to use some other expression resolution mechanism, you can create your own implementation of the bean.

+
+
+
+

10.4.3. Using the toString() method

+
+

Consider the following annotated method:

+
+
+
+
@NewSpan
+public void getAnnotationForArgumentToString(@SpanTag("test") Long param) {
+}
+
+
+
+

Running the preceding method with a value of 15 leads to setting a tag with a String value of "15".

+
+
+
+
+
+
+

11. Customizations

+
+
+

The Tracer object is fully managed by sleuth, so you rarely need to affect it. That said, +Sleuth supports a number of Customizer types, that allow you to configure +anything not already done by Sleuth with auto-configuration or properties.

+
+
+

If you define one of the following as a Bean, Sleuth will invoke it to +customize behaviour:

+
+
+
    +
  • +

    RpcTracingCustomizer - for RPC tagging and sampling policy

    +
  • +
  • +

    HttpTracingCustomizer - for HTTP tagging and sampling policy

    +
  • +
  • +

    MessagingTracingCustomizer - for messaging tagging and sampling policy

    +
  • +
  • +

    CurrentTraceContextCustomizer - to integrate decorators such as correlation.

    +
  • +
  • +

    BaggagePropagationCustomizer - for propagating baggage fields in process and over headers

    +
  • +
  • +

    CorrelationScopeDecoratorCustomizer - for scope decorations such as MDC (logging) field correlation

    +
  • +
+
+
+

11.1. HTTP

+
+

11.1.1. Data Policy

+
+

The default span data policy for HTTP requests is described in Brave: +github.com/openzipkin/brave/tree/master/instrumentation/http#span-data-policy

+
+
+

To add different data to the span, you need to register a bean of type +brave.http.HttpRequestParser or brave.http.HttpResponseParser based on when +the data is collected.

+
+
+

The bean names correspond to the request or response side, and whether it is +a client or server. For example, sleuthHttpClientRequestParser changes what +is collected before a client request is sent to the server.

+
+
+

For your convenience @HttpClientRequestParser, @HttpClientResponseParser +and corresponding server annotations can be used to inject the proper beans +or to reference the bean names via their static String NAME fields.

+
+
+

Here’s an example adding the HTTP url in addition to defaults:

+
+
+
+
@Configuration
+class Config {
+  @Bean(name = { HttpClientRequestParser.NAME, HttpServerRequestParser.NAME })
+  HttpRequestParser sleuthHttpServerRequestParser() {
+      return (req, context, span) -> {
+          HttpRequestParser.DEFAULT.parse(req, context, span);
+          String url = req.url();
+          if (url != null) {
+              span.tag("http.url", url);
+          }
+      };
+  }
+}
+
+
+
+
+

11.1.2. Sampling

+
+

If client /server sampling is required, just register a bean of type +brave.sampler.SamplerFunction<HttpRequest> and name the bean +sleuthHttpClientSampler for client sampler and sleuthHttpServerSampler +for server sampler.

+
+
+

For your convenience the @HttpClientSampler and @HttpServerSampler +annotations can be used to inject the proper beans or to reference the bean +names via their static String NAME fields.

+
+
+

Check out Brave’s code to see an example of how to make a path-based sampler +github.com/openzipkin/brave/tree/master/instrumentation/http#sampling-policy

+
+
+

If you want to completely rewrite the HttpTracing bean you can use the SkipPatternProvider +interface to retrieve the URL Pattern for spans that should be not sampled. Below you can see +an example of usage of SkipPatternProvider inside a server side, Sampler<HttpRequest>.

+
+
+
+
@Configuration
+class Config {
+  @Bean(name = HttpServerSampler.NAME)
+  SamplerFunction<HttpRequest> myHttpSampler(SkipPatternProvider provider) {
+      Pattern pattern = provider.skipPattern();
+      return request -> {
+          String url = request.path();
+          boolean shouldSkip = pattern.matcher(url).matches();
+          if (shouldSkip) {
+              return false;
+          }
+          return null;
+      };
+  }
+}
+
+
+
+
+
+

11.2. TracingFilter

+
+

You can also modify the behavior of the TracingFilter, which is the component that is responsible for processing the input HTTP request and adding tags basing on the HTTP response. +You can customize the tags or modify the response headers by registering your own instance of the TracingFilter bean.

+
+
+

In the following example, we register the TracingFilter bean, add the ZIPKIN-TRACE-ID response header containing the current Span’s trace id, and add a tag with key custom and a value tag to the span.

+
+
+
+
@Component
+@Order(TraceWebServletAutoConfiguration.TRACING_FILTER_ORDER + 1)
+class MyFilter extends GenericFilterBean {
+
+    private final Tracer tracer;
+
+    MyFilter(Tracer tracer) {
+        this.tracer = tracer;
+    }
+
+    @Override
+    public void doFilter(ServletRequest request, ServletResponse response,
+            FilterChain chain) throws IOException, ServletException {
+        Span currentSpan = this.tracer.currentSpan();
+        if (currentSpan == null) {
+            chain.doFilter(request, response);
+            return;
+        }
+        // for readability we're returning trace id in a hex form
+        ((HttpServletResponse) response).addHeader("ZIPKIN-TRACE-ID",
+                currentSpan.context().traceIdString());
+        // we can also add some custom tags
+        currentSpan.tag("custom", "tag");
+        chain.doFilter(request, response);
+    }
+
+}
+
+
+
+
+

11.3. Messaging

+
+

Sleuth automatically configures the MessagingTracing bean which serves as a +foundation for Messaging instrumentation such as Kafka or JMS.

+
+
+

If a customization of producer / consumer sampling of messaging traces is required, +just register a bean of type brave.sampler.SamplerFunction<MessagingRequest> and +name the bean sleuthProducerSampler for producer sampler and sleuthConsumerSampler +for consumer sampler.

+
+
+

For your convenience the @ProducerSampler and @ConsumerSampler +annotations can be used to inject the proper beans or to reference the bean +names via their static String NAME fields.

+
+
+

Ex. Here’s a sampler that traces 100 consumer requests per second, except for +the "alerts" channel. Other requests will use a global rate provided by the +Tracing component.

+
+
+
+
@Configuration
+class Config {
+}
+
+
+ +
+
+

11.4. RPC

+
+

Sleuth automatically configures the RpcTracing bean which serves as a +foundation for RPC instrumentation such as gRPC or Dubbo.

+
+
+

If a customization of client / server sampling of the RPC traces is required, +just register a bean of type brave.sampler.SamplerFunction<RpcRequest> and +name the bean sleuthRpcClientSampler for client sampler and +sleuthRpcServerSampler for server sampler.

+
+
+

For your convenience the @RpcClientSampler and @RpcServerSampler +annotations can be used to inject the proper beans or to reference the bean +names via their static String NAME fields.

+
+
+

Ex. Here’s a sampler that traces 100 "GetUserToken" server requests per second. +This doesn’t start new traces for requests to the health check service. Other +requests will use the global sampling configuration.

+
+
+
+
@Configuration
+class Config {
+  @Bean(name = RpcServerSampler.NAME)
+  SamplerFunction<RpcRequest> myRpcSampler() {
+      Matcher<RpcRequest> userAuth = and(serviceEquals("users.UserService"),
+              methodEquals("GetUserToken"));
+      return RpcRuleSampler.newBuilder()
+              .putRule(serviceEquals("grpc.health.v1.Health"), Sampler.NEVER_SAMPLE)
+              .putRule(userAuth, RateLimitingSampler.create(100)).build();
+  }
+}
+
+
+ +
+
+

11.5. Custom service name

+
+

By default, Sleuth assumes that, when you send a span to Zipkin, you want the span’s service name to be equal to the value of the spring.application.name property. +That is not always the case, though. +There are situations in which you want to explicitly provide a different service name for all spans coming from your application. +To achieve that, you can pass the following property to your application to override that value (the example is for a service named myService):

+
+
+
+
spring.zipkin.service.name: myService
+
+
+
+
+

11.6. Customization of Reported Spans

+
+

Before reporting spans (for example, to Zipkin) you may want to modify that span in some way. +You can do so by using the FinishedSpanHandler interface.

+
+
+

In Sleuth, we generate spans with a fixed name. +Some users want to modify the name depending on values of tags. +You can implement the FinishedSpanHandler interface to alter that name.

+
+
+

The following example shows how to register two beans that implement FinishedSpanHandler:

+
+
+
+
@Bean
+FinishedSpanHandler handlerOne() {
+    return new FinishedSpanHandler() {
+        @Override
+        public boolean handle(TraceContext traceContext, MutableSpan span) {
+            span.name("foo");
+            return true; // keep this span
+        }
+    };
+}
+
+@Bean
+FinishedSpanHandler handlerTwo() {
+    return new FinishedSpanHandler() {
+        @Override
+        public boolean handle(TraceContext traceContext, MutableSpan span) {
+            span.name(span.name() + " bar");
+            return true; // keep this span
+        }
+    };
+}
+
+
+
+

The preceding example results in changing the name of the reported span to foo bar, just before it gets reported (for example, to Zipkin).

+
+
+
+

11.7. Host Locator

+
+ + + + + +
+ + +This section is about defining host from service discovery. +It is NOT about finding Zipkin through service discovery. +
+
+
+

To define the host that corresponds to a particular span, we need to resolve the host name and port. +The default approach is to take these values from server properties. +If those are not set, we try to retrieve the host name from the network interfaces.

+
+
+

If you have the discovery client enabled and prefer to retrieve the host address from the registered instance in a service registry, you have to set the spring.zipkin.locator.discovery.enabled property (it is applicable for both HTTP-based and Stream-based span reporting), as follows:

+
+
+
+
spring.zipkin.locator.discovery.enabled: true
+
+
+
+
+
+
+

12. Sending Spans to Zipkin

+
+
+

By default, if you add spring-cloud-starter-zipkin as a dependency to your project, when the span is closed, it is sent to Zipkin over HTTP. +The communication is asynchronous. +You can configure the URL by setting the spring.zipkin.baseUrl property, as follows:

+
+
+
+
spring.zipkin.baseUrl: https://192.168.99.100:9411/
+
+
+
+

If you want to find Zipkin through service discovery, you can pass the Zipkin’s service ID inside the URL, as shown in the following example for zipkinserver service ID:

+
+
+
+
spring.zipkin.baseUrl: https://zipkinserver/
+
+
+
+

To disable this feature just set spring.zipkin.discoveryClientEnabled to `false.

+
+
+

When the Discovery Client feature is enabled, Sleuth uses +LoadBalancerClient to find the URL of the Zipkin Server. It means +that you can set up the load balancing configuration e.g. via Ribbon.

+
+
+
+
zipkinserver:
+  ribbon:
+    ListOfServers: host1,host2
+
+
+
+

If you have web, rabbit, activemq or kafka together on the classpath, you might need to pick the means by which you would like to send spans to zipkin. +To do so, set web, rabbit, activemq or kafka to the spring.zipkin.sender.type property. +The following example shows setting the sender type for web:

+
+
+
+
spring.zipkin.sender.type: web
+
+
+
+

To customize the RestTemplate that sends spans to Zipkin via HTTP, you can register +the ZipkinRestTemplateCustomizer bean.

+
+
+
+
@Configuration
+class MyConfig {
+    @Bean ZipkinRestTemplateCustomizer myCustomizer() {
+        return new ZipkinRestTemplateCustomizer() {
+            @Override
+            void customize(RestTemplate restTemplate) {
+                // customize the RestTemplate
+            }
+        };
+    }
+}
+
+
+
+

If, however, you would like to control the full process of creating the RestTemplate +object, you will have to create a bean of zipkin2.reporter.Sender type.

+
+
+
+
    @Bean Sender myRestTemplateSender(ZipkinProperties zipkin,
+            ZipkinRestTemplateCustomizer zipkinRestTemplateCustomizer) {
+        RestTemplate restTemplate = mySuperCustomRestTemplate();
+        zipkinRestTemplateCustomizer.customize(restTemplate);
+        return myCustomSender(zipkin, restTemplate);
+    }
+
+
+
+
+
+

13. Zipkin Stream Span Consumer

+
+
+ + + + + +
+ + +We recommend using Zipkin’s native support for message-based span sending. +Starting from the Edgware release, the Zipkin Stream server is deprecated. +In the Finchley release, it got removed. +
+
+
+

If for some reason you need to create the deprecated Stream Zipkin server, see the Dalston Documentation.

+
+
+
+
+

14. Integrations

+
+
+

14.1. OpenTracing

+
+

Spring Cloud Sleuth is compatible with OpenTracing. +If you have OpenTracing on the classpath, we automatically register the OpenTracing Tracer bean. +If you wish to disable this, set spring.sleuth.opentracing.enabled to false

+
+
+
+

14.2. Runnable and Callable

+
+

If you wrap your logic in Runnable or Callable, you can wrap those classes in their Sleuth representative, as shown in the following example for Runnable:

+
+
+
+
Runnable runnable = new Runnable() {
+    @Override
+    public void run() {
+        // do some work
+    }
+
+    @Override
+    public String toString() {
+        return "spanNameFromToStringMethod";
+    }
+};
+// Manual `TraceRunnable` creation with explicit "calculateTax" Span name
+Runnable traceRunnable = new TraceRunnable(this.tracing, spanNamer, runnable,
+        "calculateTax");
+// Wrapping `Runnable` with `Tracing`. That way the current span will be available
+// in the thread of `Runnable`
+Runnable traceRunnableFromTracer = this.tracing.currentTraceContext()
+        .wrap(runnable);
+
+
+
+

The following example shows how to do so for Callable:

+
+
+
+
Callable<String> callable = new Callable<String>() {
+    @Override
+    public String call() throws Exception {
+        return someLogic();
+    }
+
+    @Override
+    public String toString() {
+        return "spanNameFromToStringMethod";
+    }
+};
+// Manual `TraceCallable` creation with explicit "calculateTax" Span name
+Callable<String> traceCallable = new TraceCallable<>(this.tracing, spanNamer,
+        callable, "calculateTax");
+// Wrapping `Callable` with `Tracing`. That way the current span will be available
+// in the thread of `Callable`
+Callable<String> traceCallableFromTracer = this.tracing.currentTraceContext()
+        .wrap(callable);
+
+
+
+

That way, you ensure that a new span is created and closed for each execution.

+
+
+
+

14.3. Spring Cloud CircuitBreaker

+
+

If you have Spring Cloud CircuitBreaker on the classpath, we will wrap the passed command Supplier and the fallback Function in its trace representations. In order to disable this instrumentation set spring.sleuth.circuitbreaker.enabled to false.

+
+
+
+

14.4. RxJava

+
+

We registering a custom RxJavaSchedulersHook that wraps all Action0 instances in their Sleuth representative, which is called TraceAction. +The hook either starts or continues a span, depending on whether tracing was already going on before the Action was scheduled. +To disable the custom RxJavaSchedulersHook, set the spring.sleuth.rxjava.schedulers.hook.enabled to false.

+
+
+

You can define a list of regular expressions for thread names for which you do not want spans to be created. +To do so, provide a comma-separated list of regular expressions in the spring.sleuth.rxjava.schedulers.ignoredthreads property.

+
+
+ + + + + +
+ + +The suggest approach to reactive programming and Sleuth is to use +the Reactor support. +
+
+
+
+

14.5. HTTP integration

+
+

Features from this section can be disabled by setting the spring.sleuth.web.enabled property with value equal to false.

+
+
+

14.5.1. HTTP Filter

+
+

Through the TracingFilter, all sampled incoming requests result in creation of a Span. +That Span’s name is http: + the path to which the request was sent. +For example, if the request was sent to /this/that then the name will be http:/this/that. +You can configure which URIs you would like to skip by setting the spring.sleuth.web.skipPattern property. +If you have ManagementServerProperties on classpath, its value of contextPath gets appended to the provided skip pattern. +If you want to reuse the Sleuth’s default skip patterns and just append your own, pass those patterns by using the spring.sleuth.web.additionalSkipPattern.

+
+
+

By default, all the spring boot actuator endpoints are automatically added to the skip pattern. +If you want to disable this behaviour set spring.sleuth.web.ignore-auto-configured-skip-patterns +to true.

+
+
+

To change the order of tracing filter registration, please set the +spring.sleuth.web.filter-order property.

+
+
+

To disable the filter that logs uncaught exceptions you can disable the +spring.sleuth.web.exception-throwing-filter-enabled property.

+
+
+
+

14.5.2. HandlerInterceptor

+
+

Since we want the span names to be precise, we use a TraceHandlerInterceptor that either wraps an existing HandlerInterceptor or is added directly to the list of existing HandlerInterceptors. +The TraceHandlerInterceptor adds a special request attribute to the given HttpServletRequest. +If the the TracingFilter does not see this attribute, it creates a "fallback" span, which is an additional span created on the server side so that the trace is presented properly in the UI. +If that happens, there is probably missing instrumentation. +In that case, please file an issue in Spring Cloud Sleuth.

+
+
+
+

14.5.3. Async Servlet support

+
+

If your controller returns a Callable or a WebAsyncTask, Spring Cloud Sleuth continues the existing span instead of creating a new one.

+
+
+
+

14.5.4. WebFlux support

+
+

Through TraceWebFilter, all sampled incoming requests result in creation of a Span. +That Span’s name is http: + the path to which the request was sent. +For example, if the request was sent to /this/that, the name is http:/this/that. +You can configure which URIs you would like to skip by using the spring.sleuth.web.skipPattern property. +If you have ManagementServerProperties on the classpath, its value of contextPath gets appended to the provided skip pattern. +If you want to reuse Sleuth’s default skip patterns and append your own, pass those patterns by using the spring.sleuth.web.additionalSkipPattern.

+
+
+

To change the order of tracing filter registration, please set the +spring.sleuth.web.filter-order property.

+
+
+
+

14.5.5. Dubbo RPC support

+
+

Via the integration with Brave, Spring Cloud Sleuth supports Dubbo. +It’s enough to add the brave-instrumentation-dubbo dependency:

+
+
+
+
<dependency>
+    <groupId>io.zipkin.brave</groupId>
+    <artifactId>brave-instrumentation-dubbo</artifactId>
+</dependency>
+
+
+
+

You need to also set a dubbo.properties file with the following contents:

+
+
+
+
dubbo.provider.filter=tracing
+dubbo.consumer.filter=tracing
+
+
+
+

You can read more about Brave - Dubbo integration here. +An example of Spring Cloud Sleuth and Dubbo can be found here.

+
+
+
+
+

14.6. HTTP Client Integration

+
+

14.6.1. Synchronous Rest Template

+
+

We inject a RestTemplate interceptor to ensure that all the tracing information is passed to the requests. +Each time a call is made, a new Span is created. +It gets closed upon receiving the response. +To block the synchronous RestTemplate features, set spring.sleuth.web.client.enabled to false.

+
+
+ + + + + +
+ + +You have to register RestTemplate as a bean so that the interceptors get injected. +If you create a RestTemplate instance with a new keyword, the instrumentation does NOT work. +
+
+
+
+

14.6.2. Asynchronous Rest Template

+
+ + + + + +
+ + +Starting with Sleuth 2.0.0, we no longer register a bean of AsyncRestTemplate type. +It is up to you to create such a bean. +Then we instrument it. +
+
+
+

To block the AsyncRestTemplate features, set spring.sleuth.web.async.client.enabled to false. +To disable creation of the default TraceAsyncClientHttpRequestFactoryWrapper, set spring.sleuth.web.async.client.factory.enabled +to false. +If you do not want to create AsyncRestClient at all, set spring.sleuth.web.async.client.template.enabled to false.

+
+
+
Multiple Asynchronous Rest Templates
+
+

Sometimes you need to use multiple implementations of the Asynchronous Rest Template. +In the following snippet, you can see an example of how to set up such a custom AsyncRestTemplate:

+
+
+
+
@Configuration
+@EnableAutoConfiguration
+static class Config {
+
+    @Bean(name = "customAsyncRestTemplate")
+    public AsyncRestTemplate traceAsyncRestTemplate() {
+        return new AsyncRestTemplate(asyncClientFactory(),
+                clientHttpRequestFactory());
+    }
+
+    private ClientHttpRequestFactory clientHttpRequestFactory() {
+        ClientHttpRequestFactory clientHttpRequestFactory = new CustomClientHttpRequestFactory();
+        // CUSTOMIZE HERE
+        return clientHttpRequestFactory;
+    }
+
+    private AsyncClientHttpRequestFactory asyncClientFactory() {
+        AsyncClientHttpRequestFactory factory = new CustomAsyncClientHttpRequestFactory();
+        // CUSTOMIZE HERE
+        return factory;
+    }
+
+}
+
+
+
+
+
+

14.6.3. WebClient

+
+

We inject a ExchangeFilterFunction implementation that creates a span and, through on-success and on-error callbacks, takes care of closing client-side spans.

+
+
+

To block this feature, set spring.sleuth.web.client.enabled to false.

+
+
+ + + + + +
+ + +You have to register WebClient as a bean so that the tracing instrumentation gets applied. +If you create a WebClient instance with a new keyword, the instrumentation does NOT work. +
+
+
+
+

14.6.4. Traverson

+
+

If you use the Traverson library, you can inject a RestTemplate as a bean into your Traverson object. +Since RestTemplate is already intercepted, you get full support for tracing in your client. The following pseudo code +shows how to do that:

+
+
+
+
@Autowired RestTemplate restTemplate;
+
+Traverson traverson = new Traverson(URI.create("https://some/address"),
+    MediaType.APPLICATION_JSON, MediaType.APPLICATION_JSON_UTF8).setRestOperations(restTemplate);
+// use Traverson
+
+
+
+
+

14.6.5. Apache HttpClientBuilder and HttpAsyncClientBuilder

+
+

We instrument the HttpClientBuilder and HttpAsyncClientBuilder so that +tracing context gets injected to the sent requests.

+
+
+

To block these features, set spring.sleuth.web.client.enabled to false.

+
+
+
+

14.6.6. Netty HttpClient

+
+

We instrument the Netty’s HttpClient.

+
+
+

To block this feature, set spring.sleuth.web.client.enabled to false.

+
+
+ + + + + +
+ + +You have to register HttpClient as a bean so that the instrumentation happens. +If you create a HttpClient instance with a new keyword, the instrumentation does NOT work. +
+
+
+
+

14.6.7. UserInfoRestTemplateCustomizer

+
+

We instrument the Spring Security’s UserInfoRestTemplateCustomizer.

+
+
+

To block this feature, set spring.sleuth.web.client.enabled to false.

+
+
+
+
+

14.7. Feign

+
+

By default, Spring Cloud Sleuth provides integration with Feign through TraceFeignClientAutoConfiguration. +You can disable it entirely by setting spring.sleuth.feign.enabled to false. +If you do so, no Feign-related instrumentation take place.

+
+
+

Part of Feign instrumentation is done through a FeignBeanPostProcessor. +You can disable it by setting spring.sleuth.feign.processor.enabled to false. +If you set it to false, Spring Cloud Sleuth does not instrument any of your custom Feign components. +However, all the default instrumentation is still there.

+
+
+
+

14.8. gRPC

+
+

Spring Cloud Sleuth provides instrumentation for gRPC through TraceGrpcAutoConfiguration. You can disable it entirely by setting spring.sleuth.grpc.enabled to false.

+
+
+

14.8.1. Variant 1

+
+
Dependencies
+
+ + + + + +
+ + +The gRPC integration relies on two external libraries to instrument clients and servers and both of those libraries must be on the class path to enable the instrumentation. +
+
+
+

Maven:

+
+
+
+
        <dependency>
+            <groupId>io.github.lognet</groupId>
+            <artifactId>grpc-spring-boot-starter</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>io.zipkin.brave</groupId>
+            <artifactId>brave-instrumentation-grpc</artifactId>
+        </dependency>
+
+
+
+

Gradle:

+
+
+
+
    compile("io.github.lognet:grpc-spring-boot-starter")
+    compile("io.zipkin.brave:brave-instrumentation-grpc")
+
+
+
+
+
Server Instrumentation
+
+

Spring Cloud Sleuth leverages grpc-spring-boot-starter to register Brave’s gRPC server interceptor with all services annotated with @GRpcService.

+
+
+
+
Client Instrumentation
+
+

gRPC clients leverage a ManagedChannelBuilder to construct a ManagedChannel used to communicate to the gRPC server. The native ManagedChannelBuilder provides static methods as entry points for construction of ManagedChannel instances, however, this mechanism is outside the influence of the Spring application context.

+
+
+ + + + + +
+ + +Spring Cloud Sleuth provides a SpringAwareManagedChannelBuilder that can be customized through the Spring application context and injected by gRPC clients. This builder must be used when creating ManagedChannel instances. +
+
+
+

Sleuth creates a TracingManagedChannelBuilderCustomizer which inject Brave’s client interceptor into the SpringAwareManagedChannelBuilder.

+
+
+
+
+

14.8.2. Variant 2

+
+

Grpc Spring Boot Starter automatically detects the presence of Spring Cloud Sleuth and brave’s instrumentation for gRPC and registers the necessary client and/or server tooling.

+
+
+
+
+

14.9. Asynchronous Communication

+
+

14.9.1. @Async Annotated methods

+
+

In Spring Cloud Sleuth, we instrument async-related components so that the tracing information is passed between threads. +You can disable this behavior by setting the value of spring.sleuth.async.enabled to false.

+
+
+

If you annotate your method with @Async, we automatically create a new Span with the following characteristics:

+
+
+
    +
  • +

    If the method is annotated with @SpanName, the value of the annotation is the Span’s name.

    +
  • +
  • +

    If the method is not annotated with @SpanName, the Span name is the annotated method name.

    +
  • +
  • +

    The span is tagged with the method’s class name and method name.

    +
  • +
+
+
+
+

14.9.2. @Scheduled Annotated Methods

+
+

In Spring Cloud Sleuth, we instrument scheduled method execution so that the tracing information is passed between threads. +You can disable this behavior by setting the value of spring.sleuth.scheduled.enabled to false.

+
+
+

If you annotate your method with @Scheduled, we automatically create a new span with the following characteristics:

+
+
+
    +
  • +

    The span name is the annotated method name.

    +
  • +
  • +

    The span is tagged with the method’s class name and method name.

    +
  • +
+
+
+

If you want to skip span creation for some @Scheduled annotated classes, you can set the spring.sleuth.scheduled.skipPattern with a regular expression that matches the fully qualified name of the @Scheduled annotated class.

+
+
+
+

14.9.3. Executor, ExecutorService, and ScheduledExecutorService

+
+

We provide LazyTraceExecutor, TraceableExecutorService, and TraceableScheduledExecutorService. Those implementations create spans each time a new task is submitted, invoked, or scheduled.

+
+
+

The following example shows how to pass tracing information with TraceableExecutorService when working with CompletableFuture:

+
+
+
+
CompletableFuture<Long> completableFuture = CompletableFuture.supplyAsync(() -> {
+    // perform some logic
+    return 1_000_000L;
+}, new TraceableExecutorService(beanFactory, executorService,
+        // 'calculateTax' explicitly names the span - this param is optional
+        "calculateTax"));
+
+
+
+ + + + + +
+ + +Sleuth does not work with parallelStream() out of the box. +If you want to have the tracing information propagated through the stream, you have to use the approach with supplyAsync(...), as shown earlier. +
+
+
+

If there are beans that implement the Executor interface that you would like +to exclude from span creation, you can use the spring.sleuth.async.ignored-beans +property where you can provide a list of bean names.

+
+
+
Customization of Executors
+
+

Sometimes, you need to set up a custom instance of the AsyncExecutor. +The following example shows how to set up such a custom Executor:

+
+
+
+
@Configuration
+@EnableAutoConfiguration
+@EnableAsync
+// add the infrastructure role to ensure that the bean gets auto-proxied
+@Role(BeanDefinition.ROLE_INFRASTRUCTURE)
+static class CustomExecutorConfig extends AsyncConfigurerSupport {
+
+    @Autowired
+    BeanFactory beanFactory;
+
+    @Override
+    public Executor getAsyncExecutor() {
+        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
+        // CUSTOMIZE HERE
+        executor.setCorePoolSize(7);
+        executor.setMaxPoolSize(42);
+        executor.setQueueCapacity(11);
+        executor.setThreadNamePrefix("MyExecutor-");
+        // DON'T FORGET TO INITIALIZE
+        executor.initialize();
+        return new LazyTraceExecutor(this.beanFactory, executor);
+    }
+
+}
+
+
+
+ + + + + +
+ + +To ensure that your configuration gets post processed, remember +to add the @Role(BeanDefinition.ROLE_INFRASTRUCTURE) on your +@Configuration class +
+
+
+
+
+
+

14.10. Messaging

+
+

Features from this section can be disabled by setting the spring.sleuth.messaging.enabled property with value equal to false.

+
+
+

14.10.1. Spring Integration and Spring Cloud Stream

+
+

Spring Cloud Sleuth integrates with Spring Integration. +It creates spans for publish and subscribe events. +To disable Spring Integration instrumentation, set spring.sleuth.integration.enabled to false.

+
+
+

You can provide the spring.sleuth.integration.patterns pattern to explicitly provide the names of channels that you want to include for tracing. +By default, all channels but hystrixStreamOutput channel are included.

+
+
+ + + + + +
+ + +When using the Executor to build a Spring Integration IntegrationFlow, you must use the untraced version of the Executor. +Decorating the Spring Integration Executor Channel with TraceableExecutorService causes the spans to be improperly closed. +
+
+
+

If you want to customize the way tracing context is read from and written to message headers, +it’s enough for you to register beans of types:

+
+
+
    +
  • +

    Propagation.Setter<MessageHeaderAccessor, String> - for writing headers to the message

    +
  • +
  • +

    Propagation.Getter<MessageHeaderAccessor, String> - for reading headers from the message

    +
  • +
+
+
+
+

14.10.2. Spring RabbitMq

+
+

We instrument the RabbitTemplate so that tracing headers get injected +into the message.

+
+
+

To block this feature, set spring.sleuth.messaging.rabbit.enabled to false.

+
+
+
+

14.10.3. Spring Kafka

+
+

We instrument the Spring Kafka’s ProducerFactory and ConsumerFactory +so that tracing headers get injected into the created Spring Kafka’s +Producer and Consumer.

+
+
+

To block this feature, set spring.sleuth.messaging.kafka.enabled to false.

+
+
+
+

14.10.4. Spring Kafka Streams

+
+

We instrument the KafkaStreams KafkaClientSupplier so that tracing headers +get injected into the Producer and Consumer`s. A `KafkaStreamsTracing bean +allows for further instrumentation through additional TransformerSupplier and +ProcessorSupplier methods.

+
+
+

To block this feature, set spring.sleuth.messaging.kafka.streams.enabled to false.

+
+
+
+

14.10.5. Spring JMS

+
+

We instrument the JmsTemplate so that tracing headers get injected +into the message. We also support @JmsListener annotated methods on the consumer side.

+
+
+

To block this feature, set spring.sleuth.messaging.jms.enabled to false.

+
+
+ + + + + +
+ + +We don’t support baggage propagation for JMS +
+
+
+
+

14.10.6. Spring Cloud AWS Messaging SQS

+
+

We instrument @SqsListener which is provided by org.springframework.cloud:spring-cloud-aws-messaging +so that tracing headers get extracted from the message and a trace gets put into the context.

+
+
+

To block this feature, set spring.sleuth.messaging.sqs.enabled to false.

+
+
+
+
+

14.11. Redis

+
+

We set tracing property to Lettcue ClientResources instance to enable Brave tracing built in Lettuce . +To disable Redis support, set the spring.sleuth.redis.enabled property to false.

+
+
+
+

14.12. Quartz

+
+

We instrument quartz jobs by adding Job/Trigger listeners to the Quartz Scheduler.

+
+
+

To turn off this feature, set the spring.sleuth.quartz.enabled property to false.

+
+
+
+

14.13. Project Reactor

+
+

For projects depending on Project Reactor such as Spring Cloud Gateway, we suggest turning the spring.sleuth.reactor.decorate-on-each option to false. That way an increased performance gain should be observed in comparison to the standard instrumentation mechanism. What this option does is it will wrap decorate onLast operator instead of onEach which will result in creation of far fewer objects. The downside of this is that when Project Reactor will change threads, the trace propagation will continue without issues, however anything relying on the ThreadLocal such as e.g. MDC entries can be buggy.

+
+
+
+
+
+

15. Configuration properties

+
+
+

To see the list of all Sleuth related configuration properties please check the Appendix page.

+
+
+
+
+

16. Running examples

+
+
+

You can see the running examples deployed in the Pivotal Web Services. +Check them out at the following links:

+
+
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/highlight.min.js b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/highlight.min.js new file mode 100644 index 00000000..dcbbb4c7 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/highlight.min.js @@ -0,0 +1,2 @@ +/*! highlight.js v9.13.1 | BSD3 License | git.io/hljslicense */ +!function(e){var n="object"==typeof window&&window||"object"==typeof self&&self;"undefined"!=typeof exports?e(exports):n&&(n.hljs=e({}),"function"==typeof define&&define.amd&&define([],function(){return n.hljs}))}(function(e){function n(e){return e.replace(/&/g,"&").replace(//g,">")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0===t.index}function a(e){return k.test(e)}function i(e){var n,t,r,i,o=e.className+" ";if(o+=e.parentNode?e.parentNode.className:"",t=M.exec(o))return w(t[1])?t[1]:"no-highlight";for(o=o.split(/\s+/),n=0,r=o.length;r>n;n++)if(i=o[n],a(i)||w(i))return i}function o(e){var n,t={},r=Array.prototype.slice.call(arguments,1);for(n in e)t[n]=e[n];return r.forEach(function(e){for(n in e)t[n]=e[n]}),t}function c(e){var n=[];return function r(e,a){for(var i=e.firstChild;i;i=i.nextSibling)3===i.nodeType?a+=i.nodeValue.length:1===i.nodeType&&(n.push({event:"start",offset:a,node:i}),a=r(i,a),t(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:i}));return a}(e,0),n}function u(e,r,a){function i(){return e.length&&r.length?e[0].offset!==r[0].offset?e[0].offset"}function c(e){l+=""}function u(e){("start"===e.event?o:c)(e.node)}for(var s=0,l="",f=[];e.length||r.length;){var g=i();if(l+=n(a.substring(s,g[0].offset)),s=g[0].offset,g===e){f.reverse().forEach(c);do u(g.splice(0,1)[0]),g=i();while(g===e&&g.length&&g[0].offset===s);f.reverse().forEach(o)}else"start"===g[0].event?f.push(g[0].node):f.pop(),u(g.splice(0,1)[0])}return l+n(a.substr(s))}function s(e){return e.v&&!e.cached_variants&&(e.cached_variants=e.v.map(function(n){return o(e,{v:null},n)})),e.cached_variants||e.eW&&[o(e)]||[e]}function l(e){function n(e){return e&&e.source||e}function t(t,r){return new RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,i){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var o={},c=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");o[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?c("keyword",a.k):B(a.k).forEach(function(e){c(e,a.k[e])}),a.k=o}a.lR=t(a.l||/\w+/,!0),i&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.endSameAsBegin&&(a.e=a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&i.tE&&(a.tE+=(a.e?"|":"")+i.tE)),a.i&&(a.iR=t(a.i)),null==a.r&&(a.r=1),a.c||(a.c=[]),a.c=Array.prototype.concat.apply([],a.c.map(function(e){return s("self"===e?a:e)})),a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,i);var u=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=u.length?t(u.join("|"),!0):{exec:function(){return null}}}}r(e)}function f(e,t,a,i){function o(e){return new RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")}function c(e,n){var t,a;for(t=0,a=n.c.length;a>t;t++)if(r(n.c[t].bR,e))return n.c[t].endSameAsBegin&&(n.c[t].eR=o(n.c[t].bR.exec(e)[0])),n.c[t]}function u(e,n){if(r(e.eR,n)){for(;e.endsParent&&e.parent;)e=e.parent;return e}return e.eW?u(e.parent,n):void 0}function s(e,n){return!a&&r(n.iR,e)}function p(e,n){var t=R.cI?n[0].toLowerCase():n[0];return e.k.hasOwnProperty(t)&&e.k[t]}function d(e,n,t,r){var a=r?"":j.classPrefix,i='',i+n+o}function h(){var e,t,r,a;if(!E.k)return n(k);for(a="",t=0,E.lR.lastIndex=0,r=E.lR.exec(k);r;)a+=n(k.substring(t,r.index)),e=p(E,r),e?(M+=e[1],a+=d(e[0],n(r[0]))):a+=n(r[0]),t=E.lR.lastIndex,r=E.lR.exec(k);return a+n(k.substr(t))}function b(){var e="string"==typeof E.sL;if(e&&!L[E.sL])return n(k);var t=e?f(E.sL,k,!0,B[E.sL]):g(k,E.sL.length?E.sL:void 0);return E.r>0&&(M+=t.r),e&&(B[E.sL]=t.top),d(t.language,t.value,!1,!0)}function v(){y+=null!=E.sL?b():h(),k=""}function m(e){y+=e.cN?d(e.cN,"",!0):"",E=Object.create(e,{parent:{value:E}})}function N(e,n){if(k+=e,null==n)return v(),0;var t=c(n,E);if(t)return t.skip?k+=n:(t.eB&&(k+=n),v(),t.rB||t.eB||(k=n)),m(t,n),t.rB?0:n.length;var r=u(E,n);if(r){var a=E;a.skip?k+=n:(a.rE||a.eE||(k+=n),v(),a.eE&&(k=n));do E.cN&&(y+=I),E.skip||E.sL||(M+=E.r),E=E.parent;while(E!==r.parent);return r.starts&&(r.endSameAsBegin&&(r.starts.eR=r.eR),m(r.starts,"")),a.rE?0:n.length}if(s(n,E))throw new Error('Illegal lexeme "'+n+'" for mode "'+(E.cN||"")+'"');return k+=n,n.length||1}var R=w(e);if(!R)throw new Error('Unknown language: "'+e+'"');l(R);var x,E=i||R,B={},y="";for(x=E;x!==R;x=x.parent)x.cN&&(y=d(x.cN,"",!0)+y);var k="",M=0;try{for(var C,A,S=0;;){if(E.t.lastIndex=S,C=E.t.exec(t),!C)break;A=N(t.substring(S,C.index),C[0]),S=C.index+A}for(N(t.substr(S)),x=E;x.parent;x=x.parent)x.cN&&(y+=I);return{r:M,value:y,language:e,top:E}}catch(O){if(O.message&&-1!==O.message.indexOf("Illegal"))return{r:0,value:n(t)};throw O}}function g(e,t){t=t||j.languages||B(L);var r={r:0,value:n(e)},a=r;return t.filter(w).filter(x).forEach(function(n){var t=f(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}),a.language&&(r.second_best=a),r}function p(e){return j.tabReplace||j.useBR?e.replace(C,function(e,n){return j.useBR&&"\n"===e?"
":j.tabReplace?n.replace(/\t/g,j.tabReplace):""}):e}function d(e,n,t){var r=n?y[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.push(r),a.join(" ").trim()}function h(e){var n,t,r,o,s,l=i(e);a(l)||(j.useBR?(n=document.createElementNS("http://www.w3.org/1999/xhtml","div"),n.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")):n=e,s=n.textContent,r=l?f(l,s,!0):g(s),t=c(n),t.length&&(o=document.createElementNS("http://www.w3.org/1999/xhtml","div"),o.innerHTML=r.value,r.value=u(t,c(o),s)),r.value=p(r.value),e.innerHTML=r.value,e.className=d(e.className,l,r.language),e.result={language:r.language,re:r.r},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.r}))}function b(e){j=o(j,e)}function v(){if(!v.called){v.called=!0;var e=document.querySelectorAll("pre code");E.forEach.call(e,h)}}function m(){addEventListener("DOMContentLoaded",v,!1),addEventListener("load",v,!1)}function N(n,t){var r=L[n]=t(e);r.aliases&&r.aliases.forEach(function(e){y[e]=n})}function R(){return B(L)}function w(e){return e=(e||"").toLowerCase(),L[e]||L[y[e]]}function x(e){var n=w(e);return n&&!n.disableAutodetect}var E=[],B=Object.keys,L={},y={},k=/^(no-?highlight|plain|text)$/i,M=/\blang(?:uage)?-([\w-]+)\b/i,C=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,I="
",j={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0};return e.highlight=f,e.highlightAuto=g,e.fixMarkup=p,e.highlightBlock=h,e.configure=b,e.initHighlighting=v,e.initHighlightingOnLoad=m,e.registerLanguage=N,e.listLanguages=R,e.getLanguage=w,e.autoDetection=x,e.inherit=o,e.IR="[a-zA-Z]\\w*",e.UIR="[a-zA-Z_]\\w*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},e.C=function(n,t,r){var a=e.inherit({cN:"comment",b:n,e:t,c:[]},r||{});return a.c.push(e.PWM),a.c.push({cN:"doctag",b:"(?:TODO|FIXME|NOTE|BUG|XXX):",r:0}),a},e.CLCM=e.C("//","$"),e.CBCM=e.C("/\\*","\\*/"),e.HCM=e.C("#","$"),e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e.METHOD_GUARD={b:"\\.\\s*"+e.UIR,r:0},e});hljs.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)}/}]},s={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},a={cN:"string",b:/'/,e:/'/};return{aliases:["sh","zsh"],l:/\b-?[a-z\._]+\b/,k:{keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",_:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"meta",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,s,a,t]}});hljs.registerLanguage("dockerfile",function(e){return{aliases:["docker"],cI:!0,k:"from maintainer expose env arg user onbuild stopsignal",c:[e.HCM,e.ASM,e.QSM,e.NM,{bK:"run cmd entrypoint volume add copy workdir label healthcheck shell",starts:{e:/[^\\]\n/,sL:"bash"}}],i:")?[^\s\(]+(\s+[^\s\(]+)\s*=/,r:5,c:[{b:e.UIR+"\\s*\\(",rB:!0,r:0,c:[e.UTM]},{cN:"type",b://,k:"reified",r:0},{cN:"params",b:/\(/,e:/\)/,endsParent:!0,k:t,r:0,c:[{b:/:/,e:/[=,\/]/,eW:!0,c:[{cN:"type",b:e.UIR},e.CLCM,e.CBCM],r:0},e.CLCM,e.CBCM,s,l,c,e.CNM]},e.CBCM]},{cN:"class",bK:"class interface trait",e:/[:\{(]|$/,eE:!0,i:"extends implements",c:[{bK:"public protected internal private constructor"},e.UTM,{cN:"type",b://,eB:!0,eE:!0,r:0},{cN:"type",b:/[,:]\s*/,e:/[<\(,]|$/,eB:!0,rE:!0},s,l]},c,{cN:"meta",b:"^#!/usr/bin/env",e:"$",i:"\n"},o]}});hljs.registerLanguage("java",function(e){var a="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",t=a+"(<"+a+"(\\s*,\\s*"+a+")*>)?",r="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",s="\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",c={cN:"number",b:s,r:0};return{aliases:["jsp"],k:r,i:/<\/|#/,c:[e.C("/\\*\\*","\\*/",{r:0,c:[{b:/\w+@/,r:0},{cN:"doctag",b:"@[A-Za-z]+"}]}),e.CLCM,e.CBCM,e.ASM,e.QSM,{cN:"class",bK:"class interface",e:/[{;=]/,eE:!0,k:"class interface",i:/[:"\[\]]/,c:[{bK:"extends implements"},e.UTM]},{bK:"new throw return else",r:0},{cN:"function",b:"("+t+"\\s+)+"+e.UIR+"\\s*\\(",rB:!0,e:/[{;=]/,eE:!0,k:r,c:[{b:e.UIR+"\\s*\\(",rB:!0,r:0,c:[e.UTM]},{cN:"params",b:/\(/,e:/\)/,k:r,r:0,c:[e.ASM,e.QSM,e.CNM,e.CBCM]},e.CLCM,e.CBCM]},c,{cN:"meta",b:"@[A-Za-z]+"}]}});hljs.registerLanguage("xml",function(s){var e="[A-Za-z0-9\\._:-]+",t={eW:!0,i:/`]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist"],cI:!0,c:[{cN:"meta",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},s.C("",{r:10}),{b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"meta",b:/<\?xml/,e:/\?>/,r:10},{b:/<\?(php)?/,e:/\?>/,sL:"php",c:[{b:"/\\*",e:"\\*/",skip:!0},{b:'b"',e:'"',skip:!0},{b:"b'",e:"'",skip:!0},s.inherit(s.ASM,{i:null,cN:null,c:null,skip:!0}),s.inherit(s.QSM,{i:null,cN:null,c:null,skip:!0})]},{cN:"tag",b:"|$)",e:">",k:{name:"style"},c:[t],starts:{e:"",rE:!0,sL:["css","xml"]}},{cN:"tag",b:"|$)",e:">",k:{name:"script"},c:[t],starts:{e:"",rE:!0,sL:["actionscript","javascript","handlebars","xml"]}},{cN:"tag",b:"",c:[{cN:"name",b:/[^\/><\s]+/,r:0},t]}]}});hljs.registerLanguage("properties",function(r){var t="[ \\t\\f]*",e="[ \\t\\f]+",s="("+t+"[:=]"+t+"|"+e+")",n="([^\\\\\\W:= \\t\\f\\n]|\\\\.)+",a="([^\\\\:= \\t\\f\\n]|\\\\.)+",c={e:s,r:0,starts:{cN:"string",e:/$/,r:0,c:[{b:"\\\\\\n"}]}};return{cI:!0,i:/\S/,c:[r.C("^\\s*[!#]","$"),{b:n+s,rB:!0,c:[{cN:"attr",b:n,endsParent:!0,r:0}],starts:c},{b:a+s,rB:!0,r:0,c:[{cN:"meta",b:a,endsParent:!0,r:0}],starts:c},{cN:"attr",r:0,b:a+t+"$"}]}});hljs.registerLanguage("diff",function(e){return{aliases:["patch"],c:[{cN:"meta",r:10,v:[{b:/^@@ +\-\d+,\d+ +\+\d+,\d+ +@@$/},{b:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{b:/^\-\-\- +\d+,\d+ +\-\-\-\-$/}]},{cN:"comment",v:[{b:/Index: /,e:/$/},{b:/={3,}/,e:/$/},{b:/^\-{3}/,e:/$/},{b:/^\*{3} /,e:/$/},{b:/^\+{3}/,e:/$/},{b:/\*{5}/,e:/\*{5}$/}]},{cN:"addition",b:"^\\+",e:"$"},{cN:"deletion",b:"^\\-",e:"$"},{cN:"addition",b:"^\\!",e:"$"}]}});hljs.registerLanguage("shell",function(s){return{aliases:["console"],c:[{cN:"meta",b:"^\\s{0,3}[\\w\\d\\[\\]()@-]*[>%$#]",starts:{e:"$",sL:"bash"}}]}});hljs.registerLanguage("asciidoc",function(e){return{aliases:["adoc"],c:[e.C("^/{4,}\\n","\\n/{4,}$",{r:10}),e.C("^//","$",{r:0}),{cN:"title",b:"^\\.\\w.*$"},{b:"^[=\\*]{4,}\\n",e:"\\n^[=\\*]{4,}$",r:10},{cN:"section",r:10,v:[{b:"^(={1,5}) .+?( \\1)?$"},{b:"^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$"}]},{cN:"meta",b:"^:.+?:",e:"\\s",eE:!0,r:10},{cN:"meta",b:"^\\[.+?\\]$",r:0},{cN:"quote",b:"^_{4,}\\n",e:"\\n_{4,}$",r:10},{cN:"code",b:"^[\\-\\.]{4,}\\n",e:"\\n[\\-\\.]{4,}$",r:10},{b:"^\\+{4,}\\n",e:"\\n\\+{4,}$",c:[{b:"<",e:">",sL:"xml",r:0}],r:10},{cN:"bullet",b:"^(\\*+|\\-+|\\.+|[^\\n]+?::)\\s+"},{cN:"symbol",b:"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",r:10},{cN:"strong",b:"\\B\\*(?![\\*\\s])",e:"(\\n{2}|\\*)",c:[{b:"\\\\*\\w",r:0}]},{cN:"emphasis",b:"\\B'(?!['\\s])",e:"(\\n{2}|')",c:[{b:"\\\\'\\w",r:0}],r:0},{cN:"emphasis",b:"_(?![_\\s])",e:"(\\n{2}|_)",r:0},{cN:"string",v:[{b:"``.+?''"},{b:"`.+?'"}]},{cN:"code",b:"(`.+?`|\\+.+?\\+)",r:0},{cN:"code",b:"^[ \\t]",e:"$",r:0},{b:"^'{3,}[ \\t]*$",r:10},{b:"(link:)?(http|https|ftp|file|irc|image:?):\\S+\\[.*?\\]",rB:!0,c:[{b:"(link|image:?):",r:0},{cN:"link",b:"\\w",e:"[^\\[]+",r:0},{cN:"string",b:"\\[",e:"\\]",eB:!0,eE:!0,r:0}],r:10}]}});hljs.registerLanguage("aspectj",function(e){var t="false synchronized int abstract float private char boolean static null if const for true while long throw strictfp finally protected import native final return void enum else extends implements break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws privileged aspectOf adviceexecution proceed cflowbelow cflow initialization preinitialization staticinitialization withincode target within execution getWithinTypeName handler thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents warning error soft precedence thisAspectInstance",i="get set args call";return{k:t,i:/<\/|#/,c:[e.C("/\\*\\*","\\*/",{r:0,c:[{b:/\w+@/,r:0},{cN:"doctag",b:"@[A-Za-z]+"}]}),e.CLCM,e.CBCM,e.ASM,e.QSM,{cN:"class",bK:"aspect",e:/[{;=]/,eE:!0,i:/[:;"\[\]]/,c:[{bK:"extends implements pertypewithin perthis pertarget percflowbelow percflow issingleton"},e.UTM,{b:/\([^\)]*/,e:/[)]+/,k:t+" "+i,eE:!1}]},{cN:"class",bK:"class interface",e:/[{;=]/,eE:!0,r:0,k:"class interface",i:/[:"\[\]]/,c:[{bK:"extends implements"},e.UTM]},{bK:"pointcut after before around throwing returning",e:/[)]/,eE:!1,i:/["\[\]]/,c:[{b:e.UIR+"\\s*\\(",rB:!0,c:[e.UTM]}]},{b:/[:]/,rB:!0,e:/[{;]/,r:0,eE:!1,k:t,i:/["\[\]]/,c:[{b:e.UIR+"\\s*\\(",k:t+" "+i,r:0},e.QSM]},{bK:"new throw",r:0},{cN:"function",b:/\w+ +\w+(\.)?\w+\s*\([^\)]*\)\s*((throws)[\w\s,]+)?[\{;]/,rB:!0,e:/[{;=]/,k:t,eE:!0,c:[{b:e.UIR+"\\s*\\(",rB:!0,r:0,c:[e.UTM]},{cN:"params",b:/\(/,e:/\)/,r:0,k:t,c:[e.ASM,e.QSM,e.CNM,e.CBCM]},e.CLCM,e.CBCM]},e.CNM,{cN:"meta",b:"@[A-Za-z]+"}]}});hljs.registerLanguage("gradle",function(e){return{cI:!0,k:{keyword:"task project allprojects subprojects artifacts buildscript configurations dependencies repositories sourceSets description delete from into include exclude source classpath destinationDir includes options sourceCompatibility targetCompatibility group flatDir doLast doFirst flatten todir fromdir ant def abstract break case catch continue default do else extends final finally for if implements instanceof native new private protected public return static switch synchronized throw throws transient try volatile while strictfp package import false null super this true antlrtask checkstyle codenarc copy boolean byte char class double float int interface long short void compile runTime file fileTree abs any append asList asWritable call collect compareTo count div dump each eachByte eachFile eachLine every find findAll flatten getAt getErr getIn getOut getText grep immutable inject inspect intersect invokeMethods isCase join leftShift minus multiply newInputStream newOutputStream newPrintWriter newReader newWriter next plus pop power previous print println push putAt read readBytes readLines reverse reverseEach round size sort splitEachLine step subMap times toInteger toList tokenize upto waitForOrKill withPrintWriter withReader withStream withWriter withWriterAppend write writeLine"},c:[e.CLCM,e.CBCM,e.ASM,e.QSM,e.NM,e.RM]}});hljs.registerLanguage("json",function(e){var i={literal:"true false null"},n=[e.QSM,e.CNM],r={e:",",eW:!0,eE:!0,c:n,k:i},t={b:"{",e:"}",c:[{cN:"attr",b:/"/,e:/"/,c:[e.BE],i:"\\n"},e.inherit(r,{b:/:/})],i:"\\S"},c={b:"\\[",e:"\\]",c:[e.inherit(r)],i:"\\S"};return n.splice(n.length,0,t,c),{c:n,k:i,i:"\\S"}});hljs.registerLanguage("sql",function(e){var t=e.C("--","$");return{cI:!0,i:/[<>{}*]/,c:[{bK:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke comment with",e:/;/,eW:!0,l:/[\w\.]+/,k:{keyword:"as abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias allocate allow alter always analyze ancillary and any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound buffer_cache buffer_pool build bulk by byte byteordermark bytes cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain export export_set extended extent external external_1 external_2 externally extract failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force foreign form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour http id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists keep keep_duplicates key keys kill language large last last_day last_insert_id last_value lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link list listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop low low_priority lower lpad lrtrim ltrim main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notnull notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release release_lock relies_on relocate rely rem remainder rename repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second section securefile security seed segment select self sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime table tables tablespace tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unnest unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek",literal:"true false null unknown",built_in:"array bigint binary bit blob bool boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text time timestamp varchar varying void"},c:[{cN:"string",b:"'",e:"'",c:[e.BE,{b:"''"}]},{cN:"string",b:'"',e:'"',c:[e.BE,{b:'""'}]},{cN:"string",b:"`",e:"`",c:[e.BE]},e.CNM,e.CBCM,t,e.HCM]},e.CBCM,t,e.HCM]}});hljs.registerLanguage("go",function(e){var t={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",literal:"true false iota nil",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{aliases:["golang"],k:t,i:"",rB:!0,e:"\\s*=>",c:[{cN:"params",v:[{b:r},{b:/\(\s*\)/},{b:/\(/,e:/\)/,eB:!0,eE:!0,k:t,c:s}]}]},{b://,sL:"xml",c:[{b:/<\w+\s*\/>/,skip:!0},{b:/<\w+/,e:/(\/\w+|\w+\/)>/,skip:!0,c:[{b:/<\w+\s*\/>/,skip:!0},"self"]}]}],r:0},{cN:"function",bK:"function",e:/\{/,eE:!0,c:[e.inherit(e.TM,{b:r}),{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,c:s}],i:/\[|%/},{b:/\$[(.]/},e.METHOD_GUARD,{cN:"class",bK:"class",e:/[{;=]/,eE:!0,i:/[:"\[\]]/,c:[{bK:"extends"},e.UTM]},{bK:"constructor",e:/\{/,eE:!0}],i:/#(?!!)/}}); \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/a11y-dark.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/a11y-dark.min.css new file mode 100644 index 00000000..b93b742a --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/a11y-dark.min.css @@ -0,0 +1,99 @@ +/* a11y-dark theme */ +/* Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css */ +/* @author: ericwbailey */ + +/* Comment */ +.hljs-comment, +.hljs-quote { + color: #d4d0ab; +} + +/* Red */ +.hljs-variable, +.hljs-template-variable, +.hljs-tag, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class, +.hljs-regexp, +.hljs-deletion { + color: #ffa07a; +} + +/* Orange */ +.hljs-number, +.hljs-built_in, +.hljs-builtin-name, +.hljs-literal, +.hljs-type, +.hljs-params, +.hljs-meta, +.hljs-link { + color: #f5ab35; +} + +/* Yellow */ +.hljs-attribute { + color: #ffd700; +} + +/* Green */ +.hljs-string, +.hljs-symbol, +.hljs-bullet, +.hljs-addition { + color: #abe338; +} + +/* Blue */ +.hljs-title, +.hljs-section { + color: #00e0e0; +} + +/* Purple */ +.hljs-keyword, +.hljs-selector-tag { + color: #dcc6e0; +} + +.hljs { + display: block; + overflow-x: auto; + background: #2b2b2b; + color: #f8f8f2; + padding: 0.5em; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +@media screen and (-ms-high-contrast: active) { + .hljs-addition, + .hljs-attribute, + .hljs-built_in, + .hljs-builtin-name, + .hljs-bullet, + .hljs-comment, + .hljs-link, + .hljs-literal, + .hljs-meta, + .hljs-number, + .hljs-params, + .hljs-string, + .hljs-symbol, + .hljs-type, + .hljs-quote { + color: highlight; + } + + .hljs-keyword, + .hljs-selector-tag { + font-weight: bold; + } +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/an-old-hope.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/an-old-hope.min.css new file mode 100644 index 00000000..a6d56f4b --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/an-old-hope.min.css @@ -0,0 +1,89 @@ +/* + +An Old Hope – Star Wars Syntax (c) Gustavo Costa +Original theme - Ocean Dark Theme – by https://github.com/gavsiu +Based on Jesse Leite's Atom syntax theme 'An Old Hope' – https://github.com/JesseLeite/an-old-hope-syntax-atom + +*/ + +/* Death Star Comment */ +.hljs-comment, +.hljs-quote +{ + color: #B6B18B; +} + +/* Darth Vader */ +.hljs-variable, +.hljs-template-variable, +.hljs-tag, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class, +.hljs-regexp, +.hljs-deletion +{ + color: #EB3C54; +} + +/* Threepio */ +.hljs-number, +.hljs-built_in, +.hljs-builtin-name, +.hljs-literal, +.hljs-type, +.hljs-params, +.hljs-meta, +.hljs-link +{ + color: #E7CE56; +} + +/* Luke Skywalker */ +.hljs-attribute +{ + color: #EE7C2B; +} + +/* Obi Wan Kenobi */ +.hljs-string, +.hljs-symbol, +.hljs-bullet, +.hljs-addition +{ + color: #4FB4D7; +} + +/* Yoda */ +.hljs-title, +.hljs-section +{ + color: #78BB65; +} + +/* Mace Windu */ +.hljs-keyword, +.hljs-selector-tag +{ + color: #B45EA4; +} + +/* Millenium Falcon */ +.hljs +{ + display: block; + overflow-x: auto; + background: #1C1D21; + color: #c0c5ce; + padding: 0.5em; +} + +.hljs-emphasis +{ + font-style: italic; +} + +.hljs-strong +{ + font-weight: bold; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-dark-reasonable.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-dark-reasonable.min.css new file mode 100644 index 00000000..fd41c996 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-dark-reasonable.min.css @@ -0,0 +1,77 @@ +/* + +Atom One Dark With support for ReasonML by Gidi Morris, based off work by Daniel Gamage + +Original One Dark Syntax theme from https://github.com/atom/one-dark-syntax + +*/ +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + line-height: 1.3em; + color: #abb2bf; + background: #282c34; + border-radius: 5px; +} +.hljs-keyword, .hljs-operator { + color: #F92672; +} +.hljs-pattern-match { + color: #F92672; +} +.hljs-pattern-match .hljs-constructor { + color: #61aeee; +} +.hljs-function { + color: #61aeee; +} +.hljs-function .hljs-params { + color: #A6E22E; +} +.hljs-function .hljs-params .hljs-typing { + color: #FD971F; +} +.hljs-module-access .hljs-module { + color: #7e57c2; +} +.hljs-constructor { + color: #e2b93d; +} +.hljs-constructor .hljs-string { + color: #9CCC65; +} +.hljs-comment, .hljs-quote { + color: #b18eb1; + font-style: italic; +} +.hljs-doctag, .hljs-formula { + color: #c678dd; +} +.hljs-section, .hljs-name, .hljs-selector-tag, .hljs-deletion, .hljs-subst { + color: #e06c75; +} +.hljs-literal { + color: #56b6c2; +} +.hljs-string, .hljs-regexp, .hljs-addition, .hljs-attribute, .hljs-meta-string { + color: #98c379; +} +.hljs-built_in, .hljs-class .hljs-title { + color: #e6c07b; +} +.hljs-attr, .hljs-variable, .hljs-template-variable, .hljs-type, .hljs-selector-class, .hljs-selector-attr, .hljs-selector-pseudo, .hljs-number { + color: #d19a66; +} +.hljs-symbol, .hljs-bullet, .hljs-link, .hljs-meta, .hljs-selector-id, .hljs-title { + color: #61aeee; +} +.hljs-emphasis { + font-style: italic; +} +.hljs-strong { + font-weight: bold; +} +.hljs-link { + text-decoration: underline; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-dark.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-dark.min.css new file mode 100644 index 00000000..1616aafe --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-dark.min.css @@ -0,0 +1,96 @@ +/* + +Atom One Dark by Daniel Gamage +Original One Dark Syntax theme from https://github.com/atom/one-dark-syntax + +base: #282c34 +mono-1: #abb2bf +mono-2: #818896 +mono-3: #5c6370 +hue-1: #56b6c2 +hue-2: #61aeee +hue-3: #c678dd +hue-4: #98c379 +hue-5: #e06c75 +hue-5-2: #be5046 +hue-6: #d19a66 +hue-6-2: #e6c07b + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: #abb2bf; + background: #282c34; +} + +.hljs-comment, +.hljs-quote { + color: #5c6370; + font-style: italic; +} + +.hljs-doctag, +.hljs-keyword, +.hljs-formula { + color: #c678dd; +} + +.hljs-section, +.hljs-name, +.hljs-selector-tag, +.hljs-deletion, +.hljs-subst { + color: #e06c75; +} + +.hljs-literal { + color: #56b6c2; +} + +.hljs-string, +.hljs-regexp, +.hljs-addition, +.hljs-attribute, +.hljs-meta-string { + color: #98c379; +} + +.hljs-built_in, +.hljs-class .hljs-title { + color: #e6c07b; +} + +.hljs-attr, +.hljs-variable, +.hljs-template-variable, +.hljs-type, +.hljs-selector-class, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-number { + color: #d19a66; +} + +.hljs-symbol, +.hljs-bullet, +.hljs-link, +.hljs-meta, +.hljs-selector-id, +.hljs-title { + color: #61aeee; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-link { + text-decoration: underline; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-light.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-light.min.css new file mode 100644 index 00000000..d5bd1d2a --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/atom-one-light.min.css @@ -0,0 +1,96 @@ +/* + +Atom One Light by Daniel Gamage +Original One Light Syntax theme from https://github.com/atom/one-light-syntax + +base: #fafafa +mono-1: #383a42 +mono-2: #686b77 +mono-3: #a0a1a7 +hue-1: #0184bb +hue-2: #4078f2 +hue-3: #a626a4 +hue-4: #50a14f +hue-5: #e45649 +hue-5-2: #c91243 +hue-6: #986801 +hue-6-2: #c18401 + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: #383a42; + background: #fafafa; +} + +.hljs-comment, +.hljs-quote { + color: #a0a1a7; + font-style: italic; +} + +.hljs-doctag, +.hljs-keyword, +.hljs-formula { + color: #a626a4; +} + +.hljs-section, +.hljs-name, +.hljs-selector-tag, +.hljs-deletion, +.hljs-subst { + color: #e45649; +} + +.hljs-literal { + color: #0184bb; +} + +.hljs-string, +.hljs-regexp, +.hljs-addition, +.hljs-attribute, +.hljs-meta-string { + color: #50a14f; +} + +.hljs-built_in, +.hljs-class .hljs-title { + color: #c18401; +} + +.hljs-attr, +.hljs-variable, +.hljs-template-variable, +.hljs-type, +.hljs-selector-class, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-number { + color: #986801; +} + +.hljs-symbol, +.hljs-bullet, +.hljs-link, +.hljs-meta, +.hljs-selector-id, +.hljs-title { + color: #4078f2; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-link { + text-decoration: underline; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/dracula.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/dracula.min.css new file mode 100644 index 00000000..578f0b40 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/dracula.min.css @@ -0,0 +1,76 @@ +/* + +Dracula Theme v1.2.0 + +https://github.com/zenorocha/dracula-theme + +Copyright 2015, All rights reserved + +Code licensed under the MIT license +https://zenorocha.mit-license.org/ + +@author Éverton Ribeiro +@author Zeno Rocha + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #282a36; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-literal, +.hljs-section, +.hljs-link { + color: #8be9fd; +} + +.hljs-function .hljs-keyword { + color: #ff79c6; +} + +.hljs, +.hljs-subst { + color: #f8f8f2; +} + +.hljs-string, +.hljs-title, +.hljs-name, +.hljs-type, +.hljs-attribute, +.hljs-symbol, +.hljs-bullet, +.hljs-addition, +.hljs-variable, +.hljs-template-tag, +.hljs-template-variable { + color: #f1fa8c; +} + +.hljs-comment, +.hljs-quote, +.hljs-deletion, +.hljs-meta { + color: #6272a4; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-literal, +.hljs-title, +.hljs-section, +.hljs-doctag, +.hljs-type, +.hljs-name, +.hljs-strong { + font-weight: bold; +} + +.hljs-emphasis { + font-style: italic; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/github.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/github.min.css new file mode 100644 index 00000000..791932b8 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/github.min.css @@ -0,0 +1,99 @@ +/* + +github.com style (c) Vasily Polovnyov + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: #333; + background: #f8f8f8; +} + +.hljs-comment, +.hljs-quote { + color: #998; + font-style: italic; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-subst { + color: #333; + font-weight: bold; +} + +.hljs-number, +.hljs-literal, +.hljs-variable, +.hljs-template-variable, +.hljs-tag .hljs-attr { + color: #008080; +} + +.hljs-string, +.hljs-doctag { + color: #d14; +} + +.hljs-title, +.hljs-section, +.hljs-selector-id { + color: #900; + font-weight: bold; +} + +.hljs-subst { + font-weight: normal; +} + +.hljs-type, +.hljs-class .hljs-title { + color: #458; + font-weight: bold; +} + +.hljs-tag, +.hljs-name, +.hljs-attribute { + color: #000080; + font-weight: normal; +} + +.hljs-regexp, +.hljs-link { + color: #009926; +} + +.hljs-symbol, +.hljs-bullet { + color: #990073; +} + +.hljs-built_in, +.hljs-builtin-name { + color: #0086b3; +} + +.hljs-meta { + color: #999; + font-weight: bold; +} + +.hljs-deletion { + background: #fdd; +} + +.hljs-addition { + background: #dfd; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/monokai-sublime.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/monokai-sublime.min.css new file mode 100644 index 00000000..ed52c92e --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/monokai-sublime.min.css @@ -0,0 +1,83 @@ +/* + +Monokai Sublime style. Derived from Monokai by noformnocontent https://nn.mit-license.org/ + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #23241f; +} + +.hljs, +.hljs-tag, +.hljs-subst { + color: #f8f8f2; +} + +.hljs-strong, +.hljs-emphasis { + color: #a8a8a2; +} + +.hljs-bullet, +.hljs-quote, +.hljs-number, +.hljs-regexp, +.hljs-literal, +.hljs-link { + color: #ae81ff; +} + +.hljs-code, +.hljs-title, +.hljs-section, +.hljs-selector-class { + color: #a6e22e; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-name, +.hljs-attr { + color: #f92672; +} + +.hljs-symbol, +.hljs-attribute { + color: #66d9ef; +} + +.hljs-params, +.hljs-class .hljs-title { + color: #f8f8f2; +} + +.hljs-string, +.hljs-type, +.hljs-built_in, +.hljs-builtin-name, +.hljs-selector-id, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-addition, +.hljs-variable, +.hljs-template-variable { + color: #e6db74; +} + +.hljs-comment, +.hljs-deletion, +.hljs-meta { + color: #75715e; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/monokai.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/monokai.min.css new file mode 100644 index 00000000..a5735585 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/monokai.min.css @@ -0,0 +1,70 @@ +/* +Monokai style - ported by Luigi Maselli - https://grigio.org +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #272822; color: #ddd; +} + +.hljs-tag, +.hljs-keyword, +.hljs-selector-tag, +.hljs-literal, +.hljs-strong, +.hljs-name { + color: #f92672; +} + +.hljs-code { + color: #66d9ef; +} + +.hljs-class .hljs-title { + color: white; +} + +.hljs-attribute, +.hljs-symbol, +.hljs-regexp, +.hljs-link { + color: #bf79db; +} + +.hljs-string, +.hljs-bullet, +.hljs-subst, +.hljs-title, +.hljs-section, +.hljs-emphasis, +.hljs-type, +.hljs-built_in, +.hljs-builtin-name, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-addition, +.hljs-variable, +.hljs-template-tag, +.hljs-template-variable { + color: #a6e22e; +} + +.hljs-comment, +.hljs-quote, +.hljs-deletion, +.hljs-meta { + color: #75715e; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-literal, +.hljs-doctag, +.hljs-title, +.hljs-section, +.hljs-type, +.hljs-selector-id { + font-weight: bold; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/solarized-light.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/solarized-light.min.css new file mode 100644 index 00000000..fdcfcc72 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/solarized-light.min.css @@ -0,0 +1,84 @@ +/* + +Orginal Style from ethanschoonover.com/solarized (c) Jeremy Hull + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #fdf6e3; + color: #657b83; +} + +.hljs-comment, +.hljs-quote { + color: #93a1a1; +} + +/* Solarized Green */ +.hljs-keyword, +.hljs-selector-tag, +.hljs-addition { + color: #859900; +} + +/* Solarized Cyan */ +.hljs-number, +.hljs-string, +.hljs-meta .hljs-meta-string, +.hljs-literal, +.hljs-doctag, +.hljs-regexp { + color: #2aa198; +} + +/* Solarized Blue */ +.hljs-title, +.hljs-section, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class { + color: #268bd2; +} + +/* Solarized Yellow */ +.hljs-attribute, +.hljs-attr, +.hljs-variable, +.hljs-template-variable, +.hljs-class .hljs-title, +.hljs-type { + color: #b58900; +} + +/* Solarized Orange */ +.hljs-symbol, +.hljs-bullet, +.hljs-subst, +.hljs-meta, +.hljs-meta .hljs-keyword, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-link { + color: #cb4b16; +} + +/* Solarized Red */ +.hljs-built_in, +.hljs-deletion { + color: #dc322f; +} + +.hljs-formula { + background: #eee8d5; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/zenburn.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/zenburn.min.css new file mode 100644 index 00000000..07be5020 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/highlight/styles/zenburn.min.css @@ -0,0 +1,80 @@ +/* + +Zenburn style from voldmar.ru (c) Vladimir Epifanov +based on dark.css by Ivan Sagalaev + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #3f3f3f; + color: #dcdcdc; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-tag { + color: #e3ceab; +} + +.hljs-template-tag { + color: #dcdcdc; +} + +.hljs-number { + color: #8cd0d3; +} + +.hljs-variable, +.hljs-template-variable, +.hljs-attribute { + color: #efdcbc; +} + +.hljs-literal { + color: #efefaf; +} + +.hljs-subst { + color: #8f8f8f; +} + +.hljs-title, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class, +.hljs-section, +.hljs-type { + color: #efef8f; +} + +.hljs-symbol, +.hljs-bullet, +.hljs-link { + color: #dca3a3; +} + +.hljs-deletion, +.hljs-string, +.hljs-built_in, +.hljs-builtin-name { + color: #cc9393; +} + +.hljs-addition, +.hljs-comment, +.hljs-quote, +.hljs-meta { + color: #7f9f7f; +} + + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/toc.js b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/toc.js new file mode 100644 index 00000000..0b6fcd65 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/toc.js @@ -0,0 +1,80 @@ +var toctitle = document.getElementById('toctitle'); +var path = window.location.pathname; +if (toctitle != null) { + var oldtoc = toctitle.nextElementSibling; + var newtoc = document.createElement('div'); + newtoc.setAttribute('id', 'tocbot'); + newtoc.setAttribute('class', 'js-toc desktop-toc'); + oldtoc.setAttribute('class', 'mobile-toc'); + oldtoc.parentNode.appendChild(newtoc); + tocbot.init({ + contentSelector: '#content', + headingSelector: 'h1, h2, h3, h4, h5', + positionFixedSelector: 'body', + fixedSidebarOffset: 90, + smoothScroll: false + }); + if (!path.endsWith("index.html") && !path.endsWith("/")) { + var link = document.createElement("a"); + if (document.getElementById('index-link')) { + indexLinkElement = document.querySelector('#index-link > p > a'); + linkHref = indexLinkElement.getAttribute("href"); + link.setAttribute("href", linkHref); + } else { + link.setAttribute("href", "index.html"); + } + link.innerHTML = " Back to index"; + var block = document.createElement("div"); + block.setAttribute('class', 'back-action'); + block.appendChild(link); + var toc = document.getElementById('toc'); + var next = document.getElementById('toctitle').nextElementSibling; + toc.insertBefore(block, next); + } +} + +var headerHtml = '
\n' + + '

\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '\n' + + '

\n' + + '
'; + +var header = document.createElement("div"); +header.innerHTML = headerHtml; +document.body.insertBefore(header, document.body.firstChild); diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/tocbot/tocbot.css b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/tocbot/tocbot.css new file mode 100644 index 00000000..0632de23 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/tocbot/tocbot.css @@ -0,0 +1 @@ +.toc{overflow-y:auto}.toc>.toc-list{overflow:hidden;position:relative}.toc>.toc-list li{list-style:none}.toc-list{margin:0;padding-left:10px}a.toc-link{color:currentColor;height:100%}.is-collapsible{max-height:1000px;overflow:hidden;transition:all 300ms ease-in-out}.is-collapsed{max-height:0}.is-position-fixed{position:fixed !important;top:0}.is-active-link{font-weight:700}.toc-link::before{background-color:#EEE;content:' ';display:inline-block;height:inherit;left:0;margin-top:-1px;position:absolute;width:2px}.is-active-link::before{background-color:#54BC4B} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/js/tocbot/tocbot.min.js b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/tocbot/tocbot.min.js new file mode 100644 index 00000000..943d8fdb --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/js/tocbot/tocbot.min.js @@ -0,0 +1 @@ +!function(e){function t(o){if(n[o])return n[o].exports;var l=n[o]={i:o,l:!1,exports:{}};return e[o].call(l.exports,l,l.exports,t),l.l=!0,l.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=0)}([function(e,t,n){(function(o){var l,i,s;!function(n,o){i=[],l=o(n),void 0!==(s="function"==typeof l?l.apply(t,i):l)&&(e.exports=s)}(void 0!==o?o:this.window||this.global,function(e){"use strict";function t(){for(var e={},t=0;te.fixedSidebarOffset?-1===n.className.indexOf(e.positionFixedClass)&&(n.className+=h+e.positionFixedClass):n.className=n.className.split(h+e.positionFixedClass).join("")}function s(t){var n=document.documentElement.scrollTop||f.scrollTop;e.positionFixedSelector&&i();var o,l=t;if(m&&null!==document.querySelector(e.tocSelector)&&l.length>0){d.call(l,function(t,i){if(t.offsetTop>n+e.headingsOffset+10){return o=l[0===i?i:i-1],!0}if(i===l.length-1)return o=l[l.length-1],!0});var s=document.querySelector(e.tocSelector).querySelectorAll("."+e.linkClass);u.call(s,function(t){t.className=t.className.split(h+e.activeLinkClass).join("")});var c=document.querySelector(e.tocSelector).querySelectorAll("."+e.listItemClass);u.call(c,function(t){t.className=t.className.split(h+e.activeListItemClass).join("")});var a=document.querySelector(e.tocSelector).querySelector("."+e.linkClass+".node-name--"+o.nodeName+'[href="#'+o.id+'"]');-1===a.className.indexOf(e.activeLinkClass)&&(a.className+=h+e.activeLinkClass);var p=a.parentNode;p&&-1===p.className.indexOf(e.activeListItemClass)&&(p.className+=h+e.activeListItemClass);var C=document.querySelector(e.tocSelector).querySelectorAll("."+e.listClass+"."+e.collapsibleClass);u.call(C,function(t){-1===t.className.indexOf(e.isCollapsedClass)&&(t.className+=h+e.isCollapsedClass)}),a.nextSibling&&-1!==a.nextSibling.className.indexOf(e.isCollapsedClass)&&(a.nextSibling.className=a.nextSibling.className.split(h+e.isCollapsedClass).join("")),r(a.parentNode.parentNode)}}function r(t){return-1!==t.className.indexOf(e.collapsibleClass)&&-1!==t.className.indexOf(e.isCollapsedClass)?(t.className=t.className.split(h+e.isCollapsedClass).join(""),r(t.parentNode.parentNode)):t}function c(t){var n=t.target||t.srcElement;"string"==typeof n.className&&-1!==n.className.indexOf(e.linkClass)&&(m=!1)}function a(){m=!0}var u=[].forEach,d=[].some,f=document.body,m=!0,h=" ";return{enableTocAnimation:a,disableTocAnimation:c,render:n,updateToc:s}}},function(e,t){e.exports=function(e){function t(e){return e[e.length-1]}function n(e){return+e.nodeName.split("H").join("")}function o(t){var o={id:t.id,children:[],nodeName:t.nodeName,headingLevel:n(t),textContent:t.textContent.trim()};return e.includeHtml&&(o.childNodes=t.childNodes),o}function l(l,i){for(var s=o(l),r=n(l),c=i,a=t(c),u=a?a.headingLevel:0,d=r-u;d>0;)a=t(c),a&&void 0!==a.children&&(c=a.children),d--;return r>=e.collapseDepth&&(s.isCollapsed=!0),c.push(s),c}function i(t,n){var o=n;e.ignoreSelector&&(o=n.split(",").map(function(t){return t.trim()+":not("+e.ignoreSelector+")"}));try{return document.querySelector(t).querySelectorAll(o)}catch(e){return console.warn("Element not found: "+t),null}}function s(e){return r.call(e,function(e,t){return l(o(t),e.nest),e},{nest:[]})}var r=[].reduce;return{nestHeadingsArray:s,selectHeadings:i}}},function(e,t){function n(e){function t(e){return"a"===e.tagName.toLowerCase()&&(e.hash.length>0||"#"===e.href.charAt(e.href.length-1))&&(n(e.href)===s||n(e.href)+"#"===s)}function n(e){return e.slice(0,e.lastIndexOf("#"))}function l(e){var t=document.getElementById(e.substring(1));t&&(/^(?:a|select|input|button|textarea)$/i.test(t.tagName)||(t.tabIndex=-1),t.focus())}!function(){document.documentElement.style}();var i=e.duration,s=location.hash?n(location.href):location.href;!function(){function n(n){!t(n.target)||n.target.className.indexOf("no-smooth-scroll")>-1||"#"===n.target.href.charAt(n.target.href.length-2)&&"!"===n.target.href.charAt(n.target.href.length-1)||-1===n.target.className.indexOf(e.linkClass)||o(n.target.hash,{duration:i,callback:function(){l(n.target.hash)}})}document.body.addEventListener("click",n,!1)}()}function o(e,t){function n(e){s=e-i,window.scrollTo(0,c.easing(s,r,u,d)),s + + + + + + + + + + + + + + DEBUG + + + ${CONSOLE_LOG_PATTERN} + utf8 + + + + + + ${LOG_FILE} + + ${LOG_FILE}.%d{yyyy-MM-dd}.gz + 7 + + + ${CONSOLE_LOG_PATTERN} + utf8 + + + + + ${LOG_FILE}.json + + ${LOG_FILE}.json.%d{yyyy-MM-dd}.gz + 7 + + + + + UTC + + + + { + "timestamp": "@timestamp", + "severity": "%level", + "service": "${springAppName:-}", + "trace": "%X{traceId:-}", + "span": "%X{spanId:-}", + "pid": "${PID:-}", + "thread": "%thread", + "class": "%logger{40}", + "rest": "%message" + } + + + + + + + + + + + + diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/overview.html b/spring-cloud-sleuth/3.0.0.M1/reference/html/overview.html new file mode 100644 index 00000000..1373e4cc --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/overview.html @@ -0,0 +1,170 @@ + + + + + + + +Overview + + + + + + + + + + +
+
+

Overview

+
+
+

Spring Cloud Sleuth provides Spring Boot auto-configuration for distributed +tracing. Underneath, Spring Cloud Sleuth is a layer over a Tracer library named +Brave.

+
+
+

Sleuth configures everything you need to get started. This includes where trace +data (spans) are reported to, how many traces to keep (sampling), if remote +fields (baggage) are sent, and which libraries are traced.

+
+
+

We maintain an example app where two Spring Boot services collaborate on an +HTTP request. Sleuth configures these apps, so that timing of these requests are +recorded into Zipkin, a distributed tracing system. Tracing +UIs visualize latency, such as time in one service vs waiting for other +services.

+
+
+

Here’s an example of what it looks like:

+
+
+
+Zipkin Trace +
+
+
+

The source repository of this +example includes demonstrations of many things, including WebFlux and messaging. +Most features require only a property or dependency change to work. These +snippets showcase the value of Spring Cloud Sleuth: Through auto-configuration, +Sleuth make getting started with distributed tracing easy!

+
+
+

To keep things simple, the same example is used throughout documentation using +basic HTTP communication.

+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/sagan-boot.html b/spring-cloud-sleuth/3.0.0.M1/reference/html/sagan-boot.html new file mode 100644 index 00000000..0725903e --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/sagan-boot.html @@ -0,0 +1,219 @@ + + + + + + + +Untitled + + + + + + + + + + +
+
+
+
+

Add Sleuth to your classpath:

+
+
+

Maven

+
+
+
+
<dependencyManagement>
+    <dependencies>
+        <dependency>
+            <groupId>org.springframework.cloud</groupId>
+            <artifactId>spring-cloud-sleuth</artifactId>
+            <version>${spring-cloud-sleuth.version}</version>
+            <type>pom</type>
+            <scope>import</scope>
+        </dependency>
+    </dependencies>
+</dependencyManagement>
+<dependencies>
+    <dependency>
+        <groupId>org.springframework.cloud</groupId>
+        <artifactId>spring-cloud-starter-sleuth</artifactId>
+    </dependency>
+</dependencies>
+
+
+
+

Gradle

+
+
+
+
buildscript {
+    dependencies {
+        classpath "io.spring.gradle:dependency-management-plugin:0.5.2.RELEASE"
+    }
+}
+
+apply plugin: "io.spring.dependency-management"
+
+dependencyManagement {
+     imports {
+          mavenBom "org.springframework.cloud:spring-cloud-sleuth:${springCloudSleuthVersion}"
+     }
+}
+dependencies {
+    compile 'org.springframework.cloud:spring-cloud-starter-sleuth'
+}
+
+
+
+

As long as Spring Cloud Sleuth is on the classpath any Spring Boot application will generate trace data:

+
+
+
+
@SpringBootApplication
+@RestController
+public class Application {
+
+  private static Logger log = LoggerFactory.getLogger(DemoController.class);
+
+  @RequestMapping("/")
+  public String home() {
+    log.info("Handling home");
+    return "Hello World";
+  }
+
+  public static void main(String[] args) {
+    SpringApplication.run(Application.class, args);
+  }
+
+}
+
+
+
+

Run this app and then hit the home page. You will see traceId and spanId populated in the logs. +If this app calls out to another one (e.g. with RestTemplate) it will send the trace data in +headers and if the receiver is another Sleuth app you will see the trace continue there.

+
+
+
    +
  • +

    Instead of logging the request in the handler explicitly, you could set logging.level.org.springframework.web.servlet.DispatcherServlet=DEBUG

    +
  • +
  • +

    Sleuth defaults to a rate limited sampler. That means that it will sample up to 1000 transactions per second.

    +
  • +
  • +

    Set spring.application.name=bar (for instance) to see the service name as well as the trace and span ids.

    +
  • +
+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/sagan-index.html b/spring-cloud-sleuth/3.0.0.M1/reference/html/sagan-index.html new file mode 100644 index 00000000..354aef01 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/sagan-index.html @@ -0,0 +1,163 @@ + + + + + + + +Features + + + + + + + + + + +
+
+
+
+

Spring Cloud Sleuth provides Spring Boot auto-configuration for distributed +tracing.

+
+
+
+
+

Features

+
+
+

Sleuth configures everything you need to get started. This includes where trace +data (spans) are reported to, how many traces to keep (sampling), if remote +fields (baggage) are sent, and which libraries are traced.

+
+
+

Specifically, Spring Cloud Sleuth…​

+
+
+
    +
  • +

    Adds trace and span ids to the Slf4J MDC, so you can extract all the logs from a given trace or span in a log aggregator.

    +
  • +
  • +

    Instruments common ingress and egress points from Spring applications (servlet filter, rest template, scheduled actions, message channels, feign client).

    +
  • +
  • +

    If spring-cloud-sleuth-zipkin is available then the app will generate and report Zipkin-compatible traces via HTTP. By default it sends them to a Zipkin collector service on localhost (port 9411). Configure the location of the service using spring.zipkin.baseUrl.

    +
  • +
+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/setup.html b/spring-cloud-sleuth/3.0.0.M1/reference/html/setup.html new file mode 100644 index 00000000..437c7ce4 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/setup.html @@ -0,0 +1,462 @@ + + + + + + + +Adding Sleuth to your Project + + + + + + + + + + +
+
+

Adding Sleuth to your Project

+
+
+

This section addresses how to add Sleuth to your project with either Maven or Gradle.

+
+
+ + + + + +
+ + +To ensure that your application name is properly displayed in Zipkin, set the spring.application.name property in bootstrap.yml. +
+
+
+

Sleuth with Zipkin via HTTP

+
+

If you want both Sleuth and Zipkin, add the spring-cloud-starter-zipkin dependency.

+
+
+

The following example shows how to do so for Maven:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-zipkin</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin.
+
+
+

The following example shows how to do so for Gradle:

+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies { (2)
+    compile "org.springframework.cloud:spring-cloud-starter-zipkin"
+}
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin.
+
+
+
+

Sleuth with Zipkin over RabbitMQ or Kafka

+
+

If you want to use RabbitMQ or Kafka instead of HTTP, add the spring-rabbit or spring-kafka dependency. +The default destination name is zipkin.

+
+
+

If using Kafka, you must set the property spring.zipkin.sender.type property accordingly:

+
+
+
+
spring.zipkin.sender.type: kafka
+
+
+
+ + + + + +
+ + +spring-cloud-sleuth-stream is deprecated and incompatible with these destinations. +
+
+
+

If you want Sleuth over RabbitMQ, add the spring-cloud-starter-zipkin and spring-rabbit +dependencies.

+
+
+

The following example shows how to do so for Gradle:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-zipkin</artifactId>
+</dependency>
+<dependency> (3)
+    <groupId>org.springframework.amqp</groupId>
+    <artifactId>spring-rabbit</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin. That way, all nested dependencies get downloaded.
3To automatically configure RabbitMQ, add the spring-rabbit dependency.
+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies {
+    compile "org.springframework.cloud:spring-cloud-starter-zipkin" (2)
+    compile "org.springframework.amqp:spring-rabbit" (3)
+}
+
+
+
+ + + + + + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin. That way, all nested dependencies get downloaded.
3To automatically configure RabbitMQ, add the spring-rabbit dependency.
+
+
+
+

Overriding the auto-configuration of Zipkin

+
+

Spring Cloud Sleuth supports sending traces to multiple tracing systems as of version 2.1.0. +In order to get this to work, every tracing system needs to have a Reporter<Span> and Sender. +If you want to override the provided beans you need to give them a specific name. +To do this you can use respectively ZipkinAutoConfiguration.REPORTER_BEAN_NAME and ZipkinAutoConfiguration.SENDER_BEAN_NAME.

+
+
+
+
@Configuration
+protected static class MyConfig {
+
+	@Bean(ZipkinAutoConfiguration.REPORTER_BEAN_NAME)
+	Reporter<zipkin2.Span> myReporter() {
+		return AsyncReporter.create(mySender());
+	}
+
+	@Bean(ZipkinAutoConfiguration.SENDER_BEAN_NAME)
+	MySender mySender() {
+		return new MySender();
+	}
+
+	static class MySender extends Sender {
+
+		private boolean spanSent = false;
+
+		boolean isSpanSent() {
+			return this.spanSent;
+		}
+
+		@Override
+		public Encoding encoding() {
+			return Encoding.JSON;
+		}
+
+		@Override
+		public int messageMaxBytes() {
+			return Integer.MAX_VALUE;
+		}
+
+		@Override
+		public int messageSizeInBytes(List<byte[]> encodedSpans) {
+			return encoding().listSizeInBytes(encodedSpans);
+		}
+
+		@Override
+		public Call<Void> sendSpans(List<byte[]> encodedSpans) {
+			this.spanSent = true;
+			return Call.create(null);
+		}
+
+	}
+
+}
+
+
+
+
+

Only Sleuth (log correlation)

+
+

If you want to use only Spring Cloud Sleuth without the Zipkin integration, add the spring-cloud-starter-sleuth module to your project.

+
+
+

The following example shows how to add Sleuth with Maven:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-sleuth</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-sleuth.
+
+
+

The following example shows how to add Sleuth with Gradle:

+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies { (2)
+    compile "org.springframework.cloud:spring-cloud-starter-sleuth"
+}
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-sleuth.
+
+
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/html/spring-cloud-sleuth.html b/spring-cloud-sleuth/3.0.0.M1/reference/html/spring-cloud-sleuth.html new file mode 100644 index 00000000..71ec6332 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/html/spring-cloud-sleuth.html @@ -0,0 +1,2785 @@ + + + + + + + + +Spring Cloud Sleuth + + + + + + + + + + +
+
+
+
+

3.0.0.M1

+
+
+
+
+

1. Overview

+
+
+

Spring Cloud Sleuth provides Spring Boot auto-configuration for distributed +tracing. Underneath, Spring Cloud Sleuth is a layer over a Tracer library named +Brave.

+
+
+

Sleuth configures everything you need to get started. This includes where trace +data (spans) are reported to, how many traces to keep (sampling), if remote +fields (baggage) are sent, and which libraries are traced.

+
+
+

We maintain an example app where two Spring Boot services collaborate on an +HTTP request. Sleuth configures these apps, so that timing of these requests are +recorded into Zipkin, a distributed tracing system. Tracing +UIs visualize latency, such as time in one service vs waiting for other +services.

+
+
+

Here’s an example of what it looks like:

+
+
+
+Zipkin Trace +
+
+
+

The source repository of this +example includes demonstrations of many things, including WebFlux and messaging. +Most features require only a property or dependency change to work. These +snippets showcase the value of Spring Cloud Sleuth: Through auto-configuration, +Sleuth make getting started with distributed tracing easy!

+
+
+

To keep things simple, the same example is used throughout documentation using +basic HTTP communication.

+
+
+
+
+

2. Features

+
+
+

Sleuth sets up instrumentation not only to track timing, but also to catch +errors so that they can be analyzed or correlated with logs. This works the +same way regardless of if the error came from a common instrumented library, +such as RestTemplate, or your own code annotated with @NewSpan or similar.

+
+
+

Below, we’ll use the word Zipkin to describe the tracing system, and include +Zipkin screenshots. However, most services accepting Zipkin format +have similar base features. Sleuth can also be configured to send data in other +formats, something detailed later.

+
+
+

2.1. Contextualizing errors

+
+

Without distributed tracing, it can be difficult to understand the impact of a +an exception. For example, it can be hard to know if a specific request caused +the caller to fail or not.

+
+
+

Zipkin reduces time in triage by contextualizing errors and delays.

+
+
+

Requests colored red in the search screen failed:

+
+
+
+Error Traces +
+
+
+

If you then click on one of the traces, you can understand if the failure +happened before the request hit another service or not:

+
+
+
+Error Traces Info propagation +
+
+
+

For example, the above error happened in the "backend" service, and caused the +"frontend" service to fail.

+
+
+
+

2.2. Log correlation

+
+

Sleuth configures the logging context with variables including the service name +(%{spring.zipkin.service.name}) and the trace ID (%{traceId}). These help +you connect logs with distributed traces and allow you choice in what tools you +use to troubleshoot your services.

+
+
+

Once you find any log with an error, you can look for the trace ID in the +message. Paste that into Zipkin to visualize the entire trace, regardless of +how many services the first request ended up hitting.

+
+
+
+
backend.log:  2020-04-09 17:45:40.516 ERROR [backend,5e8eeec48b08e26882aba313eb08f0a4,dcc1df555b5777b3,true] 97203 --- [nio-9000-exec-1] o.s.c.s.i.web.ExceptionLoggingFilter     : Uncaught exception thrown
+frontend.log:2020-04-09 17:45:40.574 ERROR [frontend,5e8eeec48b08e26882aba313eb08f0a4,82aba313eb08f0a4,true] 97192 --- [nio-8081-exec-2] o.s.c.s.i.web.ExceptionLoggingFilter     : Uncaught exception thrown
+
+
+
+

Above, you’ll notice the trace ID is 5e8eeec48b08e26882aba313eb08f0a4, for +example. This log configuration was automatically setup by Sleuth.

+
+
+

If you use a log aggregating tool (such as Kibana, Splunk, and others), you can order the events that took place. +An example from Kibana would resemble the following image:

+
+
+
+Log correlation with Kibana +
+
+
+

If you want to use Logstash, the following listing shows the Grok pattern for Logstash:

+
+
+
+
filter {
+  # pattern matching logback pattern
+  grok {
+    match => { "message" => "%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:severity}\s+\[%{DATA:service},%{DATA:trace},%{DATA:span}\]\s+%{DATA:pid}\s+---\s+\[%{DATA:thread}\]\s+%{DATA:class}\s+:\s+%{GREEDYDATA:rest}" }
+  }
+  date {
+    match => ["timestamp", "ISO8601"]
+  }
+  mutate {
+    remove_field => ["timestamp"]
+  }
+}
+
+
+
+ + + + + +
+ + +If you want to use Grok together with the logs from Cloud Foundry, you have to use the following pattern: +
+
+
+
+
filter {
+  # pattern matching logback pattern
+  grok {
+    match => { "message" => "(?m)OUT\s+%{TIMESTAMP_ISO8601:timestamp}\s+%{LOGLEVEL:severity}\s+\[%{DATA:service},%{DATA:trace},%{DATA:span}\]\s+%{DATA:pid}\s+---\s+\[%{DATA:thread}\]\s+%{DATA:class}\s+:\s+%{GREEDYDATA:rest}" }
+  }
+  date {
+    match => ["timestamp", "ISO8601"]
+  }
+  mutate {
+    remove_field => ["timestamp"]
+  }
+}
+
+
+
+

2.2.1. JSON Logback with Logstash

+
+

Often, you do not want to store your logs in a text file but in a JSON file that Logstash can immediately pick. +To do so, you have to do the following (for readability, we pass the dependencies in the groupId:artifactId:version notation).

+
+
+

Dependencies Setup

+
+
+
    +
  1. +

    Ensure that Logback is on the classpath (ch.qos.logback:logback-core).

    +
  2. +
  3. +

    Add Logstash Logback encode. For example, to use version 4.6, add net.logstash.logback:logstash-logback-encoder:4.6.

    +
  4. +
+
+
+

Logback Setup

+
+
+

Consider the following example of a Logback configuration file (logback-spring.xml).

+
+
+
+
<?xml version="1.0" encoding="UTF-8"?>
+<configuration>
+    <include resource="org/springframework/boot/logging/logback/defaults.xml"/>
+    <springProperty scope="context" name="springAppName" source="spring.application.name"/>
+    <!-- Example for logging into the build folder of your project -->
+    <property name="LOG_FILE" value="${BUILD_FOLDER:-build}/${springAppName}"/>
+
+    <!-- You can override this to have a custom pattern -->
+    <property name="CONSOLE_LOG_PATTERN"
+              value="%clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}"/>
+
+    <!-- Appender to log to console -->
+    <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
+        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+            <!-- Minimum logging level to be presented in the console logs-->
+            <level>DEBUG</level>
+        </filter>
+        <encoder>
+            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
+            <charset>utf8</charset>
+        </encoder>
+    </appender>
+
+    <!-- Appender to log to file -->
+    <appender name="flatfile" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${LOG_FILE}</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${LOG_FILE}.%d{yyyy-MM-dd}.gz</fileNamePattern>
+            <maxHistory>7</maxHistory>
+        </rollingPolicy>
+        <encoder>
+            <pattern>${CONSOLE_LOG_PATTERN}</pattern>
+            <charset>utf8</charset>
+        </encoder>
+    </appender>
+    <!-- Appender to log to file in a JSON format -->
+    <appender name="logstash" class="ch.qos.logback.core.rolling.RollingFileAppender">
+        <file>${LOG_FILE}.json</file>
+        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
+            <fileNamePattern>${LOG_FILE}.json.%d{yyyy-MM-dd}.gz</fileNamePattern>
+            <maxHistory>7</maxHistory>
+        </rollingPolicy>
+        <encoder class="net.logstash.logback.encoder.LoggingEventCompositeJsonEncoder">
+            <providers>
+                <timestamp>
+                    <timeZone>UTC</timeZone>
+                </timestamp>
+                <pattern>
+                    <pattern>
+                        {
+                        "timestamp": "@timestamp",
+                        "severity": "%level",
+                        "service": "${springAppName:-}",
+                        "trace": "%X{traceId:-}",
+                        "span": "%X{spanId:-}",
+                        "pid": "${PID:-}",
+                        "thread": "%thread",
+                        "class": "%logger{40}",
+                        "rest": "%message"
+                        }
+                    </pattern>
+                </pattern>
+            </providers>
+        </encoder>
+    </appender>
+    <root level="INFO">
+        <appender-ref ref="console"/>
+        <!-- uncomment this to have also JSON logs -->
+        <!--<appender-ref ref="logstash"/>-->
+        <!--<appender-ref ref="flatfile"/>-->
+    </root>
+</configuration>
+
+
+
+

That Logback configuration file:

+
+
+
    +
  • +

    Logs information from the application in a JSON format to a build/${spring.application.name}.json file.

    +
  • +
  • +

    Has commented out two additional appenders: console and standard log file.

    +
  • +
  • +

    Has the same logging pattern as the one presented in the previous section.

    +
  • +
+
+
+ + + + + +
+ + +If you use a custom logback-spring.xml, you must pass the spring.application.name in the bootstrap rather than the application property file. +Otherwise, your custom logback file does not properly read the property. +
+
+
+
+
+

2.3. Service Dependency Graph

+
+

When you consider distributed tracing tracks requests, it makes sense that +trace data can paint a picture of your architecture.

+
+
+

Zipkin includes a tool to build service dependency diagrams from traces, +including the count of calls and how many errors exist.

+
+
+

The example application will make a simple diagram like this, but your real +environment diagram may be more complex. +image::https://raw.githubusercontent.com/spring-cloud/spring-cloud-sleuth/master/docs/src/main/asciidoc/images/zipkin-depedendencies.png[Zipkin Dependencies]

+
+
+

Note: Production environments will generate a lot of data. You will likely +need to run a separate service to aggregate the dependency graph. You can learn +more here.

+
+
+
+

2.4. Request scoped properties (Baggage)

+
+

Distributed tracing works by propagating fields inside and across services that +connect the trace together: traceId and spanId notably. The context that holds +these fields can optionally push other fields that need to be consistent +regardless of many services are touched. The simple name for these extra fields +is "Baggage".

+
+
+

Sleuth allows you to define which baggage are permitted to exist in the trace +context, including what header names are used.

+
+
+

The following example shows setting baggage values:

+
+
+
+
Span initialSpan = this.tracer.nextSpan().name("span").start();
+BUSINESS_PROCESS.updateValue(initialSpan.context(), "ALM");
+COUNTRY_CODE.updateValue(initialSpan.context(), "FO");
+
+
+
+ + + + + +
+ + +There is currently no limitation of the count or size of baggage +items. Keep in mind that too many can decrease system throughput or increase +RPC latency. In extreme cases, too much baggage can crash the application, due +to exceeding transport-level message or header capacity. +
+
+
+

2.4.1. Baggage versus Tags

+
+

Like trace IDs, Baggage is attached to messages or requests, usually as +headers. Tags are key value pairs sent in a Span to Zipkin. Baggage values are +not added spans by default, which means you can’t search based on Baggage +unless you opt-in.

+
+
+

To make baggage also tags, use the property spring.sleuth.baggage.tag-fields +like so:

+
+
+
+
spring:
+  sleuth:
+    baggage:
+      remoteFields:
+        - country-code
+        - x-vcap-request-id
+      tagFields:
+        - country-code
+
+
+
+
+
+
+
+

3. Adding Sleuth to your Project

+
+
+

This section addresses how to add Sleuth to your project with either Maven or Gradle.

+
+
+ + + + + +
+ + +To ensure that your application name is properly displayed in Zipkin, set the spring.application.name property in bootstrap.yml. +
+
+
+

3.1. Sleuth with Zipkin via HTTP

+
+

If you want both Sleuth and Zipkin, add the spring-cloud-starter-zipkin dependency.

+
+
+

The following example shows how to do so for Maven:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-zipkin</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin.
+
+
+

The following example shows how to do so for Gradle:

+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies { (2)
+    compile "org.springframework.cloud:spring-cloud-starter-zipkin"
+}
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin.
+
+
+
+

3.2. Sleuth with Zipkin over RabbitMQ or Kafka

+
+

If you want to use RabbitMQ or Kafka instead of HTTP, add the spring-rabbit or spring-kafka dependency. +The default destination name is zipkin.

+
+
+

If using Kafka, you must set the property spring.zipkin.sender.type property accordingly:

+
+
+
+
spring.zipkin.sender.type: kafka
+
+
+
+ + + + + +
+ + +spring-cloud-sleuth-stream is deprecated and incompatible with these destinations. +
+
+
+

If you want Sleuth over RabbitMQ, add the spring-cloud-starter-zipkin and spring-rabbit +dependencies.

+
+
+

The following example shows how to do so for Gradle:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-zipkin</artifactId>
+</dependency>
+<dependency> (3)
+    <groupId>org.springframework.amqp</groupId>
+    <artifactId>spring-rabbit</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin. That way, all nested dependencies get downloaded.
3To automatically configure RabbitMQ, add the spring-rabbit dependency.
+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies {
+    compile "org.springframework.cloud:spring-cloud-starter-zipkin" (2)
+    compile "org.springframework.amqp:spring-rabbit" (3)
+}
+
+
+
+ + + + + + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-zipkin. That way, all nested dependencies get downloaded.
3To automatically configure RabbitMQ, add the spring-rabbit dependency.
+
+
+
+

3.3. Overriding the auto-configuration of Zipkin

+
+

Spring Cloud Sleuth supports sending traces to multiple tracing systems as of version 2.1.0. +In order to get this to work, every tracing system needs to have a Reporter<Span> and Sender. +If you want to override the provided beans you need to give them a specific name. +To do this you can use respectively ZipkinAutoConfiguration.REPORTER_BEAN_NAME and ZipkinAutoConfiguration.SENDER_BEAN_NAME.

+
+
+
+
@Configuration
+protected static class MyConfig {
+
+    @Bean(ZipkinAutoConfiguration.REPORTER_BEAN_NAME)
+    Reporter<zipkin2.Span> myReporter() {
+        return AsyncReporter.create(mySender());
+    }
+
+    @Bean(ZipkinAutoConfiguration.SENDER_BEAN_NAME)
+    MySender mySender() {
+        return new MySender();
+    }
+
+    static class MySender extends Sender {
+
+        private boolean spanSent = false;
+
+        boolean isSpanSent() {
+            return this.spanSent;
+        }
+
+        @Override
+        public Encoding encoding() {
+            return Encoding.JSON;
+        }
+
+        @Override
+        public int messageMaxBytes() {
+            return Integer.MAX_VALUE;
+        }
+
+        @Override
+        public int messageSizeInBytes(List<byte[]> encodedSpans) {
+            return encoding().listSizeInBytes(encodedSpans);
+        }
+
+        @Override
+        public Call<Void> sendSpans(List<byte[]> encodedSpans) {
+            this.spanSent = true;
+            return Call.create(null);
+        }
+
+    }
+
+}
+
+
+
+
+

3.4. Only Sleuth (log correlation)

+
+

If you want to use only Spring Cloud Sleuth without the Zipkin integration, add the spring-cloud-starter-sleuth module to your project.

+
+
+

The following example shows how to add Sleuth with Maven:

+
+
+
Maven
+
+
<dependencyManagement> (1)
+      <dependencies>
+          <dependency>
+              <groupId>org.springframework.cloud</groupId>
+              <artifactId>spring-cloud-dependencies</artifactId>
+              <version>${release.train.version}</version>
+              <type>pom</type>
+              <scope>import</scope>
+          </dependency>
+      </dependencies>
+</dependencyManagement>
+
+<dependency> (2)
+    <groupId>org.springframework.cloud</groupId>
+    <artifactId>spring-cloud-starter-sleuth</artifactId>
+</dependency>
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-sleuth.
+
+
+

The following example shows how to add Sleuth with Gradle:

+
+
+
Gradle
+
+
dependencyManagement { (1)
+    imports {
+        mavenBom "org.springframework.cloud:spring-cloud-dependencies:${releaseTrainVersion}"
+    }
+}
+
+dependencies { (2)
+    compile "org.springframework.cloud:spring-cloud-starter-sleuth"
+}
+
+
+
+ + + + + + + + + +
1We recommend that you add the dependency management through the Spring BOM so that you need not manage versions yourself.
2Add the dependency to spring-cloud-starter-sleuth.
+
+
+
+
+
+

4. How Sleuth works

+
+
+

Spring Cloud Sleuth is a layer over Brave.

+
+
+

Brave is a distributed tracing instrumentation library. Brave typically +intercepts production requests to gather timing data, correlate and propagate +trace contexts.

+
+
+

Trace data, also called spans, are typically reported to Zipkin. +Zipkin is an Open Source tracing system, which includes a UI and various +collectors, such as HTTP and messaging.

+
+
+

Many Open Source and commercial products accept Zipkin format. +Some options are documented here, +but many are not. If you cannot use Zipkin and your product isn’t listed, clarify +with your support representative and have them update that page. In many cases, +products already support Zipkin format, they just don’t document it.

+
+
+

Traces connect from service to service using header propagation. The default +format is B3. Similar to data +formats, you can configure alternate header formats also, provided trace and +span IDs are compatible with B3. Most notably, this means the trace ID and span +IDs are lower-case hex, not UUIDs. Besides trace identifiers, other properties +(Baggage) can also be passed along with the request. Remote Baggage must be +predefined, but is flexible otherwise.

+
+
+

Sleuth configures everything you need to get started with tracing. Sleuth +configures where trace data (spans) are reported to, how many traces to keep +(sampling), if remote fields (baggage) are sent, and which libraries are traced. +Sleuth also adds annotation based tracing features and some instrumentation not +available otherwise, such as Reactor. If cannot find the configuration you are +looking for in the documentation, ask Gitter +before assuming something cannot be done.

+
+
+

4.1. Brave Basics

+
+

Most instrumentation work is done for you by default. Sleuth provides beans to +allow you to change what’s traced, and it even provides annotations to avoid +using tracing libraries! All of this is explained later in this document.

+
+
+

That said, you might want to know more about how things work underneath. Here +are some pointers.

+
+
+

Here are the most core types you might use: +* SpanCustomizer - to change the span currently in progress +* Tracer - to get a start new spans ad-hoc

+
+
+

Here are the most relevant links from the OpenZipkin Brave project: +* [Brave’s core library](github.com/openzipkin/brave/tree/master/brave) +* [Baggage (propagated fields)](github.com/openzipkin/brave/tree/master/brave#baggage) +* [HTTP tracing](github.com/openzipkin/brave/tree/master/instrumentation/http)

+
+
+
+
+
+

5. Sampling

+
+
+

By default Spring Cloud Sleuth doesn’t sample spans. +That means that traces appear in logs but not in any remote store. +For testing the default is often enough, and it probably is all you need if you use only the logs (for example, with an ELK aggregator). +If you export span data to Zipkin, there is also an Sampler.ALWAYS_SAMPLE setting that exports everything, RateLimitingSampler setting that samples X transactions per second (defaults to 1000) or ProbabilityBasedSampler setting that samples a fixed fraction of spans.

+
+
+ + + + + +
+ + +The RateLimitingSampler is the default if you use spring-cloud-sleuth-zipkin. +You can configure the rate limit by setting spring.sleuth.sampler.rate. +
+
+
+

A sampler can be installed by creating a bean definition, as shown in the following example:

+
+
+
+
@Bean
+public Sampler defaultSampler() {
+    return Sampler.ALWAYS_SAMPLE;
+}
+
+
+
+ + + + + +
+ + +You can set the HTTP header b3 to 1, or, when doing messaging, you can set the spanFlags header to 1. +Doing so forces the current request to be sampled regardless of configuration. +
+
+
+

In order to use the rate-limited sampler set the spring.sleuth.sampler.rate property to choose an amount of traces to accept on a per-second interval. The minimum number is 0 and the max is 2,147,483,647 (max int).

+
+
+
+
+

6. Baggage

+
+
+

Baggage are fields that are propagated with the trace, optionally out of process. You can use +properties to define fields that have no special configuration such as name mapping:

+
+
+
    +
  • +

    spring.sleuth.remote-fields is a list of header names to accept and propagate to remote services.

    +
  • +
  • +

    spring.sleuth.local-fields is a list of names to propagate locally

    +
  • +
+
+
+

No prefixing applies with these keys. What you set is literally what is used.

+
+
+

A name set in either of these properties will result in a BaggageField of the same name.

+
+
+

In order to automatically set the baggage values to Slf4j’s MDC, you have to set +the spring.sleuth.baggage.correlation-fields property with a list of whitelisted +local or remote keys. E.g. spring.sleuth.baggage.correlation-fields=country-code will set the +value of the country-code baggage into MDC.

+
+
+ + + + + +
+ + +Remember that adding entries to MDC can drastically decrease the performance of your application! +
+
+
+

If you want to add the baggage entries as tags, to make it possible to search for spans via the baggage entries, you can set the value of +spring.sleuth.baggage.tag-fields with a list of whitelisted baggage keys. To disable the feature you have to pass the spring.sleuth.propagation.tag.enabled=false property.

+
+
+

6.1. Java configuration

+
+

If you need to do anything more advanced than above, do not define properties and instead use a +@Bean config for the baggage fields you use. + * BaggagePropagationCustomizer sets up baggage fields + * Add a SingleBaggageField to control header names for a BaggageField. + * CorrelationScopeCustomizer sets up MDC fields + * Add a SingleCorrelationField to change the MDC name of a BaggageField or if updates flush.

+
+
+
+
+
+

7. Instrumentation

+
+
+

Spring Cloud Sleuth automatically instruments all your Spring applications, so you should not have to do anything to activate it. +The instrumentation is added by using a variety of technologies according to the stack that is available. For example, for a servlet web application, we use a Filter, and, for Spring Integration, we use ChannelInterceptors.

+
+
+

You can customize the keys used in span tags. +To limit the volume of span data, an HTTP request is, by default, tagged only with a handful of metadata, such as the status code, the host, and the URL. +You can add request headers by configuring spring.sleuth.keys.http.headers (a list of header names).

+
+
+ + + + + +
+ + +Tags are collected and exported only if there is a Sampler that allows it. By default, there is no such Sampler, to ensure that there is no danger of accidentally collecting too much data without configuring something). +
+
+
+
+
+

8. Span lifecycle

+
+
+

You can do the following operations on the Span by means of brave.Tracer:

+
+
+
    +
  • +

    start: When you start a span, its name is assigned and the start timestamp is recorded.

    +
  • +
  • +

    close: The span gets finished (the end time of the span is recorded) and, if the span is sampled, it is eligible for collection (for example, to Zipkin).

    +
  • +
  • +

    continue: A new instance of span is created. +It is a copy of the one that it continues.

    +
  • +
  • +

    detach: The span does not get stopped or closed. +It only gets removed from the current thread.

    +
  • +
  • +

    create with explicit parent: You can create a new span and set an explicit parent for it.

    +
  • +
+
+
+ + + + + +
+ + +Spring Cloud Sleuth creates an instance of Tracer for you. In order to use it, you can autowire it. +
+
+
+

8.1. Creating and finishing spans

+
+

You can manually create spans by using the Tracer, as shown in the following example:

+
+
+
+
// Start a span. If there was a span present in this thread it will become
+// the `newSpan`'s parent.
+Span newSpan = this.tracer.nextSpan().name("calculateTax");
+try (Tracer.SpanInScope ws = this.tracer.withSpanInScope(newSpan.start())) {
+    // ...
+    // You can tag a span
+    newSpan.tag("taxValue", taxValue);
+    // ...
+    // You can log an event on a span
+    newSpan.annotate("taxCalculated");
+}
+finally {
+    // Once done remember to finish the span. This will allow collecting
+    // the span to send it to Zipkin
+    newSpan.finish();
+}
+
+
+
+

In the preceding example, we could see how to create a new instance of the span. +If there is already a span in this thread, it becomes the parent of the new span.

+
+
+ + + + + +
+ + +Always clean after you create a span. Also, always finish any span that you want to send to Zipkin. +
+
+
+ + + + + +
+ + +If your span contains a name greater than 50 chars, that name is truncated to 50 chars. +Your names have to be explicit and concrete. Big names lead to latency issues and sometimes even exceptions. +
+
+
+
+

8.2. Continuing Spans

+
+

Sometimes, you do not want to create a new span but you want to continue one. An example of such a +situation might be as follows:

+
+
+
    +
  • +

    AOP: If there was already a span created before an aspect was reached, you might not want to create a new span.

    +
  • +
+
+
+

To continue a span, you can use brave.Tracer, as shown in the following example:

+
+
+
+
// let's assume that we're in a thread Y and we've received
+// the `initialSpan` from thread X
+Span continuedSpan = this.tracer.toSpan(newSpan.context());
+try {
+    // ...
+    // You can tag a span
+    continuedSpan.tag("taxValue", taxValue);
+    // ...
+    // You can log an event on a span
+    continuedSpan.annotate("taxCalculated");
+}
+finally {
+    // Once done remember to flush the span. That means that
+    // it will get reported but the span itself is not yet finished
+    continuedSpan.flush();
+}
+
+
+
+
+

8.3. Creating a Span with an explicit Parent

+
+

You might want to start a new span and provide an explicit parent of that span. +Assume that the parent of a span is in one thread and you want to start a new span in another thread. +In Brave, whenever you call nextSpan(), it creates a span in reference to the span that is currently in scope. +You can put the span in scope and then call nextSpan(), as shown in the following example:

+
+
+
+
// let's assume that we're in a thread Y and we've received
+// the `initialSpan` from thread X. `initialSpan` will be the parent
+// of the `newSpan`
+Span newSpan = null;
+try (Tracer.SpanInScope ws = this.tracer.withSpanInScope(initialSpan)) {
+    newSpan = this.tracer.nextSpan().name("calculateCommission");
+    // ...
+    // You can tag a span
+    newSpan.tag("commissionValue", commissionValue);
+    // ...
+    // You can log an event on a span
+    newSpan.annotate("commissionCalculated");
+}
+finally {
+    // Once done remember to finish the span. This will allow collecting
+    // the span to send it to Zipkin. The tags and events set on the
+    // newSpan will not be present on the parent
+    if (newSpan != null) {
+        newSpan.finish();
+    }
+}
+
+
+
+ + + + + +
+ + +After creating such a span, you must finish it. Otherwise it is not reported (for example, to Zipkin). +
+
+
+
+
+
+

9. Naming spans

+
+
+

Picking a span name is not a trivial task. A span name should depict an operation name. +The name should be low cardinality, so it should not include identifiers.

+
+
+

Since there is a lot of instrumentation going on, some span names are artificial:

+
+
+
    +
  • +

    controller-method-name when received by a Controller with a method name of controllerMethodName

    +
  • +
  • +

    async for asynchronous operations done with wrapped Callable and Runnable interfaces.

    +
  • +
  • +

    Methods annotated with @Scheduled return the simple name of the class.

    +
  • +
+
+
+

Fortunately, for asynchronous processing, you can provide explicit naming.

+
+
+

9.1. @SpanName Annotation

+
+

You can name the span explicitly by using the @SpanName annotation, as shown in the following example:

+
+
+
+
@SpanName("calculateTax")
+class TaxCountingRunnable implements Runnable {
+
+    @Override
+    public void run() {
+        // perform logic
+    }
+
+}
+
+
+
+

In this case, when processed in the following manner, the span is named calculateTax:

+
+
+
+
Runnable runnable = new TraceRunnable(this.tracing, spanNamer,
+        new TaxCountingRunnable());
+Future<?> future = executorService.submit(runnable);
+// ... some additional logic ...
+future.get();
+
+
+
+
+

9.2. toString() method

+
+

It is pretty rare to create separate classes for Runnable or Callable. +Typically, one creates an anonymous instance of those classes. +You cannot annotate such classes. +To overcome that limitation, if there is no @SpanName annotation present, we check whether the class has a custom implementation of the toString() method.

+
+
+

Running such code leads to creating a span named calculateTax, as shown in the following example:

+
+
+
+
Runnable runnable = new TraceRunnable(this.tracing, spanNamer, new Runnable() {
+    @Override
+    public void run() {
+        // perform logic
+    }
+
+    @Override
+    public String toString() {
+        return "calculateTax";
+    }
+});
+Future<?> future = executorService.submit(runnable);
+// ... some additional logic ...
+future.get();
+
+
+
+
+
+
+

10. Managing Spans with Annotations

+
+
+

You can manage spans with a variety of annotations.

+
+
+

10.1. Rationale

+
+

There are a number of good reasons to manage spans with annotations, including:

+
+
+
    +
  • +

    API-agnostic means to collaborate with a span. Use of annotations lets users add to a span with no library dependency on a span api. +Doing so lets Sleuth change its core API to create less impact to user code.

    +
  • +
  • +

    Reduced surface area for basic span operations. Without this feature, you must use the span api, which has lifecycle commands that could be used incorrectly. +By only exposing scope, tag, and log functionality, you can collaborate without accidentally breaking span lifecycle.

    +
  • +
  • +

    Collaboration with runtime generated code. With libraries such as Spring Data and Feign, the implementations of interfaces are generated at runtime. +Consequently, span wrapping of objects was tedious. +Now you can provide annotations over interfaces and the arguments of those interfaces.

    +
  • +
+
+
+
+

10.2. Creating New Spans

+
+

If you do not want to create local spans manually, you can use the @NewSpan annotation. +Also, we provide the @SpanTag annotation to add tags in an automated fashion.

+
+
+

Now we can consider some examples of usage.

+
+
+
+
@NewSpan
+void testMethod();
+
+
+
+

Annotating the method without any parameter leads to creating a new span whose name equals the annotated method name.

+
+
+
+
@NewSpan("customNameOnTestMethod4")
+void testMethod4();
+
+
+
+

If you provide the value in the annotation (either directly or by setting the name parameter), the created span has the provided value as the name.

+
+
+
+
// method declaration
+@NewSpan(name = "customNameOnTestMethod5")
+void testMethod5(@SpanTag("testTag") String param);
+
+// and method execution
+this.testBean.testMethod5("test");
+
+
+
+

You can combine both the name and a tag. Let’s focus on the latter. +In this case, the value of the annotated method’s parameter runtime value becomes the value of the tag. +In our sample, the tag key is testTag, and the tag value is test.

+
+
+
+
@NewSpan(name = "customNameOnTestMethod3")
+@Override
+public void testMethod3() {
+}
+
+
+
+

You can place the @NewSpan annotation on both the class and an interface. +If you override the interface’s method and provide a different value for the @NewSpan annotation, the most +concrete one wins (in this case customNameOnTestMethod3 is set).

+
+
+
+

10.3. Continuing Spans

+
+

If you want to add tags and annotations to an existing span, you can use the @ContinueSpan annotation, as shown in the following example:

+
+
+
+
// method declaration
+@ContinueSpan(log = "testMethod11")
+void testMethod11(@SpanTag("testTag11") String param);
+
+// method execution
+this.testBean.testMethod11("test");
+this.testBean.testMethod13();
+
+
+
+

(Note that, in contrast with the @NewSpan annotation ,you can also add logs with the log parameter.)

+
+
+

That way, the span gets continued and:

+
+
+
    +
  • +

    Log entries named testMethod11.before and testMethod11.after are created.

    +
  • +
  • +

    If an exception is thrown, a log entry named testMethod11.afterFailure is also created.

    +
  • +
  • +

    A tag with a key of testTag11 and a value of test is created.

    +
  • +
+
+
+
+

10.4. Advanced Tag Setting

+
+

There are 3 different ways to add tags to a span. All of them are controlled by the SpanTag annotation. +The precedence is as follows:

+
+
+
    +
  1. +

    Try with a bean of TagValueResolver type and a provided name.

    +
  2. +
  3. +

    If the bean name has not been provided, try to evaluate an expression. +We search for a TagValueExpressionResolver bean. +The default implementation uses SPEL expression resolution. +IMPORTANT You can only reference properties from the SPEL expression. Method execution is not allowed due to security constraints.

    +
  4. +
  5. +

    If we do not find any expression to evaluate, return the toString() value of the parameter.

    +
  6. +
+
+
+

10.4.1. Custom extractor

+
+

The value of the tag for the following method is computed by an implementation of TagValueResolver interface. +Its class name has to be passed as the value of the resolver attribute.

+
+
+

Consider the following annotated method:

+
+
+
+
@NewSpan
+public void getAnnotationForTagValueResolver(
+        @SpanTag(key = "test", resolver = TagValueResolver.class) String test) {
+}
+
+
+
+

Now further consider the following TagValueResolver bean implementation:

+
+
+
+
@Bean(name = "myCustomTagValueResolver")
+public TagValueResolver tagValueResolver() {
+    return parameter -> "Value from myCustomTagValueResolver";
+}
+
+
+
+

The two preceding examples lead to setting a tag value equal to Value from myCustomTagValueResolver.

+
+
+
+

10.4.2. Resolving Expressions for a Value

+
+

Consider the following annotated method:

+
+
+
+
@NewSpan
+public void getAnnotationForTagValueExpression(@SpanTag(key = "test",
+        expression = "'hello' + ' characters'") String test) {
+}
+
+
+
+

No custom implementation of a TagValueExpressionResolver leads to evaluation of the SPEL expression, and a tag with a value of 4 characters is set on the span. +If you want to use some other expression resolution mechanism, you can create your own implementation of the bean.

+
+
+
+

10.4.3. Using the toString() method

+
+

Consider the following annotated method:

+
+
+
+
@NewSpan
+public void getAnnotationForArgumentToString(@SpanTag("test") Long param) {
+}
+
+
+
+

Running the preceding method with a value of 15 leads to setting a tag with a String value of "15".

+
+
+
+
+
+
+

11. Customizations

+
+
+

The Tracer object is fully managed by sleuth, so you rarely need to affect it. That said, +Sleuth supports a number of Customizer types, that allow you to configure +anything not already done by Sleuth with auto-configuration or properties.

+
+
+

If you define one of the following as a Bean, Sleuth will invoke it to +customize behaviour:

+
+
+
    +
  • +

    RpcTracingCustomizer - for RPC tagging and sampling policy

    +
  • +
  • +

    HttpTracingCustomizer - for HTTP tagging and sampling policy

    +
  • +
  • +

    MessagingTracingCustomizer - for messaging tagging and sampling policy

    +
  • +
  • +

    CurrentTraceContextCustomizer - to integrate decorators such as correlation.

    +
  • +
  • +

    BaggagePropagationCustomizer - for propagating baggage fields in process and over headers

    +
  • +
  • +

    CorrelationScopeDecoratorCustomizer - for scope decorations such as MDC (logging) field correlation

    +
  • +
+
+
+

11.1. HTTP

+
+

11.1.1. Data Policy

+
+

The default span data policy for HTTP requests is described in Brave: +github.com/openzipkin/brave/tree/master/instrumentation/http#span-data-policy

+
+
+

To add different data to the span, you need to register a bean of type +brave.http.HttpRequestParser or brave.http.HttpResponseParser based on when +the data is collected.

+
+
+

The bean names correspond to the request or response side, and whether it is +a client or server. For example, sleuthHttpClientRequestParser changes what +is collected before a client request is sent to the server.

+
+
+

For your convenience @HttpClientRequestParser, @HttpClientResponseParser +and corresponding server annotations can be used to inject the proper beans +or to reference the bean names via their static String NAME fields.

+
+
+

Here’s an example adding the HTTP url in addition to defaults:

+
+
+
+
@Configuration
+class Config {
+  @Bean(name = { HttpClientRequestParser.NAME, HttpServerRequestParser.NAME })
+  HttpRequestParser sleuthHttpServerRequestParser() {
+      return (req, context, span) -> {
+          HttpRequestParser.DEFAULT.parse(req, context, span);
+          String url = req.url();
+          if (url != null) {
+              span.tag("http.url", url);
+          }
+      };
+  }
+}
+
+
+
+
+

11.1.2. Sampling

+
+

If client /server sampling is required, just register a bean of type +brave.sampler.SamplerFunction<HttpRequest> and name the bean +sleuthHttpClientSampler for client sampler and sleuthHttpServerSampler +for server sampler.

+
+
+

For your convenience the @HttpClientSampler and @HttpServerSampler +annotations can be used to inject the proper beans or to reference the bean +names via their static String NAME fields.

+
+
+

Check out Brave’s code to see an example of how to make a path-based sampler +github.com/openzipkin/brave/tree/master/instrumentation/http#sampling-policy

+
+
+

If you want to completely rewrite the HttpTracing bean you can use the SkipPatternProvider +interface to retrieve the URL Pattern for spans that should be not sampled. Below you can see +an example of usage of SkipPatternProvider inside a server side, Sampler<HttpRequest>.

+
+
+
+
@Configuration
+class Config {
+  @Bean(name = HttpServerSampler.NAME)
+  SamplerFunction<HttpRequest> myHttpSampler(SkipPatternProvider provider) {
+      Pattern pattern = provider.skipPattern();
+      return request -> {
+          String url = request.path();
+          boolean shouldSkip = pattern.matcher(url).matches();
+          if (shouldSkip) {
+              return false;
+          }
+          return null;
+      };
+  }
+}
+
+
+
+
+
+

11.2. TracingFilter

+
+

You can also modify the behavior of the TracingFilter, which is the component that is responsible for processing the input HTTP request and adding tags basing on the HTTP response. +You can customize the tags or modify the response headers by registering your own instance of the TracingFilter bean.

+
+
+

In the following example, we register the TracingFilter bean, add the ZIPKIN-TRACE-ID response header containing the current Span’s trace id, and add a tag with key custom and a value tag to the span.

+
+
+
+
@Component
+@Order(TraceWebServletAutoConfiguration.TRACING_FILTER_ORDER + 1)
+class MyFilter extends GenericFilterBean {
+
+    private final Tracer tracer;
+
+    MyFilter(Tracer tracer) {
+        this.tracer = tracer;
+    }
+
+    @Override
+    public void doFilter(ServletRequest request, ServletResponse response,
+            FilterChain chain) throws IOException, ServletException {
+        Span currentSpan = this.tracer.currentSpan();
+        if (currentSpan == null) {
+            chain.doFilter(request, response);
+            return;
+        }
+        // for readability we're returning trace id in a hex form
+        ((HttpServletResponse) response).addHeader("ZIPKIN-TRACE-ID",
+                currentSpan.context().traceIdString());
+        // we can also add some custom tags
+        currentSpan.tag("custom", "tag");
+        chain.doFilter(request, response);
+    }
+
+}
+
+
+
+
+

11.3. Messaging

+
+

Sleuth automatically configures the MessagingTracing bean which serves as a +foundation for Messaging instrumentation such as Kafka or JMS.

+
+
+

If a customization of producer / consumer sampling of messaging traces is required, +just register a bean of type brave.sampler.SamplerFunction<MessagingRequest> and +name the bean sleuthProducerSampler for producer sampler and sleuthConsumerSampler +for consumer sampler.

+
+
+

For your convenience the @ProducerSampler and @ConsumerSampler +annotations can be used to inject the proper beans or to reference the bean +names via their static String NAME fields.

+
+
+

Ex. Here’s a sampler that traces 100 consumer requests per second, except for +the "alerts" channel. Other requests will use a global rate provided by the +Tracing component.

+
+
+
+
@Configuration
+class Config {
+}
+
+
+ +
+
+

11.4. RPC

+
+

Sleuth automatically configures the RpcTracing bean which serves as a +foundation for RPC instrumentation such as gRPC or Dubbo.

+
+
+

If a customization of client / server sampling of the RPC traces is required, +just register a bean of type brave.sampler.SamplerFunction<RpcRequest> and +name the bean sleuthRpcClientSampler for client sampler and +sleuthRpcServerSampler for server sampler.

+
+
+

For your convenience the @RpcClientSampler and @RpcServerSampler +annotations can be used to inject the proper beans or to reference the bean +names via their static String NAME fields.

+
+
+

Ex. Here’s a sampler that traces 100 "GetUserToken" server requests per second. +This doesn’t start new traces for requests to the health check service. Other +requests will use the global sampling configuration.

+
+
+
+
@Configuration
+class Config {
+  @Bean(name = RpcServerSampler.NAME)
+  SamplerFunction<RpcRequest> myRpcSampler() {
+      Matcher<RpcRequest> userAuth = and(serviceEquals("users.UserService"),
+              methodEquals("GetUserToken"));
+      return RpcRuleSampler.newBuilder()
+              .putRule(serviceEquals("grpc.health.v1.Health"), Sampler.NEVER_SAMPLE)
+              .putRule(userAuth, RateLimitingSampler.create(100)).build();
+  }
+}
+
+
+ +
+
+

11.5. Custom service name

+
+

By default, Sleuth assumes that, when you send a span to Zipkin, you want the span’s service name to be equal to the value of the spring.application.name property. +That is not always the case, though. +There are situations in which you want to explicitly provide a different service name for all spans coming from your application. +To achieve that, you can pass the following property to your application to override that value (the example is for a service named myService):

+
+
+
+
spring.zipkin.service.name: myService
+
+
+
+
+

11.6. Customization of Reported Spans

+
+

Before reporting spans (for example, to Zipkin) you may want to modify that span in some way. +You can do so by using the FinishedSpanHandler interface.

+
+
+

In Sleuth, we generate spans with a fixed name. +Some users want to modify the name depending on values of tags. +You can implement the FinishedSpanHandler interface to alter that name.

+
+
+

The following example shows how to register two beans that implement FinishedSpanHandler:

+
+
+
+
@Bean
+FinishedSpanHandler handlerOne() {
+    return new FinishedSpanHandler() {
+        @Override
+        public boolean handle(TraceContext traceContext, MutableSpan span) {
+            span.name("foo");
+            return true; // keep this span
+        }
+    };
+}
+
+@Bean
+FinishedSpanHandler handlerTwo() {
+    return new FinishedSpanHandler() {
+        @Override
+        public boolean handle(TraceContext traceContext, MutableSpan span) {
+            span.name(span.name() + " bar");
+            return true; // keep this span
+        }
+    };
+}
+
+
+
+

The preceding example results in changing the name of the reported span to foo bar, just before it gets reported (for example, to Zipkin).

+
+
+
+

11.7. Host Locator

+
+ + + + + +
+ + +This section is about defining host from service discovery. +It is NOT about finding Zipkin through service discovery. +
+
+
+

To define the host that corresponds to a particular span, we need to resolve the host name and port. +The default approach is to take these values from server properties. +If those are not set, we try to retrieve the host name from the network interfaces.

+
+
+

If you have the discovery client enabled and prefer to retrieve the host address from the registered instance in a service registry, you have to set the spring.zipkin.locator.discovery.enabled property (it is applicable for both HTTP-based and Stream-based span reporting), as follows:

+
+
+
+
spring.zipkin.locator.discovery.enabled: true
+
+
+
+
+
+
+

12. Sending Spans to Zipkin

+
+
+

By default, if you add spring-cloud-starter-zipkin as a dependency to your project, when the span is closed, it is sent to Zipkin over HTTP. +The communication is asynchronous. +You can configure the URL by setting the spring.zipkin.baseUrl property, as follows:

+
+
+
+
spring.zipkin.baseUrl: https://192.168.99.100:9411/
+
+
+
+

If you want to find Zipkin through service discovery, you can pass the Zipkin’s service ID inside the URL, as shown in the following example for zipkinserver service ID:

+
+
+
+
spring.zipkin.baseUrl: https://zipkinserver/
+
+
+
+

To disable this feature just set spring.zipkin.discoveryClientEnabled to `false.

+
+
+

When the Discovery Client feature is enabled, Sleuth uses +LoadBalancerClient to find the URL of the Zipkin Server. It means +that you can set up the load balancing configuration e.g. via Ribbon.

+
+
+
+
zipkinserver:
+  ribbon:
+    ListOfServers: host1,host2
+
+
+
+

If you have web, rabbit, activemq or kafka together on the classpath, you might need to pick the means by which you would like to send spans to zipkin. +To do so, set web, rabbit, activemq or kafka to the spring.zipkin.sender.type property. +The following example shows setting the sender type for web:

+
+
+
+
spring.zipkin.sender.type: web
+
+
+
+

To customize the RestTemplate that sends spans to Zipkin via HTTP, you can register +the ZipkinRestTemplateCustomizer bean.

+
+
+
+
@Configuration
+class MyConfig {
+    @Bean ZipkinRestTemplateCustomizer myCustomizer() {
+        return new ZipkinRestTemplateCustomizer() {
+            @Override
+            void customize(RestTemplate restTemplate) {
+                // customize the RestTemplate
+            }
+        };
+    }
+}
+
+
+
+

If, however, you would like to control the full process of creating the RestTemplate +object, you will have to create a bean of zipkin2.reporter.Sender type.

+
+
+
+
    @Bean Sender myRestTemplateSender(ZipkinProperties zipkin,
+            ZipkinRestTemplateCustomizer zipkinRestTemplateCustomizer) {
+        RestTemplate restTemplate = mySuperCustomRestTemplate();
+        zipkinRestTemplateCustomizer.customize(restTemplate);
+        return myCustomSender(zipkin, restTemplate);
+    }
+
+
+
+
+
+

13. Zipkin Stream Span Consumer

+
+
+ + + + + +
+ + +We recommend using Zipkin’s native support for message-based span sending. +Starting from the Edgware release, the Zipkin Stream server is deprecated. +In the Finchley release, it got removed. +
+
+
+

If for some reason you need to create the deprecated Stream Zipkin server, see the Dalston Documentation.

+
+
+
+
+

14. Integrations

+
+
+

14.1. OpenTracing

+
+

Spring Cloud Sleuth is compatible with OpenTracing. +If you have OpenTracing on the classpath, we automatically register the OpenTracing Tracer bean. +If you wish to disable this, set spring.sleuth.opentracing.enabled to false

+
+
+
+

14.2. Runnable and Callable

+
+

If you wrap your logic in Runnable or Callable, you can wrap those classes in their Sleuth representative, as shown in the following example for Runnable:

+
+
+
+
Runnable runnable = new Runnable() {
+    @Override
+    public void run() {
+        // do some work
+    }
+
+    @Override
+    public String toString() {
+        return "spanNameFromToStringMethod";
+    }
+};
+// Manual `TraceRunnable` creation with explicit "calculateTax" Span name
+Runnable traceRunnable = new TraceRunnable(this.tracing, spanNamer, runnable,
+        "calculateTax");
+// Wrapping `Runnable` with `Tracing`. That way the current span will be available
+// in the thread of `Runnable`
+Runnable traceRunnableFromTracer = this.tracing.currentTraceContext()
+        .wrap(runnable);
+
+
+
+

The following example shows how to do so for Callable:

+
+
+
+
Callable<String> callable = new Callable<String>() {
+    @Override
+    public String call() throws Exception {
+        return someLogic();
+    }
+
+    @Override
+    public String toString() {
+        return "spanNameFromToStringMethod";
+    }
+};
+// Manual `TraceCallable` creation with explicit "calculateTax" Span name
+Callable<String> traceCallable = new TraceCallable<>(this.tracing, spanNamer,
+        callable, "calculateTax");
+// Wrapping `Callable` with `Tracing`. That way the current span will be available
+// in the thread of `Callable`
+Callable<String> traceCallableFromTracer = this.tracing.currentTraceContext()
+        .wrap(callable);
+
+
+
+

That way, you ensure that a new span is created and closed for each execution.

+
+
+
+

14.3. Spring Cloud CircuitBreaker

+
+

If you have Spring Cloud CircuitBreaker on the classpath, we will wrap the passed command Supplier and the fallback Function in its trace representations. In order to disable this instrumentation set spring.sleuth.circuitbreaker.enabled to false.

+
+
+
+

14.4. RxJava

+
+

We registering a custom RxJavaSchedulersHook that wraps all Action0 instances in their Sleuth representative, which is called TraceAction. +The hook either starts or continues a span, depending on whether tracing was already going on before the Action was scheduled. +To disable the custom RxJavaSchedulersHook, set the spring.sleuth.rxjava.schedulers.hook.enabled to false.

+
+
+

You can define a list of regular expressions for thread names for which you do not want spans to be created. +To do so, provide a comma-separated list of regular expressions in the spring.sleuth.rxjava.schedulers.ignoredthreads property.

+
+
+ + + + + +
+ + +The suggest approach to reactive programming and Sleuth is to use +the Reactor support. +
+
+
+
+

14.5. HTTP integration

+
+

Features from this section can be disabled by setting the spring.sleuth.web.enabled property with value equal to false.

+
+
+

14.5.1. HTTP Filter

+
+

Through the TracingFilter, all sampled incoming requests result in creation of a Span. +That Span’s name is http: + the path to which the request was sent. +For example, if the request was sent to /this/that then the name will be http:/this/that. +You can configure which URIs you would like to skip by setting the spring.sleuth.web.skipPattern property. +If you have ManagementServerProperties on classpath, its value of contextPath gets appended to the provided skip pattern. +If you want to reuse the Sleuth’s default skip patterns and just append your own, pass those patterns by using the spring.sleuth.web.additionalSkipPattern.

+
+
+

By default, all the spring boot actuator endpoints are automatically added to the skip pattern. +If you want to disable this behaviour set spring.sleuth.web.ignore-auto-configured-skip-patterns +to true.

+
+
+

To change the order of tracing filter registration, please set the +spring.sleuth.web.filter-order property.

+
+
+

To disable the filter that logs uncaught exceptions you can disable the +spring.sleuth.web.exception-throwing-filter-enabled property.

+
+
+
+

14.5.2. HandlerInterceptor

+
+

Since we want the span names to be precise, we use a TraceHandlerInterceptor that either wraps an existing HandlerInterceptor or is added directly to the list of existing HandlerInterceptors. +The TraceHandlerInterceptor adds a special request attribute to the given HttpServletRequest. +If the the TracingFilter does not see this attribute, it creates a "fallback" span, which is an additional span created on the server side so that the trace is presented properly in the UI. +If that happens, there is probably missing instrumentation. +In that case, please file an issue in Spring Cloud Sleuth.

+
+
+
+

14.5.3. Async Servlet support

+
+

If your controller returns a Callable or a WebAsyncTask, Spring Cloud Sleuth continues the existing span instead of creating a new one.

+
+
+
+

14.5.4. WebFlux support

+
+

Through TraceWebFilter, all sampled incoming requests result in creation of a Span. +That Span’s name is http: + the path to which the request was sent. +For example, if the request was sent to /this/that, the name is http:/this/that. +You can configure which URIs you would like to skip by using the spring.sleuth.web.skipPattern property. +If you have ManagementServerProperties on the classpath, its value of contextPath gets appended to the provided skip pattern. +If you want to reuse Sleuth’s default skip patterns and append your own, pass those patterns by using the spring.sleuth.web.additionalSkipPattern.

+
+
+

To change the order of tracing filter registration, please set the +spring.sleuth.web.filter-order property.

+
+
+
+

14.5.5. Dubbo RPC support

+
+

Via the integration with Brave, Spring Cloud Sleuth supports Dubbo. +It’s enough to add the brave-instrumentation-dubbo dependency:

+
+
+
+
<dependency>
+    <groupId>io.zipkin.brave</groupId>
+    <artifactId>brave-instrumentation-dubbo</artifactId>
+</dependency>
+
+
+
+

You need to also set a dubbo.properties file with the following contents:

+
+
+
+
dubbo.provider.filter=tracing
+dubbo.consumer.filter=tracing
+
+
+
+

You can read more about Brave - Dubbo integration here. +An example of Spring Cloud Sleuth and Dubbo can be found here.

+
+
+
+
+

14.6. HTTP Client Integration

+
+

14.6.1. Synchronous Rest Template

+
+

We inject a RestTemplate interceptor to ensure that all the tracing information is passed to the requests. +Each time a call is made, a new Span is created. +It gets closed upon receiving the response. +To block the synchronous RestTemplate features, set spring.sleuth.web.client.enabled to false.

+
+
+ + + + + +
+ + +You have to register RestTemplate as a bean so that the interceptors get injected. +If you create a RestTemplate instance with a new keyword, the instrumentation does NOT work. +
+
+
+
+

14.6.2. Asynchronous Rest Template

+
+ + + + + +
+ + +Starting with Sleuth 2.0.0, we no longer register a bean of AsyncRestTemplate type. +It is up to you to create such a bean. +Then we instrument it. +
+
+
+

To block the AsyncRestTemplate features, set spring.sleuth.web.async.client.enabled to false. +To disable creation of the default TraceAsyncClientHttpRequestFactoryWrapper, set spring.sleuth.web.async.client.factory.enabled +to false. +If you do not want to create AsyncRestClient at all, set spring.sleuth.web.async.client.template.enabled to false.

+
+
+
Multiple Asynchronous Rest Templates
+
+

Sometimes you need to use multiple implementations of the Asynchronous Rest Template. +In the following snippet, you can see an example of how to set up such a custom AsyncRestTemplate:

+
+
+
+
@Configuration
+@EnableAutoConfiguration
+static class Config {
+
+    @Bean(name = "customAsyncRestTemplate")
+    public AsyncRestTemplate traceAsyncRestTemplate() {
+        return new AsyncRestTemplate(asyncClientFactory(),
+                clientHttpRequestFactory());
+    }
+
+    private ClientHttpRequestFactory clientHttpRequestFactory() {
+        ClientHttpRequestFactory clientHttpRequestFactory = new CustomClientHttpRequestFactory();
+        // CUSTOMIZE HERE
+        return clientHttpRequestFactory;
+    }
+
+    private AsyncClientHttpRequestFactory asyncClientFactory() {
+        AsyncClientHttpRequestFactory factory = new CustomAsyncClientHttpRequestFactory();
+        // CUSTOMIZE HERE
+        return factory;
+    }
+
+}
+
+
+
+
+
+

14.6.3. WebClient

+
+

We inject a ExchangeFilterFunction implementation that creates a span and, through on-success and on-error callbacks, takes care of closing client-side spans.

+
+
+

To block this feature, set spring.sleuth.web.client.enabled to false.

+
+
+ + + + + +
+ + +You have to register WebClient as a bean so that the tracing instrumentation gets applied. +If you create a WebClient instance with a new keyword, the instrumentation does NOT work. +
+
+
+
+

14.6.4. Traverson

+
+

If you use the Traverson library, you can inject a RestTemplate as a bean into your Traverson object. +Since RestTemplate is already intercepted, you get full support for tracing in your client. The following pseudo code +shows how to do that:

+
+
+
+
@Autowired RestTemplate restTemplate;
+
+Traverson traverson = new Traverson(URI.create("https://some/address"),
+    MediaType.APPLICATION_JSON, MediaType.APPLICATION_JSON_UTF8).setRestOperations(restTemplate);
+// use Traverson
+
+
+
+
+

14.6.5. Apache HttpClientBuilder and HttpAsyncClientBuilder

+
+

We instrument the HttpClientBuilder and HttpAsyncClientBuilder so that +tracing context gets injected to the sent requests.

+
+
+

To block these features, set spring.sleuth.web.client.enabled to false.

+
+
+
+

14.6.6. Netty HttpClient

+
+

We instrument the Netty’s HttpClient.

+
+
+

To block this feature, set spring.sleuth.web.client.enabled to false.

+
+
+ + + + + +
+ + +You have to register HttpClient as a bean so that the instrumentation happens. +If you create a HttpClient instance with a new keyword, the instrumentation does NOT work. +
+
+
+
+

14.6.7. UserInfoRestTemplateCustomizer

+
+

We instrument the Spring Security’s UserInfoRestTemplateCustomizer.

+
+
+

To block this feature, set spring.sleuth.web.client.enabled to false.

+
+
+
+
+

14.7. Feign

+
+

By default, Spring Cloud Sleuth provides integration with Feign through TraceFeignClientAutoConfiguration. +You can disable it entirely by setting spring.sleuth.feign.enabled to false. +If you do so, no Feign-related instrumentation take place.

+
+
+

Part of Feign instrumentation is done through a FeignBeanPostProcessor. +You can disable it by setting spring.sleuth.feign.processor.enabled to false. +If you set it to false, Spring Cloud Sleuth does not instrument any of your custom Feign components. +However, all the default instrumentation is still there.

+
+
+
+

14.8. gRPC

+
+

Spring Cloud Sleuth provides instrumentation for gRPC through TraceGrpcAutoConfiguration. You can disable it entirely by setting spring.sleuth.grpc.enabled to false.

+
+
+

14.8.1. Variant 1

+
+
Dependencies
+
+ + + + + +
+ + +The gRPC integration relies on two external libraries to instrument clients and servers and both of those libraries must be on the class path to enable the instrumentation. +
+
+
+

Maven:

+
+
+
+
        <dependency>
+            <groupId>io.github.lognet</groupId>
+            <artifactId>grpc-spring-boot-starter</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>io.zipkin.brave</groupId>
+            <artifactId>brave-instrumentation-grpc</artifactId>
+        </dependency>
+
+
+
+

Gradle:

+
+
+
+
    compile("io.github.lognet:grpc-spring-boot-starter")
+    compile("io.zipkin.brave:brave-instrumentation-grpc")
+
+
+
+
+
Server Instrumentation
+
+

Spring Cloud Sleuth leverages grpc-spring-boot-starter to register Brave’s gRPC server interceptor with all services annotated with @GRpcService.

+
+
+
+
Client Instrumentation
+
+

gRPC clients leverage a ManagedChannelBuilder to construct a ManagedChannel used to communicate to the gRPC server. The native ManagedChannelBuilder provides static methods as entry points for construction of ManagedChannel instances, however, this mechanism is outside the influence of the Spring application context.

+
+
+ + + + + +
+ + +Spring Cloud Sleuth provides a SpringAwareManagedChannelBuilder that can be customized through the Spring application context and injected by gRPC clients. This builder must be used when creating ManagedChannel instances. +
+
+
+

Sleuth creates a TracingManagedChannelBuilderCustomizer which inject Brave’s client interceptor into the SpringAwareManagedChannelBuilder.

+
+
+
+
+

14.8.2. Variant 2

+
+

Grpc Spring Boot Starter automatically detects the presence of Spring Cloud Sleuth and brave’s instrumentation for gRPC and registers the necessary client and/or server tooling.

+
+
+
+
+

14.9. Asynchronous Communication

+
+

14.9.1. @Async Annotated methods

+
+

In Spring Cloud Sleuth, we instrument async-related components so that the tracing information is passed between threads. +You can disable this behavior by setting the value of spring.sleuth.async.enabled to false.

+
+
+

If you annotate your method with @Async, we automatically create a new Span with the following characteristics:

+
+
+
    +
  • +

    If the method is annotated with @SpanName, the value of the annotation is the Span’s name.

    +
  • +
  • +

    If the method is not annotated with @SpanName, the Span name is the annotated method name.

    +
  • +
  • +

    The span is tagged with the method’s class name and method name.

    +
  • +
+
+
+
+

14.9.2. @Scheduled Annotated Methods

+
+

In Spring Cloud Sleuth, we instrument scheduled method execution so that the tracing information is passed between threads. +You can disable this behavior by setting the value of spring.sleuth.scheduled.enabled to false.

+
+
+

If you annotate your method with @Scheduled, we automatically create a new span with the following characteristics:

+
+
+
    +
  • +

    The span name is the annotated method name.

    +
  • +
  • +

    The span is tagged with the method’s class name and method name.

    +
  • +
+
+
+

If you want to skip span creation for some @Scheduled annotated classes, you can set the spring.sleuth.scheduled.skipPattern with a regular expression that matches the fully qualified name of the @Scheduled annotated class.

+
+
+
+

14.9.3. Executor, ExecutorService, and ScheduledExecutorService

+
+

We provide LazyTraceExecutor, TraceableExecutorService, and TraceableScheduledExecutorService. Those implementations create spans each time a new task is submitted, invoked, or scheduled.

+
+
+

The following example shows how to pass tracing information with TraceableExecutorService when working with CompletableFuture:

+
+
+
+
CompletableFuture<Long> completableFuture = CompletableFuture.supplyAsync(() -> {
+    // perform some logic
+    return 1_000_000L;
+}, new TraceableExecutorService(beanFactory, executorService,
+        // 'calculateTax' explicitly names the span - this param is optional
+        "calculateTax"));
+
+
+
+ + + + + +
+ + +Sleuth does not work with parallelStream() out of the box. +If you want to have the tracing information propagated through the stream, you have to use the approach with supplyAsync(...), as shown earlier. +
+
+
+

If there are beans that implement the Executor interface that you would like +to exclude from span creation, you can use the spring.sleuth.async.ignored-beans +property where you can provide a list of bean names.

+
+
+
Customization of Executors
+
+

Sometimes, you need to set up a custom instance of the AsyncExecutor. +The following example shows how to set up such a custom Executor:

+
+
+
+
@Configuration
+@EnableAutoConfiguration
+@EnableAsync
+// add the infrastructure role to ensure that the bean gets auto-proxied
+@Role(BeanDefinition.ROLE_INFRASTRUCTURE)
+static class CustomExecutorConfig extends AsyncConfigurerSupport {
+
+    @Autowired
+    BeanFactory beanFactory;
+
+    @Override
+    public Executor getAsyncExecutor() {
+        ThreadPoolTaskExecutor executor = new ThreadPoolTaskExecutor();
+        // CUSTOMIZE HERE
+        executor.setCorePoolSize(7);
+        executor.setMaxPoolSize(42);
+        executor.setQueueCapacity(11);
+        executor.setThreadNamePrefix("MyExecutor-");
+        // DON'T FORGET TO INITIALIZE
+        executor.initialize();
+        return new LazyTraceExecutor(this.beanFactory, executor);
+    }
+
+}
+
+
+
+ + + + + +
+ + +To ensure that your configuration gets post processed, remember +to add the @Role(BeanDefinition.ROLE_INFRASTRUCTURE) on your +@Configuration class +
+
+
+
+
+
+

14.10. Messaging

+
+

Features from this section can be disabled by setting the spring.sleuth.messaging.enabled property with value equal to false.

+
+
+

14.10.1. Spring Integration and Spring Cloud Stream

+
+

Spring Cloud Sleuth integrates with Spring Integration. +It creates spans for publish and subscribe events. +To disable Spring Integration instrumentation, set spring.sleuth.integration.enabled to false.

+
+
+

You can provide the spring.sleuth.integration.patterns pattern to explicitly provide the names of channels that you want to include for tracing. +By default, all channels but hystrixStreamOutput channel are included.

+
+
+ + + + + +
+ + +When using the Executor to build a Spring Integration IntegrationFlow, you must use the untraced version of the Executor. +Decorating the Spring Integration Executor Channel with TraceableExecutorService causes the spans to be improperly closed. +
+
+
+

If you want to customize the way tracing context is read from and written to message headers, +it’s enough for you to register beans of types:

+
+
+
    +
  • +

    Propagation.Setter<MessageHeaderAccessor, String> - for writing headers to the message

    +
  • +
  • +

    Propagation.Getter<MessageHeaderAccessor, String> - for reading headers from the message

    +
  • +
+
+
+
+

14.10.2. Spring RabbitMq

+
+

We instrument the RabbitTemplate so that tracing headers get injected +into the message.

+
+
+

To block this feature, set spring.sleuth.messaging.rabbit.enabled to false.

+
+
+
+

14.10.3. Spring Kafka

+
+

We instrument the Spring Kafka’s ProducerFactory and ConsumerFactory +so that tracing headers get injected into the created Spring Kafka’s +Producer and Consumer.

+
+
+

To block this feature, set spring.sleuth.messaging.kafka.enabled to false.

+
+
+
+

14.10.4. Spring Kafka Streams

+
+

We instrument the KafkaStreams KafkaClientSupplier so that tracing headers +get injected into the Producer and Consumer`s. A `KafkaStreamsTracing bean +allows for further instrumentation through additional TransformerSupplier and +ProcessorSupplier methods.

+
+
+

To block this feature, set spring.sleuth.messaging.kafka.streams.enabled to false.

+
+
+
+

14.10.5. Spring JMS

+
+

We instrument the JmsTemplate so that tracing headers get injected +into the message. We also support @JmsListener annotated methods on the consumer side.

+
+
+

To block this feature, set spring.sleuth.messaging.jms.enabled to false.

+
+
+ + + + + +
+ + +We don’t support baggage propagation for JMS +
+
+
+
+

14.10.6. Spring Cloud AWS Messaging SQS

+
+

We instrument @SqsListener which is provided by org.springframework.cloud:spring-cloud-aws-messaging +so that tracing headers get extracted from the message and a trace gets put into the context.

+
+
+

To block this feature, set spring.sleuth.messaging.sqs.enabled to false.

+
+
+
+
+

14.11. Redis

+
+

We set tracing property to Lettcue ClientResources instance to enable Brave tracing built in Lettuce . +To disable Redis support, set the spring.sleuth.redis.enabled property to false.

+
+
+
+

14.12. Quartz

+
+

We instrument quartz jobs by adding Job/Trigger listeners to the Quartz Scheduler.

+
+
+

To turn off this feature, set the spring.sleuth.quartz.enabled property to false.

+
+
+
+

14.13. Project Reactor

+
+

For projects depending on Project Reactor such as Spring Cloud Gateway, we suggest turning the spring.sleuth.reactor.decorate-on-each option to false. That way an increased performance gain should be observed in comparison to the standard instrumentation mechanism. What this option does is it will wrap decorate onLast operator instead of onEach which will result in creation of far fewer objects. The downside of this is that when Project Reactor will change threads, the trace propagation will continue without issues, however anything relying on the ThreadLocal such as e.g. MDC entries can be buggy.

+
+
+
+
+
+

15. Configuration properties

+
+
+

To see the list of all Sleuth related configuration properties please check the Appendix page.

+
+
+
+
+

16. Running examples

+
+
+

You can see the running examples deployed in the Pivotal Web Services. +Check them out at the following links:

+
+
+ +
+
+
+
+ + + + + + + \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/css/spring.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/css/spring.css new file mode 100644 index 00000000..ca64edd5 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/css/spring.css @@ -0,0 +1 @@ +@import url("https://fonts.googleapis.com/css?family=Open+Sans:400,700&display=swap");/*! normalize.css v2.1.2 | MIT License | git.io/normalize */article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{display:block}audio,canvas,video{display:inline-block}audio:not([controls]){display:none;height:0}[hidden],template{display:none}script{display:none !important}html,body{font-size:100%}html{font-family:'Open Sans', sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}*,*:before,*:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}body{background:white;color:#000;padding:0;margin:0;font-size:16px;font-family:'Open Sans', sans-serif;font-weight:normal;font-style:normal;line-height:1.6em;position:relative;cursor:auto}a:hover{cursor:pointer}img,object,embed{max-width:100%;height:auto}object,embed{height:100%}img{-ms-interpolation-mode:bicubic}#map_canvas img,#map_canvas embed,#map_canvas object,.map_canvas img,.map_canvas embed,.map_canvas object{max-width:none !important}.left{float:left !important}.right{float:right !important}.text-left{text-align:left !important}.text-right{text-align:right !important}.text-center{text-align:center !important}.text-justify{text-align:justify !important}.hide{display:none}.antialiased{-webkit-font-smoothing:antialiased}img{display:inline-block;vertical-align:middle}textarea{height:auto;min-height:50px}select{width:100%}object,svg{display:inline-block;vertical-align:middle}.center{margin-left:auto;margin-right:auto}.spread,.stretch{width:100%}p.lead,.paragraph.lead>p,#preamble>.sectionbody>.paragraph:first-of-type p{line-height:1.6}.subheader,.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{line-height:1.45;color:#0b0a0a;font-weight:bold;margin-top:0;margin-bottom:0.8em}div,dl,dt,dd,ul,ol,li,h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6,pre,form,p,blockquote,th,td{margin:0;padding:0;direction:ltr}a{color:#086dc3;line-height:inherit;text-decoration:none}a:hover,a:focus{color:#086dc3;text-decoration:underline}a img{border:none}p{font-family:inherit;font-weight:normal;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}p aside{font-size:0.875em;line-height:1.35;font-style:italic}h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{font-family:Montserrat, sans-serif;font-weight:400;font-style:normal;color:#000;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:0.5em;line-height:1.0125em}h1 small,h2 small,h3 small,#toctitle small,.sidebarblock>.content>.title small,h4 small,h5 small,h6 small{font-size:60%;color:#867c74;line-height:0}h1{font-size:2.125em}h2{font-size:1.6875em}h3,#toctitle,.sidebarblock>.content>.title{font-size:1.375em}h4{font-size:1.125em}h5{font-size:1.125em}h6{font-size:1em}hr{border:solid #dce6e6;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}em,i{font-style:italic;line-height:inherit}strong,b{font-weight:bold;line-height:inherit}small{font-size:60%;line-height:inherit}code{font-family:Monaco, Menlo, Consolas, "Courier New", monospace;font-weight:normal;color:#3d3d3c;word-break:break-word}a:not(pre)>code{border:1px solid #086dc3;color:#086dc3}ul,ol,dl{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}ul,ol{margin-left:1.5em}ul.no-bullet,ol.no-bullet{margin-left:1.5em}ul li ul,ul li ol{margin-left:1.25em;margin-bottom:0;font-size:1em}ul.square li ul,ul.circle li ul,ul.disc li ul{list-style:inherit}ul.square{list-style-type:square}ul.circle{list-style-type:circle}ul.disc{list-style-type:disc}ul.no-bullet{list-style:none}ol li ul,ol li ol{margin-left:1.25em;margin-bottom:0}dl dt{margin-bottom:0.3125em;font-weight:bold}dl dd{margin-bottom:1.25em}abbr,acronym{text-transform:uppercase;font-size:90%;color:#000;border-bottom:1px dotted #dddddd;cursor:help}abbr{text-transform:none}blockquote{margin:0 0 1.25em;padding:0.5625em 1.25em 0 1.1875em;border-left:1px solid #dddddd}blockquote cite{display:block;font-size:0.9375em;color:rgba(0,0,0,0.6)}blockquote cite:before{content:"\2014 \0020"}blockquote cite a,blockquote cite a:visited{color:rgba(0,0,0,0.6)}blockquote,blockquote p{line-height:1.6;color:rgba(0,0,0,0.85)}.vcard{display:inline-block;margin:0 0 1.25em 0;border:1px solid #dddddd;padding:0.625em 0.75em}.vcard li{margin:0;display:block}.vcard .fn{font-weight:bold;font-size:0.9375em}.vevent .summary{font-weight:bold}.vevent abbr{cursor:auto;text-decoration:none;font-weight:bold;border:none;padding:0 0.0625em}#tocbot{padding:0 0 0.5rem 0;line-height:1.5rem;padding-left:10px}.mobile-toc{padding:0 0 1rem 0;line-height:1.5rem}.mobile-toc li a{display:block;padding:.3rem 0}#tocbot ol li{list-style:none;padding:0;margin:0}#tocbot ol{margin:0;padding:0}#tocbot ol ol{padding-left:0.6rem}#tocbot .toc-link{display:block;padding-top:.6rem;padding-bottom:.6rem;outline:none;border-radius:4px;font-size:15px;transition:all .15s}#tocbot .toc-link:hover{background:#ebf2f2;color:#06c;text-decoration:none}table{background:white;margin-bottom:1.25em;border:solid 1px #d4dfdf;border-spacing:0}table thead,table tfoot{background:#ebf2f2;font-weight:bold}table thead tr th,table thead tr td,table tfoot tr th,table tfoot tr td{padding:0.5em 0.625em 0.625em;font-size:inherit;color:#000;text-align:left}table tr th,table tr td{padding:0.5625em 0.625em;font-size:inherit;color:#000}table tr.even,table tr.alt,table tr:nth-child(even){background:#f5f9f9}table thead tr th,table tfoot tr th,table tbody tr td,table tr td,table tfoot tr td{display:table-cell;line-height:1.6}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;tab-size:4}h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2;word-spacing:-0.05em}.clearfix:before,.clearfix:after,.float-group:before,.float-group:after{content:" ";display:table}.clearfix:after,.float-group:after{clear:both}*:not(pre)>code{white-space:nowrap;background-color:#fff;border:1px solid #e1e1e8;color:#009;padding:2px 6px;font-size:.875rem;font-family:Monaco, Menlo, Consolas, "Courier New", monospace}pre,pre>code{line-height:1.85;color:rgba(0,0,0,0.9);font-family:Monaco, Menlo, Consolas, "Courier New", monospace;font-weight:normal;text-rendering:optimizeSpeed;word-break:normal}pre{overflow:auto}em em{font-style:normal}strong strong{font-weight:normal}.keyseq{color:#6b625c}kbd{font-family:Monaco, Menlo, Consolas, "Courier New", monospace;display:inline-block;color:#000;font-size:0.65em;line-height:1.45;background-color:#f7f7f7;border:1px solid #ccc;-webkit-border-radius:3px;border-radius:3px;-webkit-box-shadow:0 1px 0 rgba(0,0,0,0.2),0 0 0 0.1em white inset;box-shadow:0 1px 0 rgba(0,0,0,0.2),0 0 0 0.1em white inset;margin:0 0.15em;padding:0.2em 0.5em;vertical-align:middle;position:relative;top:-0.1em;white-space:nowrap}.keyseq kbd:first-child{margin-left:0}.keyseq kbd:last-child{margin-right:0}.menuseq,.menu{color:#191715}b.button:before,b.button:after{position:relative;top:-1px;font-weight:normal}b.button:before{content:"[";padding:0 3px 0 2px}b.button:after{content:"]";padding:0 2px 0 3px}p a>code:hover{color:rgba(0,0,0,0.9)}#toc{border-bottom:1px solid #dce6e6;padding-bottom:0.5em}#toc>ul{margin-left:0.125em}#toc ul.sectlevel0>li>a{font-style:italic}#toc ul.sectlevel0 ul.sectlevel1{margin:0.5em 0}#toc ul{list-style-type:none}#toc li{line-height:1.3334}#toc a{text-decoration:none}#toc a:active{text-decoration:underline}#toctitle{color:#0b0a0a;font-size:1.2em;display:none}body.toc2{padding-top:80px;text-rendering:optimizeLegibility}#content #toc{border-style:solid;border-width:1px;border-color:#dce6e6;margin-bottom:1.25em;padding:1.25em;background:#f1f1f1;-webkit-border-radius:4px;border-radius:4px}#content #toc>:first-child{margin-top:0}#content #toc>:last-child{margin-bottom:0}#footer{padding-bottom:2rem}#footer #footer-text{padding:2rem 0;border-top:1px solid #efefed}#footer-text{color:rgba(0,0,0,0.6);line-height:1.44}.sect1{padding-bottom:0.625em}.sect1+.sect1{border-top:1px solid #efefed}#content h1>a.anchor,h2>a.anchor,h3>a.anchor,#toctitle>a.anchor,.sidebarblock>.content>.title>a.anchor,h4>a.anchor,h5>a.anchor,h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;margin-top:0.1rem;display:block;visibility:hidden;text-align:center;font-weight:normal;color:rgba(0,0,0,0.2)}#content h1>a.anchor:hover,h2>a.anchor:hover,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4>a.anchor:hover,h5>a.anchor:hover,h6>a.anchor:hover{color:#097dff;text-decoration:none}#content h1>a.anchor:before,h2>a.anchor:before,h3>a.anchor:before,#toctitle>a.anchor:before,.sidebarblock>.content>.title>a.anchor:before,h4>a.anchor:before,h5>a.anchor:before,h6>a.anchor:before{content:"\0023";font-size:0.85em;display:block;padding-top:0.1em}#content h1:hover>a.anchor,#content h1>a.anchor:hover,h2:hover>a.anchor,h2>a.anchor:hover,h3:hover>a.anchor,#toctitle:hover>a.anchor,.sidebarblock>.content>.title:hover>a.anchor,h3>a.anchor:hover,#toctitle>a.anchor:hover,.sidebarblock>.content>.title>a.anchor:hover,h4:hover>a.anchor,h4>a.anchor:hover,h5:hover>a.anchor,h5>a.anchor:hover,h6:hover>a.anchor,h6>a.anchor:hover{visibility:visible}#content h1>a.link,h2>a.link,h3>a.link,#toctitle>a.link,.sidebarblock>.content>.title>a.link,h4>a.link,h5>a.link,h6>a.link{color:#000;text-decoration:none}#content h1>a.link:hover,h2>a.link:hover,h3>a.link:hover,#toctitle>a.link:hover,.sidebarblock>.content>.title>a.link:hover,h4>a.link:hover,h5>a.link:hover,h6>a.link:hover{color:#262321}.audioblock,.imageblock,.literalblock,.listingblock,.stemblock,.videoblock{margin-bottom:1.25em}.admonitionblock td.content>.title,.audioblock>.title,.exampleblock>.title,.imageblock>.title,.listingblock>.title,.literalblock>.title,.stemblock>.title,.openblock>.title,.paragraph>.title,.quoteblock>.title,table.tableblock>.title,.verseblock>.title,.videoblock>.title,.dlist>.title,.olist>.title,.ulist>.title,.qlist>.title,.hdlist>.title{text-rendering:optimizeLegibility;text-align:left;font-family:'Open Sans', sans-serif;font-size:1rem}table.tableblock>caption.title{white-space:nowrap;overflow:visible;max-width:0;padding:0.6rem 0}table.tableblock #preamble>.sectionbody>.paragraph:first-of-type p{font-size:inherit}.admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.admonitionblock>table td.icon{text-align:center;vertical-align:top;padding-top:0.8em;width:80px}.admonitionblock>table td.icon img{max-width:initial}.admonitionblock>table td.icon .title{font-weight:bold;font-family:Montserrat, sans-serif;text-transform:uppercase}.admonitionblock>table td.content{padding-left:0em;padding-right:1.25em;border-left:1px solid #dce6e6}.admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.exampleblock>.content{border-style:solid;border-width:0;border-color:#e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#f1f1f1;border-radius:4px}.exampleblock>.content>:first-child{margin-top:0}.exampleblock>.content>:last-child{margin-bottom:0}.sidebarblock{border-style:solid;border-width:0;border-color:#dce6e6;margin-bottom:1.25em;padding:1.25em;background:#ebf2f2;border-radius:4px;overflow:scroll}.sidebarblock>:first-child{margin-top:0}.sidebarblock>:last-child{margin-bottom:0}.sidebarblock>.content>.title{color:#0b0a0a;margin-top:0;text-align:center}.exampleblock>.content>:last-child>:last-child,.exampleblock>.content .olist>ol>li:last-child>:last-child,.exampleblock>.content .ulist>ul>li:last-child>:last-child,.exampleblock>.content .qlist>ol>li:last-child>:last-child,.sidebarblock>.content>:last-child>:last-child,.sidebarblock>.content .olist>ol>li:last-child>:last-child,.sidebarblock>.content .ulist>ul>li:last-child>:last-child,.sidebarblock>.content .qlist>ol>li:last-child>:last-child{margin-bottom:0}.literalblock pre,.listingblock pre:not(.highlight),.listingblock pre[class="highlight"],.listingblock pre[class^="highlight "],.listingblock pre.CodeRay,.listingblock pre.prettyprint{background:#fff;border:1px solid #d9d9d9;border-radius:4px}.sidebarblock .literalblock pre,.sidebarblock .listingblock pre:not(.highlight),.sidebarblock .listingblock pre[class="highlight"],.sidebarblock .listingblock pre[class^="highlight "],.sidebarblock .listingblock pre.CodeRay,.sidebarblock .listingblock pre.prettyprint{background:#fff;border:1px solid #d9d9d9;color:#222}.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class],.listingblock pre:not(.highlight){padding:1em 1.5rem;font-size:0.8125em}.literalblock pre.nowrap,.literalblock pre[class].nowrap,.listingblock pre.nowrap,.listingblock pre[class].nowrap{overflow-x:auto}.literalblock.output pre{color:whitesmoke;background-color:rgba(0,0,0,0.9)}.listingblock{white-space:nowrap}.listingblock pre.highlightjs>code{padding:1em 1.5rem;border-radius:4px}.listingblock>.content{position:relative}.listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:0.8em;font-weight:bold;top:0.425rem;right:0.5rem;line-height:1;text-transform:uppercase;color:#999}.listingblock code[data-lang]:before{display:block}.listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:0.5em;color:#999}.listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}table.pyhltable{border-collapse:separate;border:0;margin-bottom:0;background:none}table.pyhltable td{vertical-align:top;padding-top:0;padding-bottom:0;line-height:1.45}table.pyhltable td.code{padding-left:.75em;padding-right:0}pre.pygments .lineno,table.pyhltable td:not(.code){color:#999;padding-left:0;padding-right:.5em;border-right:1px solid #dce6e6}pre.pygments .lineno{display:block;margin-right:.25em}table.pyhltable .linenodiv{background:none !important;padding-right:0 !important}.quoteblock{margin:0 1em 1.25em 1.5em;display:block;text-align:left;padding-left:20px}.quoteblock blockquote,.quoteblock blockquote p{color:rgba(0,0,0,0.85);line-height:1.75;letter-spacing:0}.quoteblock blockquote{margin:0;padding:0;border:0;position:relative}.quoteblock blockquote:before{content:"\201c";font-size:2.75em;font-weight:bold;line-height:0.6em;margin-left:0em;margin-right:1rem;margin-top:0.8rem;color:rgba(0,0,0,0.1);position:absolute;top:0;left:-30px}.quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.quoteblock .attribution{margin-right:0.5ex}.quoteblock .quoteblock{margin-left:0;margin-right:0;padding:0.5em 0;border-left:3px solid rgba(0,0,0,0.6)}.quoteblock .quoteblock blockquote{padding:0 0 0 0.75em}.quoteblock .quoteblock blockquote:before{display:none}.verseblock{margin:0 1em 1.25em 0;background-color:#f1f1f1;padding:1rem 1.4rem;border-radius:4px}.verseblock pre{font-family:Monaco, Menlo, Consolas, "Courier New", monospace;font-size:0.9rem;color:rgba(0,0,0,0.85);font-weight:300;text-rendering:optimizeLegibility}.verseblock pre strong{font-weight:400}.verseblock .attribution{margin-top:1.25rem;margin-left:0.5ex}.quoteblock .attribution,.verseblock .attribution{font-size:0.9375em;line-height:1.45;font-style:italic}.quoteblock .attribution br,.verseblock .attribution br{display:none}.quoteblock .attribution cite,.verseblock .attribution cite{display:block;letter-spacing:-0.025em;color:rgba(0,0,0,0.6)}.quoteblock.abstract{margin:0 0 1.25em 0;display:block}.quoteblock.abstract blockquote,.quoteblock.abstract blockquote p{text-align:left;word-spacing:0}.quoteblock.abstract blockquote:before,.quoteblock.abstract blockquote p:first-of-type:before{display:none}table.tableblock{max-width:100%;border-collapse:separate;overflow-x:scroll}table.tableblock td>.paragraph:last-child p>p:last-child,table.tableblock th>p:last-child,table.tableblock td>p:last-child{margin-bottom:0}table.tableblock,th.tableblock,td.tableblock{border:0 solid #d4dfdf}table.grid-all th.tableblock,table.grid-all td.tableblock{border-width:0 1px 1px 0}table.grid-all tfoot>tr>th.tableblock,table.grid-all tfoot>tr>td.tableblock{border-width:1px 1px 0 0}table.grid-cols th.tableblock,table.grid-cols td.tableblock{border-width:0 1px 0 0}table.grid-all *>tr>.tableblock:last-child,table.grid-cols *>tr>.tableblock:last-child{border-right-width:0}table.grid-rows th.tableblock,table.grid-rows td.tableblock{border-width:0 0 1px 0}table.grid-all tbody>tr:last-child>th.tableblock,table.grid-all tbody>tr:last-child>td.tableblock,table.grid-all thead:last-child>tr>th.tableblock,table.grid-rows tbody>tr:last-child>th.tableblock,table.grid-rows tbody>tr:last-child>td.tableblock,table.grid-rows thead:last-child>tr>th.tableblock{border-bottom-width:0}table.grid-rows tfoot>tr>th.tableblock,table.grid-rows tfoot>tr>td.tableblock{border-width:1px 0 0 0}table.frame-all{border-width:1px}table.frame-sides{border-width:0 1px}table.frame-topbot{border-width:1px 0}th.halign-left,td.halign-left{text-align:left}th.halign-right,td.halign-right{text-align:right}th.halign-center,td.halign-center{text-align:center}th.valign-top,td.valign-top{vertical-align:top}th.valign-bottom,td.valign-bottom{vertical-align:bottom}th.valign-middle,td.valign-middle{vertical-align:middle}table thead th,table tfoot th{font-weight:bold}tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}tbody tr th,tbody tr th p,tfoot tr th,tfoot tr th p{color:#34302d;font-weight:bold}p.tableblock{font-size:1em}td>div.verse{white-space:pre}ol{margin-left:1.75em}ul li ol{margin-left:1.5em}dl dd{margin-left:1.125em}dl dd:last-child,dl dd:last-child>:last-child{margin-bottom:0}ol>li p,ul>li p,ul dd,ol dd,.olist .olist,.ulist .ulist,.ulist .olist,.olist .ulist{margin-bottom:0.625em}ul.unstyled,ol.unnumbered,ul.checklist,ul.none{list-style-type:none}ul.unstyled,ol.unnumbered,ul.checklist{margin-left:0.625em}ul.checklist li>p:first-child>.fa-square-o:first-child,ul.checklist li>p:first-child>.fa-check-square-o:first-child{width:1em;font-size:0.85em}ul.checklist li>p:first-child>input[type="checkbox"]:first-child{width:1em;position:relative;top:1px}ul.inline{margin:0 auto 0.625em auto;margin-left:-1.375em;margin-right:0;padding:0;list-style:none;overflow:hidden}ul.inline>li{list-style:none;float:left;margin-left:1.375em;display:block}ul.inline>li>*{display:block}.unstyled dl dt{font-weight:normal;font-style:normal}ol.arabic{list-style-type:decimal}ol.decimal{list-style-type:decimal-leading-zero}ol.loweralpha{list-style-type:lower-alpha}ol.upperalpha{list-style-type:upper-alpha}ol.lowerroman{list-style-type:lower-roman}ol.upperroman{list-style-type:upper-roman}ol.lowergreek{list-style-type:lower-greek}.hdlist>table,.colist>table{border:0;background:none}.hdlist>table>tbody>tr,.colist>table>tbody>tr{background:none}td.hdlist1,td.hdlist2{vertical-align:top;padding:0 0.625em}td.hdlist1{font-weight:bold;padding-bottom:1.25em}.literalblock+.colist,.listingblock+.colist{margin-top:-0.5em}.colist>table tr>td:first-of-type{padding:0 0.75em;line-height:1}.colist>table tr>td:first-of-type img{max-width:initial}.colist>table tr>td:last-of-type{padding:0.25em 0}.colist>table tr>td{white-space:pre-wrap}.thumb,.th{line-height:0;display:inline-block;border:solid 4px white;-webkit-box-shadow:0 0 0 1px #dddddd;box-shadow:0 0 0 1px #dddddd}.imageblock.left,.imageblock[style*="float: left"]{margin:0.25em 0.625em 1.25em 0}.imageblock.right,.imageblock[style*="float: right"]{margin:0.25em 0 1.25em 0.625em}.imageblock>.title{margin-bottom:0}.imageblock.thumb,.imageblock.th{border-width:6px}.imageblock.thumb>.title,.imageblock.th>.title{padding:0 0.125em}.image.left,.image.right{margin-top:0.25em;margin-bottom:0.25em;display:inline-block;line-height:0}.image.left{margin-right:0.625em}.image.right{margin-left:0.625em}a.image{text-decoration:none;display:inline-block}a.image object{pointer-events:none}sup.footnote,sup.footnoteref{font-size:0.875em;position:static;vertical-align:super}sup.footnote a,sup.footnoteref a{text-decoration:none}sup.footnote a:active,sup.footnoteref a:active{text-decoration:underline}#footnotes{padding-top:0.75em;padding-bottom:0.75em;margin-bottom:0.625em}#footnotes hr{width:20%;min-width:6.25em;margin:-0.25em 0 0.75em 0;border-width:1px 0 0 0}#footnotes .footnote{padding:0 0.375em 0 0.225em;line-height:1.3334;font-size:0.875em;margin-left:1.2em;text-indent:-1.05em;margin-bottom:0.2em}#footnotes .footnote a:first-of-type{font-weight:bold;text-decoration:none}#footnotes .footnote:last-of-type{margin-bottom:0}#content #footnotes{margin-top:-0.625em;margin-bottom:0;padding:0.75em 0}.gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.gist .file-data>table td.line-data{width:99%}div.unbreakable{page-break-inside:avoid}.big{font-size:larger}.small{font-size:smaller}.underline{text-decoration:underline}.overline{text-decoration:overline}.line-through{text-decoration:line-through}.aqua{color:#00bfbf}.aqua-background{background-color:#00fafa}.black{color:black}.black-background{background-color:black}.blue{color:#0000bf}.blue-background{background-color:#0000fa}.fuchsia{color:#bf00bf}.fuchsia-background{background-color:#fa00fa}.gray{color:#606060}.gray-background{background-color:#7d7d7d}.green{color:#006000}.green-background{background-color:#007d00}.lime{color:#00bf00}.lime-background{background-color:#00fa00}.maroon{color:#600000}.maroon-background{background-color:#7d0000}.navy{color:#000060}.navy-background{background-color:#00007d}.olive{color:#606000}.olive-background{background-color:#7d7d00}.purple{color:#600060}.purple-background{background-color:#7d007d}.red{color:#bf0000}.red-background{background-color:#fa0000}.silver{color:#909090}.silver-background{background-color:#bcbcbc}.teal{color:#006060}.teal-background{background-color:#007d7d}.white{color:#bfbfbf}.white-background{background-color:#f5f9f9}.yellow{color:#bfbf00}.yellow-background{background-color:#fafa00}span.icon>.fa{cursor:default}.admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;cursor:default}.admonitionblock td.icon .icon-note:before{content:"\f05a";color:#3f6a22}.admonitionblock td.icon .icon-tip:before{content:"\f0eb";color:#0077b9}.admonitionblock td.icon .icon-warning:before{content:"\f071";color:#d88400}.admonitionblock td.icon .icon-caution:before{content:"\f06d";color:#bf3400}.admonitionblock td.icon .icon-important:before{content:"\f06a";color:#bf0000}.conum[data-value]{display:inline-block;color:#000 !important;background-color:#ffe157;-webkit-border-radius:100px;border-radius:100px;text-align:center;font-size:0.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:"Open Sans", "DejaVu Sans", sans-serif;font-style:normal;font-weight:bold}.conum[data-value] *{color:#fff !important}.conum[data-value]+b{display:none}.conum[data-value]:after{content:attr(data-value)}pre .conum[data-value]{position:relative;top:0;color:#000 !important;background-color:#ffe157;font-size:12px}b.conum *{color:inherit !important}.conum:not([data-value]):empty{display:none}.admonitionblock{background-color:#ecf1e8;padding:0.8em 0;margin:30px 0;width:auto;border-radius:4px;overflow-x:auto}.admonitionblock.important{border-left:0px solid #e20000;background-color:#f9ebeb}.admonitionblock.warning{border-left:0px solid #d88400;background-color:#fff9e4}.admonitionblock.tip{border-left:0px solid #0077b9;background-color:#e9f1f6}.admonitionblock.caution{border-left:0px solid #e20000;background-color:#f9ebeb}.admonitionblock .exampleblock>.content{border:0 none;background-color:#fff}#toc a:hover{text-decoration:underline}.admonitionblock>table{margin-bottom:0}.admonitionblock>table td.content{border-left:none}@media print{#tocbot a.toc-link.node-name--H4{display:none}}.is-collapsible{max-height:1000px;overflow:hidden;transition:all 200ms ease-in-out}.is-collapsed{max-height:0}#index-link{display:none}ul li>p>a>code{color:#086dc3}ul li>p>a:hover>code{color:#086dc3}#content .listingblock .switch{border-style:none;display:inline-block;position:relative;bottom:0;margin-bottom:4px}#content .listingblock .switch--item:not(:first-child){border:2px solid #000}#content .listingblock .switch--item{padding:6px 12px;background-color:#fff;color:#000;display:inline-block;cursor:pointer;border:2px solid #000;margin-right:2px;border-radius:0}#content .listingblock .switch--item:hover{color:#086dc3}#content .listingblock .switch--item.selected{background-color:#000;color:#fff;border-color:#000}#content .listingblock .switch--item.selected:hover{color:#fff}#content .listingblock pre.highlightjs{padding:0}div.back-action,#toc.toc2 div.back-action{padding:0.8rem 0 0 5px}div.back-action a,#toc.toc2 div.back-action a{position:relative;display:inline-block;padding:0.6rem 1.2rem;padding-left:35px}div.back-action a span,#toc.toc2 div.back-action a span{position:absolute;left:5px;top:5px;display:block;color:#333;height:26px;width:26px;border-radius:13px}div.back-action a i,#toc.toc2 div.back-action a i{position:absolute;top:10px;left:5px}div.back-action a:hover span,#toc.toc2 div.back-action a:hover span{color:#000}#tocbot.desktop-toc{padding:.5rem}#header-spring{position:absolute;text-rendering:optimizeLegibility;top:0;left:0;right:0;height:80px;margin:0 1rem;padding:0 1rem;border-bottom:1px solid #dce6e6}#header-spring h1{margin:0;padding:0;font-size:22px;text-align:left;line-height:76px;padding-left:0.6rem}#header-spring h1 svg{width:240px}#header-spring h1 svg .st0{fill:#6bb536}#header-spring h1 svg .st2{fill:#444}body.book #header-spring{position:relative;top:auto;left:auto;right:auto;margin:0}body.book #header>h1:only-child{border:0 none;padding-bottom:1.2rem;font-size:1.8rem}body.book #header,body.book #content,body.book #footnotes,body.book #footer{margin:0 auto}body.toc2 #header-spring{position:absolute;left:0;right:0;top:0}body.toc2 #header>h1:only-child{font-size:2.2rem}body.toc2 #header,body.toc2 #content,body.toc2 #footnotes,body.toc2 #footer{margin:0 auto}body.toc2 #content{padding-top:2rem}#header,#content,#footnotes,#footer{width:100%;margin-right:auto;margin-top:0;margin-bottom:0;max-width:62.5em;*zoom:1;position:relative;padding-left:0.9375em;padding-right:0.9375em}#header:before,#header:after,#content:before,#content:after,#footnotes:before,#footnotes:after,#footer:before,#footer:after{content:" ";display:table}#header:after,#content:after,#footnotes:after,#footer:after{clear:both}#content{margin-top:1.25em}#content:before{content:none}#header{position:relative}#header>h1:first-child{margin-top:2.55rem;margin-bottom:0.5em;margin-bottom:0.7em;font-size:2rem}#header>h1:first-child+#toc{margin-top:8px;border-top:0 none}#header>h1:only-child,body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #ebf2f2;padding-bottom:8px}#header .details{line-height:1.45;color:#222;display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-flow:row wrap;-webkit-flex-flow:row wrap;flex-flow:row wrap;background-color:#ebf2f2;padding:2rem 2.5rem}#header .details span:first-child{margin-left:-0.125em}#header .details span.email a{color:rgba(0,0,0,0.85)}#header .details br{display:none}#header .details br+span:before{content:"\00a0\2013\00a0"}#header .details br+span.author:before{content:"\00a0\22c5\00a0";color:rgba(0,0,0,0.85)}#header .details br+span#revremark:before{content:"\00a0|\00a0"}#header #revnumber{text-transform:capitalize}#header #revnumber:after{content:"\00a0"}#content>h1:first-child:not([class]){color:rgba(0,0,0,0.85);border-bottom:1px solid #ebf2f2;padding-bottom:8px;margin-top:0;padding-top:1.5rem;margin-bottom:1.25rem}h1{font-size:2.2rem}h1,h2,h3,h4,h5,h6{font-weight:bold;font-family:Montserrat, Arial, Helvetica, sans-serif}h1:focus,h2:focus,h3:focus,h4:focus,h5:focus,h6:focus{box-shadow:none;outline:none}h2,h3,h4,h5,h6{padding:.8rem 0 .4rem}h1{font-size:1.75em}h2{font-size:1.6rem}h3{font-size:1.5rem}h4{font-size:1.4rem}h5{font-size:1.3rem}h6{font-size:1.2rem}pre.highlight{padding:20px;border:1px solid #d9d9d9;overflow-x:scroll;color:#222}pre.highlight code{color:#222}pre.highlight a,#toc.toc2 a{color:#000}pre.highlight ul.sectlevel1,#toc.toc2 ul.sectlevel1{padding-left:0.2rem}pre.highlight ul.sectlevel1 li,#toc.toc2 ul.sectlevel1 li{line-height:1.4rem}::selection{background-color:#d1ff79}.literalblock pre::selection,.listingblock pre[class="highlight"]::selection,.highlight::selection,pre::selection,.highlight code::selection,.highlight code span::selection{background:rgba(0,0,0,0.2) !important}body.book #header{margin-bottom:2rem}body.toc2 #header{margin-bottom:0}.desktop-toc{display:none}.admonitionblock td.icon{display:none}.admonitionblock>table td.content{padding-left:1.25em}@media only screen and (min-width: 768px){#toctitle{font-size:1.375em}.sect1{padding-bottom:1.25em}.mobile-toc{display:none}.desktop-toc{display:block}.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:0.90625em}.admonitionblock td.icon{display:table-cell}.admonitionblock>table td.content{padding-left:0}#header{position:relative;min-height:98px;padding-right:210px}#header::after{position:absolute;right:0;top:0;display:block;content:'';height:98px;width:203px;z-index:-1;background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAmIAAAEmCAIAAABOFWtWAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjEgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODRBOEI2NUE1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODRBOEI2NUI1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo4NEE4QjY1ODUwQjUxMUVBOUI1MkE4RDBBMzY4NkRCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo4NEE4QjY1OTUwQjUxMUVBOUI1MkE4RDBBMzY4NkRCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PooJeGcAAB/mSURBVHja7N15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");background-repeat:no-repeat;background-size:203px 98px}body.toc2{padding-right:0}body.toc2 #toc.toc2{position:absolute;margin-top:0 !important;width:15em;top:0;border-top-width:0 !important;border-bottom-width:0 !important;margin-left:-15.9375em;z-index:1000;padding:0 1em 1.25em 0em;overflow:auto}body.toc2 #toc.toc2 #toctitle{margin-top:0;margin-bottom:0.8rem;font-size:1.2em}body.toc2 #toc.toc2>ul{font-size:0.9em;margin-bottom:0}body.toc2 #toc.toc2 ul ul{margin-left:0;padding-left:1em}body.toc2 #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:0.5em;margin-bottom:0.5em}body.toc2 #header,body.toc2 #content,body.toc2 #footnotes,body.toc2 #footer{padding-left:15.9375em;max-width:none}body.book #header-spring h1{max-width:1400px;margin:0 auto}body.book #header,body.book #content,body.book #footnotes,body.book #footer{max-width:1400px}body.is-position-fixed #toc.toc2{position:fixed;height:100%}h1,h2,h3,#toctitle,.sidebarblock>.content>.title,h4,h5,h6{line-height:1.2}h1{font-size:1.75em}h2{font-size:1.6em}h3,#toctitle,.sidebarblock>.content>.title{font-size:1.5em}h4{font-size:1.4em}h5{font-size:1.2em}h6{font-size:1.2em}#tocbot a.toc-link.node-name--H1{font-style:italic}#tocbot ol{margin:0;padding:0}#tocbot ol li{list-style:none;padding:0 0;margin:0;display:block}#tocbot{z-index:999}#tocbot .toc-link{position:relative;display:block;z-index:999;padding:.4rem .6rem}#tocbot a.is-active-link{padding-right:3px;background:black;color:white}}@media only screen and (min-width: 768px){#tocbot>ul.toc-list{margin-bottom:0.5em;margin-left:0.125em}#tocbot ul.sectlevel0,#tocbot a.toc-link.node-name--H1+ul{padding-left:0}#tocbot a.toc-link{height:100%}.is-collapsible{max-height:3000px;overflow:hidden}.is-collapsed{max-height:0}}@media only screen and (min-width: 768px){body.toc2 #header,body.toc2 #content,body.toc2 #footer{background-repeat:repeat-y;background-position:14em 0;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAMAAAAoyzS7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQwIDc5LjE2MDQ1MSwgMjAxNy8wNS8wNi0wMTowODoyMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RDE0NUNENzNGMTVGMTFFODk5RjI5ODk3QURGRjcxMkEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RDE0NUNENzRGMTVGMTFFODk5RjI5ODk3QURGRjcxMkEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpEMTQ1Q0Q3MUYxNUYxMUU4OTlGMjk4OTdBREZGNzEyQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpEMTQ1Q0Q3MkYxNUYxMUU4OTlGMjk4OTdBREZGNzEyQSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjmGxxYAAAAGUExURd3d2AAAAJlCnKAAAAAMSURBVHjaYmAACDAAAAIAAU9tWeEAAAAASUVORK5CYII=);background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjEgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDMyRDZERkQ1MEE4MTFFQTlCNTJBOEQwQTM2ODZEQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDMyRDZERkU1MEE4MTFFQTlCNTJBOEQwQTM2ODZEQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0MzJENkRGQjUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0MzJENkRGQzUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjdyLKIAAAAPSURBVHjaYnj16RNAgAEABZgCz/xXiToAAAAASUVORK5CYII=");background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjEgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODRBOEI2NTI1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODRBOEI2NTM1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0MzJENkRGRjUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0MzJENkUwMDUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pul87iAAAAAPSURBVHjaYrj17BlAgAEABUQCpxgONc4AAAAASUVORK5CYII=")}}@media only screen and (min-width: 1280px){body.toc2{padding-right:0}body.toc2 #toc.toc2{width:25em;left:auto;margin-left:-26.9375em}body.toc2 #toc.toc2 #toctitle{font-size:1.375em}body.toc2 #toc.toc2>ul{font-size:0.95em}body.toc2 #toc.toc2 ul ul{padding-left:1.25em}body.toc2 body.toc2.toc-right{padding-left:0;padding-right:20em}body.toc2 #header,body.toc2 #content,body.toc2 #footnotes,body.toc2 #footer{padding-left:26.9375em;max-width:2000px}body.toc2 #header-spring h1{margin:0 auto;max-width:2000px}.literalblock pre,.literalblock pre[class],.listingblock pre,.listingblock pre[class]{font-size:0.8125em}body.toc2 #header,body.toc2 #content,body.toc2 #footer{background-repeat:repeat-y;background-position:24em 0;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAMAAAAoyzS7AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyhpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQwIDc5LjE2MDQ1MSwgMjAxNy8wNS8wNi0wMTowODoyMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6RDE0NUNENzNGMTVGMTFFODk5RjI5ODk3QURGRjcxMkEiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6RDE0NUNENzRGMTVGMTFFODk5RjI5ODk3QURGRjcxMkEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpEMTQ1Q0Q3MUYxNUYxMUU4OTlGMjk4OTdBREZGNzEyQSIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDpEMTQ1Q0Q3MkYxNUYxMUU4OTlGMjk4OTdBREZGNzEyQSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjmGxxYAAAAGUExURd3d2AAAAJlCnKAAAAAMSURBVHjaYmAACDAAAAIAAU9tWeEAAAAASUVORK5CYII=);background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjEgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDMyRDZERkQ1MEE4MTFFQTlCNTJBOEQwQTM2ODZEQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDMyRDZERkU1MEE4MTFFQTlCNTJBOEQwQTM2ODZEQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0MzJENkRGQjUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0MzJENkRGQzUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PjdyLKIAAAAPSURBVHjaYnj16RNAgAEABZgCz/xXiToAAAAASUVORK5CYII=");background-image:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAIAAACQd1PeAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyVpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjEgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6ODRBOEI2NTI1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6ODRBOEI2NTM1MEI1MTFFQTlCNTJBOEQwQTM2ODZEQjgiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0MzJENkRGRjUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0MzJENkUwMDUwQTgxMUVBOUI1MkE4RDBBMzY4NkRCOCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pul87iAAAAAPSURBVHjaYrj17BlAgAEABUQCpxgONc4AAAAASUVORK5CYII=")}#header{min-height:150px;padding-right:310px}#header::after{height:147px;width:305px;background-size:305px 147px}} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/favicon.ico b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..1a4956e64705230122da8c19d762a7f8e6971533 GIT binary patch literal 111804 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 Pn5$Le$ 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 literal 0 HcmV?d00001 diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-dependencies.png b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-dependencies.png new file mode 100644 index 0000000000000000000000000000000000000000..ae09dafe005c1ea7f9b60665ebf68e93b72ba93f GIT binary patch literal 46703 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 <{)MSGH-uh$P+h2iw zQwov=oqUtHAsrYjZjIPnH0!|Z?ChdjZO7uenhg|@8xvd?Qt&5Flaa-KuI18t*1WPZ zEu8}V*rpoe*g)5HUGEqTbh3aj(+k^hl?I~m)Lq4e)YE9&h8L-4X7rbDy^X0~lIZ?h zoe)2$O2M&SAGaj$mPcm?h#Ip2g<7$2oP&z1!ACp!xCS@(Q25mM+Bfqmn_NZQAQ`?O zOvW$1fMLqg2fbLPJm#E zi8~b5fusP*+;;q_l32zPbuu;acGOp9vEgD;#JX;oBX1FfF zpSNo};V*e#lsWSzYz^JG+cL6 z{nA?25y}oGYq0WChBY*#*IT&lp2&5mJKz- zLhX7s^u4XqUVATLo{pP#b?;;F#o_qFm)yr<)ejQ)O*>4JG0Khwy)?Vjk}5US+ygYjXotkpxUMj4DRQe)kK0zG4xnI=ppSaMh4!8~ODF6Q|O3F3Un+_JQJQyQ1+JfoXm^eEJh zZE~-UN!Lw(ACS(>lTQ(@eJ5n@o~B;J!=i|KK9sF$i0sEKc}>1>ALyF$Bxq>u+5lA} zAdWdpk|uCJD+}-qy$G3`y-we^Ef;4uxBedWVV!KLXtr$ib@3tP>HI)&xlrX@AMPmG zazw}0;|mIxO_oP9cG3P*|ItgprD_{`LZwp&V=*3Mo6BC4y?}haA?-eAm4PPEc%Ti1 zVoFwtol7-r%3V6vnW2%yD$55==IWBs9?(uIrVP&1vfZ7ZeiDEwa~=ZvPT6sW<6u90 zlOgM&v6lM*Q^(+vCEVP=d0=cb3@__usb|`{xot?@?++Yrny|sg!LM^<%)IZ-> z94!$Rwgk&;aYK}qISsFdC~YpqdLl{kIe(m{9QO-z=Yorfdh{5u$6PJ4nCT^xC9n08 gvW$LA8Ja-VGaYVPD4NE%2mHHvP5Elp6{AQ02c5f+{r~^~ literal 0 HcmV?d00001 diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-error-trace-screenshot.png b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-error-trace-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..be65504ce915415c94ec3f36625c044deaedd59e GIT binary patch literal 69605 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 literal 0 HcmV?d00001 diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-error-trace.png b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-error-trace.png new file mode 100644 index 0000000000000000000000000000000000000000..4ccf454711fbc03b458879125906b336c11aae05 GIT binary patch literal 67467 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 J7Ctlf`#<@-eJ%h1 literal 0 HcmV?d00001 diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-trace-screenshot.png b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/images/zipkin-trace-screenshot.png new file mode 100644 index 0000000000000000000000000000000000000000..4e133364e896c7cb14f15679f359c319a65132cf GIT binary patch literal 53157 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 k&U*gL=l/g,">")}function t(e){return e.nodeName.toLowerCase()}function r(e,n){var t=e&&e.exec(n);return t&&0===t.index}function a(e){return k.test(e)}function i(e){var n,t,r,i,o=e.className+" ";if(o+=e.parentNode?e.parentNode.className:"",t=M.exec(o))return w(t[1])?t[1]:"no-highlight";for(o=o.split(/\s+/),n=0,r=o.length;r>n;n++)if(i=o[n],a(i)||w(i))return i}function o(e){var n,t={},r=Array.prototype.slice.call(arguments,1);for(n in e)t[n]=e[n];return r.forEach(function(e){for(n in e)t[n]=e[n]}),t}function c(e){var n=[];return function r(e,a){for(var i=e.firstChild;i;i=i.nextSibling)3===i.nodeType?a+=i.nodeValue.length:1===i.nodeType&&(n.push({event:"start",offset:a,node:i}),a=r(i,a),t(i).match(/br|hr|img|input/)||n.push({event:"stop",offset:a,node:i}));return a}(e,0),n}function u(e,r,a){function i(){return e.length&&r.length?e[0].offset!==r[0].offset?e[0].offset"}function c(e){l+=""}function u(e){("start"===e.event?o:c)(e.node)}for(var s=0,l="",f=[];e.length||r.length;){var g=i();if(l+=n(a.substring(s,g[0].offset)),s=g[0].offset,g===e){f.reverse().forEach(c);do u(g.splice(0,1)[0]),g=i();while(g===e&&g.length&&g[0].offset===s);f.reverse().forEach(o)}else"start"===g[0].event?f.push(g[0].node):f.pop(),u(g.splice(0,1)[0])}return l+n(a.substr(s))}function s(e){return e.v&&!e.cached_variants&&(e.cached_variants=e.v.map(function(n){return o(e,{v:null},n)})),e.cached_variants||e.eW&&[o(e)]||[e]}function l(e){function n(e){return e&&e.source||e}function t(t,r){return new RegExp(n(t),"m"+(e.cI?"i":"")+(r?"g":""))}function r(a,i){if(!a.compiled){if(a.compiled=!0,a.k=a.k||a.bK,a.k){var o={},c=function(n,t){e.cI&&(t=t.toLowerCase()),t.split(" ").forEach(function(e){var t=e.split("|");o[t[0]]=[n,t[1]?Number(t[1]):1]})};"string"==typeof a.k?c("keyword",a.k):B(a.k).forEach(function(e){c(e,a.k[e])}),a.k=o}a.lR=t(a.l||/\w+/,!0),i&&(a.bK&&(a.b="\\b("+a.bK.split(" ").join("|")+")\\b"),a.b||(a.b=/\B|\b/),a.bR=t(a.b),a.endSameAsBegin&&(a.e=a.b),a.e||a.eW||(a.e=/\B|\b/),a.e&&(a.eR=t(a.e)),a.tE=n(a.e)||"",a.eW&&i.tE&&(a.tE+=(a.e?"|":"")+i.tE)),a.i&&(a.iR=t(a.i)),null==a.r&&(a.r=1),a.c||(a.c=[]),a.c=Array.prototype.concat.apply([],a.c.map(function(e){return s("self"===e?a:e)})),a.c.forEach(function(e){r(e,a)}),a.starts&&r(a.starts,i);var u=a.c.map(function(e){return e.bK?"\\.?("+e.b+")\\.?":e.b}).concat([a.tE,a.i]).map(n).filter(Boolean);a.t=u.length?t(u.join("|"),!0):{exec:function(){return null}}}}r(e)}function f(e,t,a,i){function o(e){return new RegExp(e.replace(/[-\/\\^$*+?.()|[\]{}]/g,"\\$&"),"m")}function c(e,n){var t,a;for(t=0,a=n.c.length;a>t;t++)if(r(n.c[t].bR,e))return n.c[t].endSameAsBegin&&(n.c[t].eR=o(n.c[t].bR.exec(e)[0])),n.c[t]}function u(e,n){if(r(e.eR,n)){for(;e.endsParent&&e.parent;)e=e.parent;return e}return e.eW?u(e.parent,n):void 0}function s(e,n){return!a&&r(n.iR,e)}function p(e,n){var t=R.cI?n[0].toLowerCase():n[0];return e.k.hasOwnProperty(t)&&e.k[t]}function d(e,n,t,r){var a=r?"":j.classPrefix,i='',i+n+o}function h(){var e,t,r,a;if(!E.k)return n(k);for(a="",t=0,E.lR.lastIndex=0,r=E.lR.exec(k);r;)a+=n(k.substring(t,r.index)),e=p(E,r),e?(M+=e[1],a+=d(e[0],n(r[0]))):a+=n(r[0]),t=E.lR.lastIndex,r=E.lR.exec(k);return a+n(k.substr(t))}function b(){var e="string"==typeof E.sL;if(e&&!L[E.sL])return n(k);var t=e?f(E.sL,k,!0,B[E.sL]):g(k,E.sL.length?E.sL:void 0);return E.r>0&&(M+=t.r),e&&(B[E.sL]=t.top),d(t.language,t.value,!1,!0)}function v(){y+=null!=E.sL?b():h(),k=""}function m(e){y+=e.cN?d(e.cN,"",!0):"",E=Object.create(e,{parent:{value:E}})}function N(e,n){if(k+=e,null==n)return v(),0;var t=c(n,E);if(t)return t.skip?k+=n:(t.eB&&(k+=n),v(),t.rB||t.eB||(k=n)),m(t,n),t.rB?0:n.length;var r=u(E,n);if(r){var a=E;a.skip?k+=n:(a.rE||a.eE||(k+=n),v(),a.eE&&(k=n));do E.cN&&(y+=I),E.skip||E.sL||(M+=E.r),E=E.parent;while(E!==r.parent);return r.starts&&(r.endSameAsBegin&&(r.starts.eR=r.eR),m(r.starts,"")),a.rE?0:n.length}if(s(n,E))throw new Error('Illegal lexeme "'+n+'" for mode "'+(E.cN||"")+'"');return k+=n,n.length||1}var R=w(e);if(!R)throw new Error('Unknown language: "'+e+'"');l(R);var x,E=i||R,B={},y="";for(x=E;x!==R;x=x.parent)x.cN&&(y=d(x.cN,"",!0)+y);var k="",M=0;try{for(var C,A,S=0;;){if(E.t.lastIndex=S,C=E.t.exec(t),!C)break;A=N(t.substring(S,C.index),C[0]),S=C.index+A}for(N(t.substr(S)),x=E;x.parent;x=x.parent)x.cN&&(y+=I);return{r:M,value:y,language:e,top:E}}catch(O){if(O.message&&-1!==O.message.indexOf("Illegal"))return{r:0,value:n(t)};throw O}}function g(e,t){t=t||j.languages||B(L);var r={r:0,value:n(e)},a=r;return t.filter(w).filter(x).forEach(function(n){var t=f(n,e,!1);t.language=n,t.r>a.r&&(a=t),t.r>r.r&&(a=r,r=t)}),a.language&&(r.second_best=a),r}function p(e){return j.tabReplace||j.useBR?e.replace(C,function(e,n){return j.useBR&&"\n"===e?"
":j.tabReplace?n.replace(/\t/g,j.tabReplace):""}):e}function d(e,n,t){var r=n?y[n]:t,a=[e.trim()];return e.match(/\bhljs\b/)||a.push("hljs"),-1===e.indexOf(r)&&a.push(r),a.join(" ").trim()}function h(e){var n,t,r,o,s,l=i(e);a(l)||(j.useBR?(n=document.createElementNS("http://www.w3.org/1999/xhtml","div"),n.innerHTML=e.innerHTML.replace(/\n/g,"").replace(//g,"\n")):n=e,s=n.textContent,r=l?f(l,s,!0):g(s),t=c(n),t.length&&(o=document.createElementNS("http://www.w3.org/1999/xhtml","div"),o.innerHTML=r.value,r.value=u(t,c(o),s)),r.value=p(r.value),e.innerHTML=r.value,e.className=d(e.className,l,r.language),e.result={language:r.language,re:r.r},r.second_best&&(e.second_best={language:r.second_best.language,re:r.second_best.r}))}function b(e){j=o(j,e)}function v(){if(!v.called){v.called=!0;var e=document.querySelectorAll("pre code");E.forEach.call(e,h)}}function m(){addEventListener("DOMContentLoaded",v,!1),addEventListener("load",v,!1)}function N(n,t){var r=L[n]=t(e);r.aliases&&r.aliases.forEach(function(e){y[e]=n})}function R(){return B(L)}function w(e){return e=(e||"").toLowerCase(),L[e]||L[y[e]]}function x(e){var n=w(e);return n&&!n.disableAutodetect}var E=[],B=Object.keys,L={},y={},k=/^(no-?highlight|plain|text)$/i,M=/\blang(?:uage)?-([\w-]+)\b/i,C=/((^(<[^>]+>|\t|)+|(?:\n)))/gm,I="
",j={classPrefix:"hljs-",tabReplace:null,useBR:!1,languages:void 0};return e.highlight=f,e.highlightAuto=g,e.fixMarkup=p,e.highlightBlock=h,e.configure=b,e.initHighlighting=v,e.initHighlightingOnLoad=m,e.registerLanguage=N,e.listLanguages=R,e.getLanguage=w,e.autoDetection=x,e.inherit=o,e.IR="[a-zA-Z]\\w*",e.UIR="[a-zA-Z_]\\w*",e.NR="\\b\\d+(\\.\\d+)?",e.CNR="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",e.BNR="\\b(0b[01]+)",e.RSR="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",e.BE={b:"\\\\[\\s\\S]",r:0},e.ASM={cN:"string",b:"'",e:"'",i:"\\n",c:[e.BE]},e.QSM={cN:"string",b:'"',e:'"',i:"\\n",c:[e.BE]},e.PWM={b:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},e.C=function(n,t,r){var a=e.inherit({cN:"comment",b:n,e:t,c:[]},r||{});return a.c.push(e.PWM),a.c.push({cN:"doctag",b:"(?:TODO|FIXME|NOTE|BUG|XXX):",r:0}),a},e.CLCM=e.C("//","$"),e.CBCM=e.C("/\\*","\\*/"),e.HCM=e.C("#","$"),e.NM={cN:"number",b:e.NR,r:0},e.CNM={cN:"number",b:e.CNR,r:0},e.BNM={cN:"number",b:e.BNR,r:0},e.CSSNM={cN:"number",b:e.NR+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",r:0},e.RM={cN:"regexp",b:/\//,e:/\/[gimuy]*/,i:/\n/,c:[e.BE,{b:/\[/,e:/\]/,r:0,c:[e.BE]}]},e.TM={cN:"title",b:e.IR,r:0},e.UTM={cN:"title",b:e.UIR,r:0},e.METHOD_GUARD={b:"\\.\\s*"+e.UIR,r:0},e});hljs.registerLanguage("bash",function(e){var t={cN:"variable",v:[{b:/\$[\w\d#@][\w\d_]*/},{b:/\$\{(.*?)}/}]},s={cN:"string",b:/"/,e:/"/,c:[e.BE,t,{cN:"variable",b:/\$\(/,e:/\)/,c:[e.BE]}]},a={cN:"string",b:/'/,e:/'/};return{aliases:["sh","zsh"],l:/\b-?[a-z\._]+\b/,k:{keyword:"if then else elif fi for while in do done case esac function",literal:"true false",built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp",_:"-ne -eq -lt -gt -f -d -e -s -l -a"},c:[{cN:"meta",b:/^#![^\n]+sh\s*$/,r:10},{cN:"function",b:/\w[\w\d_]*\s*\(\s*\)\s*\{/,rB:!0,c:[e.inherit(e.TM,{b:/\w[\w\d_]*/})],r:0},e.HCM,s,a,t]}});hljs.registerLanguage("dockerfile",function(e){return{aliases:["docker"],cI:!0,k:"from maintainer expose env arg user onbuild stopsignal",c:[e.HCM,e.ASM,e.QSM,e.NM,{bK:"run cmd entrypoint volume add copy workdir label healthcheck shell",starts:{e:/[^\\]\n/,sL:"bash"}}],i:")?[^\s\(]+(\s+[^\s\(]+)\s*=/,r:5,c:[{b:e.UIR+"\\s*\\(",rB:!0,r:0,c:[e.UTM]},{cN:"type",b://,k:"reified",r:0},{cN:"params",b:/\(/,e:/\)/,endsParent:!0,k:t,r:0,c:[{b:/:/,e:/[=,\/]/,eW:!0,c:[{cN:"type",b:e.UIR},e.CLCM,e.CBCM],r:0},e.CLCM,e.CBCM,s,l,c,e.CNM]},e.CBCM]},{cN:"class",bK:"class interface trait",e:/[:\{(]|$/,eE:!0,i:"extends implements",c:[{bK:"public protected internal private constructor"},e.UTM,{cN:"type",b://,eB:!0,eE:!0,r:0},{cN:"type",b:/[,:]\s*/,e:/[<\(,]|$/,eB:!0,rE:!0},s,l]},c,{cN:"meta",b:"^#!/usr/bin/env",e:"$",i:"\n"},o]}});hljs.registerLanguage("java",function(e){var a="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",t=a+"(<"+a+"(\\s*,\\s*"+a+")*>)?",r="false synchronized int abstract float private char boolean var static null if const for true while long strictfp finally protected import native final void enum else break transient catch instanceof byte super volatile case assert short package default double public try this switch continue throws protected public private module requires exports do",s="\\b(0[bB]([01]+[01_]+[01]+|[01]+)|0[xX]([a-fA-F0-9]+[a-fA-F0-9_]+[a-fA-F0-9]+|[a-fA-F0-9]+)|(([\\d]+[\\d_]+[\\d]+|[\\d]+)(\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))?|\\.([\\d]+[\\d_]+[\\d]+|[\\d]+))([eE][-+]?\\d+)?)[lLfF]?",c={cN:"number",b:s,r:0};return{aliases:["jsp"],k:r,i:/<\/|#/,c:[e.C("/\\*\\*","\\*/",{r:0,c:[{b:/\w+@/,r:0},{cN:"doctag",b:"@[A-Za-z]+"}]}),e.CLCM,e.CBCM,e.ASM,e.QSM,{cN:"class",bK:"class interface",e:/[{;=]/,eE:!0,k:"class interface",i:/[:"\[\]]/,c:[{bK:"extends implements"},e.UTM]},{bK:"new throw return else",r:0},{cN:"function",b:"("+t+"\\s+)+"+e.UIR+"\\s*\\(",rB:!0,e:/[{;=]/,eE:!0,k:r,c:[{b:e.UIR+"\\s*\\(",rB:!0,r:0,c:[e.UTM]},{cN:"params",b:/\(/,e:/\)/,k:r,r:0,c:[e.ASM,e.QSM,e.CNM,e.CBCM]},e.CLCM,e.CBCM]},c,{cN:"meta",b:"@[A-Za-z]+"}]}});hljs.registerLanguage("xml",function(s){var e="[A-Za-z0-9\\._:-]+",t={eW:!0,i:/`]+/}]}]}]};return{aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist"],cI:!0,c:[{cN:"meta",b:"",r:10,c:[{b:"\\[",e:"\\]"}]},s.C("",{r:10}),{b:"<\\!\\[CDATA\\[",e:"\\]\\]>",r:10},{cN:"meta",b:/<\?xml/,e:/\?>/,r:10},{b:/<\?(php)?/,e:/\?>/,sL:"php",c:[{b:"/\\*",e:"\\*/",skip:!0},{b:'b"',e:'"',skip:!0},{b:"b'",e:"'",skip:!0},s.inherit(s.ASM,{i:null,cN:null,c:null,skip:!0}),s.inherit(s.QSM,{i:null,cN:null,c:null,skip:!0})]},{cN:"tag",b:"|$)",e:">",k:{name:"style"},c:[t],starts:{e:"",rE:!0,sL:["css","xml"]}},{cN:"tag",b:"|$)",e:">",k:{name:"script"},c:[t],starts:{e:"",rE:!0,sL:["actionscript","javascript","handlebars","xml"]}},{cN:"tag",b:"",c:[{cN:"name",b:/[^\/><\s]+/,r:0},t]}]}});hljs.registerLanguage("properties",function(r){var t="[ \\t\\f]*",e="[ \\t\\f]+",s="("+t+"[:=]"+t+"|"+e+")",n="([^\\\\\\W:= \\t\\f\\n]|\\\\.)+",a="([^\\\\:= \\t\\f\\n]|\\\\.)+",c={e:s,r:0,starts:{cN:"string",e:/$/,r:0,c:[{b:"\\\\\\n"}]}};return{cI:!0,i:/\S/,c:[r.C("^\\s*[!#]","$"),{b:n+s,rB:!0,c:[{cN:"attr",b:n,endsParent:!0,r:0}],starts:c},{b:a+s,rB:!0,r:0,c:[{cN:"meta",b:a,endsParent:!0,r:0}],starts:c},{cN:"attr",r:0,b:a+t+"$"}]}});hljs.registerLanguage("diff",function(e){return{aliases:["patch"],c:[{cN:"meta",r:10,v:[{b:/^@@ +\-\d+,\d+ +\+\d+,\d+ +@@$/},{b:/^\*\*\* +\d+,\d+ +\*\*\*\*$/},{b:/^\-\-\- +\d+,\d+ +\-\-\-\-$/}]},{cN:"comment",v:[{b:/Index: /,e:/$/},{b:/={3,}/,e:/$/},{b:/^\-{3}/,e:/$/},{b:/^\*{3} /,e:/$/},{b:/^\+{3}/,e:/$/},{b:/\*{5}/,e:/\*{5}$/}]},{cN:"addition",b:"^\\+",e:"$"},{cN:"deletion",b:"^\\-",e:"$"},{cN:"addition",b:"^\\!",e:"$"}]}});hljs.registerLanguage("shell",function(s){return{aliases:["console"],c:[{cN:"meta",b:"^\\s{0,3}[\\w\\d\\[\\]()@-]*[>%$#]",starts:{e:"$",sL:"bash"}}]}});hljs.registerLanguage("asciidoc",function(e){return{aliases:["adoc"],c:[e.C("^/{4,}\\n","\\n/{4,}$",{r:10}),e.C("^//","$",{r:0}),{cN:"title",b:"^\\.\\w.*$"},{b:"^[=\\*]{4,}\\n",e:"\\n^[=\\*]{4,}$",r:10},{cN:"section",r:10,v:[{b:"^(={1,5}) .+?( \\1)?$"},{b:"^[^\\[\\]\\n]+?\\n[=\\-~\\^\\+]{2,}$"}]},{cN:"meta",b:"^:.+?:",e:"\\s",eE:!0,r:10},{cN:"meta",b:"^\\[.+?\\]$",r:0},{cN:"quote",b:"^_{4,}\\n",e:"\\n_{4,}$",r:10},{cN:"code",b:"^[\\-\\.]{4,}\\n",e:"\\n[\\-\\.]{4,}$",r:10},{b:"^\\+{4,}\\n",e:"\\n\\+{4,}$",c:[{b:"<",e:">",sL:"xml",r:0}],r:10},{cN:"bullet",b:"^(\\*+|\\-+|\\.+|[^\\n]+?::)\\s+"},{cN:"symbol",b:"^(NOTE|TIP|IMPORTANT|WARNING|CAUTION):\\s+",r:10},{cN:"strong",b:"\\B\\*(?![\\*\\s])",e:"(\\n{2}|\\*)",c:[{b:"\\\\*\\w",r:0}]},{cN:"emphasis",b:"\\B'(?!['\\s])",e:"(\\n{2}|')",c:[{b:"\\\\'\\w",r:0}],r:0},{cN:"emphasis",b:"_(?![_\\s])",e:"(\\n{2}|_)",r:0},{cN:"string",v:[{b:"``.+?''"},{b:"`.+?'"}]},{cN:"code",b:"(`.+?`|\\+.+?\\+)",r:0},{cN:"code",b:"^[ \\t]",e:"$",r:0},{b:"^'{3,}[ \\t]*$",r:10},{b:"(link:)?(http|https|ftp|file|irc|image:?):\\S+\\[.*?\\]",rB:!0,c:[{b:"(link|image:?):",r:0},{cN:"link",b:"\\w",e:"[^\\[]+",r:0},{cN:"string",b:"\\[",e:"\\]",eB:!0,eE:!0,r:0}],r:10}]}});hljs.registerLanguage("aspectj",function(e){var t="false synchronized int abstract float private char boolean static null if const for true while long throw strictfp finally protected import native final return void enum else extends implements break transient new catch instanceof byte super volatile case assert short package default double public try this switch continue throws privileged aspectOf adviceexecution proceed cflowbelow cflow initialization preinitialization staticinitialization withincode target within execution getWithinTypeName handler thisJoinPoint thisJoinPointStaticPart thisEnclosingJoinPointStaticPart declare parents warning error soft precedence thisAspectInstance",i="get set args call";return{k:t,i:/<\/|#/,c:[e.C("/\\*\\*","\\*/",{r:0,c:[{b:/\w+@/,r:0},{cN:"doctag",b:"@[A-Za-z]+"}]}),e.CLCM,e.CBCM,e.ASM,e.QSM,{cN:"class",bK:"aspect",e:/[{;=]/,eE:!0,i:/[:;"\[\]]/,c:[{bK:"extends implements pertypewithin perthis pertarget percflowbelow percflow issingleton"},e.UTM,{b:/\([^\)]*/,e:/[)]+/,k:t+" "+i,eE:!1}]},{cN:"class",bK:"class interface",e:/[{;=]/,eE:!0,r:0,k:"class interface",i:/[:"\[\]]/,c:[{bK:"extends implements"},e.UTM]},{bK:"pointcut after before around throwing returning",e:/[)]/,eE:!1,i:/["\[\]]/,c:[{b:e.UIR+"\\s*\\(",rB:!0,c:[e.UTM]}]},{b:/[:]/,rB:!0,e:/[{;]/,r:0,eE:!1,k:t,i:/["\[\]]/,c:[{b:e.UIR+"\\s*\\(",k:t+" "+i,r:0},e.QSM]},{bK:"new throw",r:0},{cN:"function",b:/\w+ +\w+(\.)?\w+\s*\([^\)]*\)\s*((throws)[\w\s,]+)?[\{;]/,rB:!0,e:/[{;=]/,k:t,eE:!0,c:[{b:e.UIR+"\\s*\\(",rB:!0,r:0,c:[e.UTM]},{cN:"params",b:/\(/,e:/\)/,r:0,k:t,c:[e.ASM,e.QSM,e.CNM,e.CBCM]},e.CLCM,e.CBCM]},e.CNM,{cN:"meta",b:"@[A-Za-z]+"}]}});hljs.registerLanguage("gradle",function(e){return{cI:!0,k:{keyword:"task project allprojects subprojects artifacts buildscript configurations dependencies repositories sourceSets description delete from into include exclude source classpath destinationDir includes options sourceCompatibility targetCompatibility group flatDir doLast doFirst flatten todir fromdir ant def abstract break case catch continue default do else extends final finally for if implements instanceof native new private protected public return static switch synchronized throw throws transient try volatile while strictfp package import false null super this true antlrtask checkstyle codenarc copy boolean byte char class double float int interface long short void compile runTime file fileTree abs any append asList asWritable call collect compareTo count div dump each eachByte eachFile eachLine every find findAll flatten getAt getErr getIn getOut getText grep immutable inject inspect intersect invokeMethods isCase join leftShift minus multiply newInputStream newOutputStream newPrintWriter newReader newWriter next plus pop power previous print println push putAt read readBytes readLines reverse reverseEach round size sort splitEachLine step subMap times toInteger toList tokenize upto waitForOrKill withPrintWriter withReader withStream withWriter withWriterAppend write writeLine"},c:[e.CLCM,e.CBCM,e.ASM,e.QSM,e.NM,e.RM]}});hljs.registerLanguage("json",function(e){var i={literal:"true false null"},n=[e.QSM,e.CNM],r={e:",",eW:!0,eE:!0,c:n,k:i},t={b:"{",e:"}",c:[{cN:"attr",b:/"/,e:/"/,c:[e.BE],i:"\\n"},e.inherit(r,{b:/:/})],i:"\\S"},c={b:"\\[",e:"\\]",c:[e.inherit(r)],i:"\\S"};return n.splice(n.length,0,t,c),{c:n,k:i,i:"\\S"}});hljs.registerLanguage("sql",function(e){var t=e.C("--","$");return{cI:!0,i:/[<>{}*]/,c:[{bK:"begin end start commit rollback savepoint lock alter create drop rename call delete do handler insert load replace select truncate update set show pragma grant merge describe use explain help declare prepare execute deallocate release unlock purge reset change stop analyze cache flush optimize repair kill install uninstall checksum restore check backup revoke comment with",e:/;/,eW:!0,l:/[\w\.]+/,k:{keyword:"as abort abs absolute acc acce accep accept access accessed accessible account acos action activate add addtime admin administer advanced advise aes_decrypt aes_encrypt after agent aggregate ali alia alias allocate allow alter always analyze ancillary and any anydata anydataset anyschema anytype apply archive archived archivelog are as asc ascii asin assembly assertion associate asynchronous at atan atn2 attr attri attrib attribu attribut attribute attributes audit authenticated authentication authid authors auto autoallocate autodblink autoextend automatic availability avg backup badfile basicfile before begin beginning benchmark between bfile bfile_base big bigfile bin binary_double binary_float binlog bit_and bit_count bit_length bit_or bit_xor bitmap blob_base block blocksize body both bound buffer_cache buffer_pool build bulk by byte byteordermark bytes cache caching call calling cancel capacity cascade cascaded case cast catalog category ceil ceiling chain change changed char_base char_length character_length characters characterset charindex charset charsetform charsetid check checksum checksum_agg child choose chr chunk class cleanup clear client clob clob_base clone close cluster_id cluster_probability cluster_set clustering coalesce coercibility col collate collation collect colu colum column column_value columns columns_updated comment commit compact compatibility compiled complete composite_limit compound compress compute concat concat_ws concurrent confirm conn connec connect connect_by_iscycle connect_by_isleaf connect_by_root connect_time connection consider consistent constant constraint constraints constructor container content contents context contributors controlfile conv convert convert_tz corr corr_k corr_s corresponding corruption cos cost count count_big counted covar_pop covar_samp cpu_per_call cpu_per_session crc32 create creation critical cross cube cume_dist curdate current current_date current_time current_timestamp current_user cursor curtime customdatum cycle data database databases datafile datafiles datalength date_add date_cache date_format date_sub dateadd datediff datefromparts datename datepart datetime2fromparts day day_to_second dayname dayofmonth dayofweek dayofyear days db_role_change dbtimezone ddl deallocate declare decode decompose decrement decrypt deduplicate def defa defau defaul default defaults deferred defi defin define degrees delayed delegate delete delete_all delimited demand dense_rank depth dequeue des_decrypt des_encrypt des_key_file desc descr descri describ describe descriptor deterministic diagnostics difference dimension direct_load directory disable disable_all disallow disassociate discardfile disconnect diskgroup distinct distinctrow distribute distributed div do document domain dotnet double downgrade drop dumpfile duplicate duration each edition editionable editions element ellipsis else elsif elt empty enable enable_all enclosed encode encoding encrypt end end-exec endian enforced engine engines enqueue enterprise entityescaping eomonth error errors escaped evalname evaluate event eventdata events except exception exceptions exchange exclude excluding execu execut execute exempt exists exit exp expire explain export export_set extended extent external external_1 external_2 externally extract failed failed_login_attempts failover failure far fast feature_set feature_value fetch field fields file file_name_convert filesystem_like_logging final finish first first_value fixed flash_cache flashback floor flush following follows for forall force foreign form forma format found found_rows freelist freelists freepools fresh from from_base64 from_days ftp full function general generated get get_format get_lock getdate getutcdate global global_name globally go goto grant grants greatest group group_concat group_id grouping grouping_id groups gtid_subtract guarantee guard handler hash hashkeys having hea head headi headin heading heap help hex hierarchy high high_priority hosts hour http id ident_current ident_incr ident_seed identified identity idle_time if ifnull ignore iif ilike ilm immediate import in include including increment index indexes indexing indextype indicator indices inet6_aton inet6_ntoa inet_aton inet_ntoa infile initial initialized initially initrans inmemory inner innodb input insert install instance instantiable instr interface interleaved intersect into invalidate invisible is is_free_lock is_ipv4 is_ipv4_compat is_not is_not_null is_used_lock isdate isnull isolation iterate java join json json_exists keep keep_duplicates key keys kill language large last last_day last_insert_id last_value lax lcase lead leading least leaves left len lenght length less level levels library like like2 like4 likec limit lines link list listagg little ln load load_file lob lobs local localtime localtimestamp locate locator lock locked log log10 log2 logfile logfiles logging logical logical_reads_per_call logoff logon logs long loop low low_priority lower lpad lrtrim ltrim main make_set makedate maketime managed management manual map mapping mask master master_pos_wait match matched materialized max maxextents maximize maxinstances maxlen maxlogfiles maxloghistory maxlogmembers maxsize maxtrans md5 measures median medium member memcompress memory merge microsecond mid migration min minextents minimum mining minus minute minvalue missing mod mode model modification modify module monitoring month months mount move movement multiset mutex name name_const names nan national native natural nav nchar nclob nested never new newline next nextval no no_write_to_binlog noarchivelog noaudit nobadfile nocheck nocompress nocopy nocycle nodelay nodiscardfile noentityescaping noguarantee nokeep nologfile nomapping nomaxvalue nominimize nominvalue nomonitoring none noneditionable nonschema noorder nopr nopro noprom nopromp noprompt norely noresetlogs noreverse normal norowdependencies noschemacheck noswitch not nothing notice notnull notrim novalidate now nowait nth_value nullif nulls num numb numbe nvarchar nvarchar2 object ocicoll ocidate ocidatetime ociduration ociinterval ociloblocator ocinumber ociref ocirefcursor ocirowid ocistring ocitype oct octet_length of off offline offset oid oidindex old on online only opaque open operations operator optimal optimize option optionally or oracle oracle_date oradata ord ordaudio orddicom orddoc order ordimage ordinality ordvideo organization orlany orlvary out outer outfile outline output over overflow overriding package pad parallel parallel_enable parameters parent parse partial partition partitions pascal passing password password_grace_time password_lock_time password_reuse_max password_reuse_time password_verify_function patch path patindex pctincrease pctthreshold pctused pctversion percent percent_rank percentile_cont percentile_disc performance period period_add period_diff permanent physical pi pipe pipelined pivot pluggable plugin policy position post_transaction pow power pragma prebuilt precedes preceding precision prediction prediction_cost prediction_details prediction_probability prediction_set prepare present preserve prior priority private private_sga privileges procedural procedure procedure_analyze processlist profiles project prompt protection public publishingservername purge quarter query quick quiesce quota quotename radians raise rand range rank raw read reads readsize rebuild record records recover recovery recursive recycle redo reduced ref reference referenced references referencing refresh regexp_like register regr_avgx regr_avgy regr_count regr_intercept regr_r2 regr_slope regr_sxx regr_sxy reject rekey relational relative relaylog release release_lock relies_on relocate rely rem remainder rename repair repeat replace replicate replication required reset resetlogs resize resource respect restore restricted result result_cache resumable resume retention return returning returns reuse reverse revoke right rlike role roles rollback rolling rollup round row row_count rowdependencies rowid rownum rows rtrim rules safe salt sample save savepoint sb1 sb2 sb4 scan schema schemacheck scn scope scroll sdo_georaster sdo_topo_geometry search sec_to_time second section securefile security seed segment select self sequence sequential serializable server servererror session session_user sessions_per_user set sets settings sha sha1 sha2 share shared shared_pool short show shrink shutdown si_averagecolor si_colorhistogram si_featurelist si_positionalcolor si_stillimage si_texture siblings sid sign sin size size_t sizes skip slave sleep smalldatetimefromparts smallfile snapshot some soname sort soundex source space sparse spfile split sql sql_big_result sql_buffer_result sql_cache sql_calc_found_rows sql_small_result sql_variant_property sqlcode sqldata sqlerror sqlname sqlstate sqrt square standalone standby start starting startup statement static statistics stats_binomial_test stats_crosstab stats_ks_test stats_mode stats_mw_test stats_one_way_anova stats_t_test_ stats_t_test_indep stats_t_test_one stats_t_test_paired stats_wsr_test status std stddev stddev_pop stddev_samp stdev stop storage store stored str str_to_date straight_join strcmp strict string struct stuff style subdate subpartition subpartitions substitutable substr substring subtime subtring_index subtype success sum suspend switch switchoffset switchover sync synchronous synonym sys sys_xmlagg sysasm sysaux sysdate sysdatetimeoffset sysdba sysoper system system_user sysutcdatetime table tables tablespace tan tdo template temporary terminated tertiary_weights test than then thread through tier ties time time_format time_zone timediff timefromparts timeout timestamp timestampadd timestampdiff timezone_abbr timezone_minute timezone_region to to_base64 to_date to_days to_seconds todatetimeoffset trace tracking transaction transactional translate translation treat trigger trigger_nestlevel triggers trim truncate try_cast try_convert try_parse type ub1 ub2 ub4 ucase unarchived unbounded uncompress under undo unhex unicode uniform uninstall union unique unix_timestamp unknown unlimited unlock unnest unpivot unrecoverable unsafe unsigned until untrusted unusable unused update updated upgrade upped upper upsert url urowid usable usage use use_stored_outlines user user_data user_resources users using utc_date utc_timestamp uuid uuid_short validate validate_password_strength validation valist value values var var_samp varcharc vari varia variab variabl variable variables variance varp varraw varrawc varray verify version versions view virtual visible void wait wallet warning warnings week weekday weekofyear wellformed when whene whenev wheneve whenever where while whitespace with within without work wrapped xdb xml xmlagg xmlattributes xmlcast xmlcolattval xmlelement xmlexists xmlforest xmlindex xmlnamespaces xmlpi xmlquery xmlroot xmlschema xmlserialize xmltable xmltype xor year year_to_month years yearweek",literal:"true false null unknown",built_in:"array bigint binary bit blob bool boolean char character date dec decimal float int int8 integer interval number numeric real record serial serial8 smallint text time timestamp varchar varying void"},c:[{cN:"string",b:"'",e:"'",c:[e.BE,{b:"''"}]},{cN:"string",b:'"',e:'"',c:[e.BE,{b:'""'}]},{cN:"string",b:"`",e:"`",c:[e.BE]},e.CNM,e.CBCM,t,e.HCM]},e.CBCM,t,e.HCM]}});hljs.registerLanguage("go",function(e){var t={keyword:"break default func interface select case map struct chan else goto package switch const fallthrough if range type continue for import return var go defer bool byte complex64 complex128 float32 float64 int8 int16 int32 int64 string uint8 uint16 uint32 uint64 int uint uintptr rune",literal:"true false iota nil",built_in:"append cap close complex copy imag len make new panic print println real recover delete"};return{aliases:["golang"],k:t,i:"",rB:!0,e:"\\s*=>",c:[{cN:"params",v:[{b:r},{b:/\(\s*\)/},{b:/\(/,e:/\)/,eB:!0,eE:!0,k:t,c:s}]}]},{b://,sL:"xml",c:[{b:/<\w+\s*\/>/,skip:!0},{b:/<\w+/,e:/(\/\w+|\w+\/)>/,skip:!0,c:[{b:/<\w+\s*\/>/,skip:!0},"self"]}]}],r:0},{cN:"function",bK:"function",e:/\{/,eE:!0,c:[e.inherit(e.TM,{b:r}),{cN:"params",b:/\(/,e:/\)/,eB:!0,eE:!0,c:s}],i:/\[|%/},{b:/\$[(.]/},e.METHOD_GUARD,{cN:"class",bK:"class",e:/[{;=]/,eE:!0,i:/[:"\[\]]/,c:[{bK:"extends"},e.UTM]},{bK:"constructor",e:/\{/,eE:!0}],i:/#(?!!)/}}); \ No newline at end of file diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/a11y-dark.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/a11y-dark.min.css new file mode 100644 index 00000000..b93b742a --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/a11y-dark.min.css @@ -0,0 +1,99 @@ +/* a11y-dark theme */ +/* Based on the Tomorrow Night Eighties theme: https://github.com/isagalaev/highlight.js/blob/master/src/styles/tomorrow-night-eighties.css */ +/* @author: ericwbailey */ + +/* Comment */ +.hljs-comment, +.hljs-quote { + color: #d4d0ab; +} + +/* Red */ +.hljs-variable, +.hljs-template-variable, +.hljs-tag, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class, +.hljs-regexp, +.hljs-deletion { + color: #ffa07a; +} + +/* Orange */ +.hljs-number, +.hljs-built_in, +.hljs-builtin-name, +.hljs-literal, +.hljs-type, +.hljs-params, +.hljs-meta, +.hljs-link { + color: #f5ab35; +} + +/* Yellow */ +.hljs-attribute { + color: #ffd700; +} + +/* Green */ +.hljs-string, +.hljs-symbol, +.hljs-bullet, +.hljs-addition { + color: #abe338; +} + +/* Blue */ +.hljs-title, +.hljs-section { + color: #00e0e0; +} + +/* Purple */ +.hljs-keyword, +.hljs-selector-tag { + color: #dcc6e0; +} + +.hljs { + display: block; + overflow-x: auto; + background: #2b2b2b; + color: #f8f8f2; + padding: 0.5em; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +@media screen and (-ms-high-contrast: active) { + .hljs-addition, + .hljs-attribute, + .hljs-built_in, + .hljs-builtin-name, + .hljs-bullet, + .hljs-comment, + .hljs-link, + .hljs-literal, + .hljs-meta, + .hljs-number, + .hljs-params, + .hljs-string, + .hljs-symbol, + .hljs-type, + .hljs-quote { + color: highlight; + } + + .hljs-keyword, + .hljs-selector-tag { + font-weight: bold; + } +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/an-old-hope.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/an-old-hope.min.css new file mode 100644 index 00000000..a6d56f4b --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/an-old-hope.min.css @@ -0,0 +1,89 @@ +/* + +An Old Hope – Star Wars Syntax (c) Gustavo Costa +Original theme - Ocean Dark Theme – by https://github.com/gavsiu +Based on Jesse Leite's Atom syntax theme 'An Old Hope' – https://github.com/JesseLeite/an-old-hope-syntax-atom + +*/ + +/* Death Star Comment */ +.hljs-comment, +.hljs-quote +{ + color: #B6B18B; +} + +/* Darth Vader */ +.hljs-variable, +.hljs-template-variable, +.hljs-tag, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class, +.hljs-regexp, +.hljs-deletion +{ + color: #EB3C54; +} + +/* Threepio */ +.hljs-number, +.hljs-built_in, +.hljs-builtin-name, +.hljs-literal, +.hljs-type, +.hljs-params, +.hljs-meta, +.hljs-link +{ + color: #E7CE56; +} + +/* Luke Skywalker */ +.hljs-attribute +{ + color: #EE7C2B; +} + +/* Obi Wan Kenobi */ +.hljs-string, +.hljs-symbol, +.hljs-bullet, +.hljs-addition +{ + color: #4FB4D7; +} + +/* Yoda */ +.hljs-title, +.hljs-section +{ + color: #78BB65; +} + +/* Mace Windu */ +.hljs-keyword, +.hljs-selector-tag +{ + color: #B45EA4; +} + +/* Millenium Falcon */ +.hljs +{ + display: block; + overflow-x: auto; + background: #1C1D21; + color: #c0c5ce; + padding: 0.5em; +} + +.hljs-emphasis +{ + font-style: italic; +} + +.hljs-strong +{ + font-weight: bold; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-dark-reasonable.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-dark-reasonable.min.css new file mode 100644 index 00000000..fd41c996 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-dark-reasonable.min.css @@ -0,0 +1,77 @@ +/* + +Atom One Dark With support for ReasonML by Gidi Morris, based off work by Daniel Gamage + +Original One Dark Syntax theme from https://github.com/atom/one-dark-syntax + +*/ +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + line-height: 1.3em; + color: #abb2bf; + background: #282c34; + border-radius: 5px; +} +.hljs-keyword, .hljs-operator { + color: #F92672; +} +.hljs-pattern-match { + color: #F92672; +} +.hljs-pattern-match .hljs-constructor { + color: #61aeee; +} +.hljs-function { + color: #61aeee; +} +.hljs-function .hljs-params { + color: #A6E22E; +} +.hljs-function .hljs-params .hljs-typing { + color: #FD971F; +} +.hljs-module-access .hljs-module { + color: #7e57c2; +} +.hljs-constructor { + color: #e2b93d; +} +.hljs-constructor .hljs-string { + color: #9CCC65; +} +.hljs-comment, .hljs-quote { + color: #b18eb1; + font-style: italic; +} +.hljs-doctag, .hljs-formula { + color: #c678dd; +} +.hljs-section, .hljs-name, .hljs-selector-tag, .hljs-deletion, .hljs-subst { + color: #e06c75; +} +.hljs-literal { + color: #56b6c2; +} +.hljs-string, .hljs-regexp, .hljs-addition, .hljs-attribute, .hljs-meta-string { + color: #98c379; +} +.hljs-built_in, .hljs-class .hljs-title { + color: #e6c07b; +} +.hljs-attr, .hljs-variable, .hljs-template-variable, .hljs-type, .hljs-selector-class, .hljs-selector-attr, .hljs-selector-pseudo, .hljs-number { + color: #d19a66; +} +.hljs-symbol, .hljs-bullet, .hljs-link, .hljs-meta, .hljs-selector-id, .hljs-title { + color: #61aeee; +} +.hljs-emphasis { + font-style: italic; +} +.hljs-strong { + font-weight: bold; +} +.hljs-link { + text-decoration: underline; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-dark.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-dark.min.css new file mode 100644 index 00000000..1616aafe --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-dark.min.css @@ -0,0 +1,96 @@ +/* + +Atom One Dark by Daniel Gamage +Original One Dark Syntax theme from https://github.com/atom/one-dark-syntax + +base: #282c34 +mono-1: #abb2bf +mono-2: #818896 +mono-3: #5c6370 +hue-1: #56b6c2 +hue-2: #61aeee +hue-3: #c678dd +hue-4: #98c379 +hue-5: #e06c75 +hue-5-2: #be5046 +hue-6: #d19a66 +hue-6-2: #e6c07b + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: #abb2bf; + background: #282c34; +} + +.hljs-comment, +.hljs-quote { + color: #5c6370; + font-style: italic; +} + +.hljs-doctag, +.hljs-keyword, +.hljs-formula { + color: #c678dd; +} + +.hljs-section, +.hljs-name, +.hljs-selector-tag, +.hljs-deletion, +.hljs-subst { + color: #e06c75; +} + +.hljs-literal { + color: #56b6c2; +} + +.hljs-string, +.hljs-regexp, +.hljs-addition, +.hljs-attribute, +.hljs-meta-string { + color: #98c379; +} + +.hljs-built_in, +.hljs-class .hljs-title { + color: #e6c07b; +} + +.hljs-attr, +.hljs-variable, +.hljs-template-variable, +.hljs-type, +.hljs-selector-class, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-number { + color: #d19a66; +} + +.hljs-symbol, +.hljs-bullet, +.hljs-link, +.hljs-meta, +.hljs-selector-id, +.hljs-title { + color: #61aeee; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-link { + text-decoration: underline; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-light.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-light.min.css new file mode 100644 index 00000000..d5bd1d2a --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/atom-one-light.min.css @@ -0,0 +1,96 @@ +/* + +Atom One Light by Daniel Gamage +Original One Light Syntax theme from https://github.com/atom/one-light-syntax + +base: #fafafa +mono-1: #383a42 +mono-2: #686b77 +mono-3: #a0a1a7 +hue-1: #0184bb +hue-2: #4078f2 +hue-3: #a626a4 +hue-4: #50a14f +hue-5: #e45649 +hue-5-2: #c91243 +hue-6: #986801 +hue-6-2: #c18401 + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: #383a42; + background: #fafafa; +} + +.hljs-comment, +.hljs-quote { + color: #a0a1a7; + font-style: italic; +} + +.hljs-doctag, +.hljs-keyword, +.hljs-formula { + color: #a626a4; +} + +.hljs-section, +.hljs-name, +.hljs-selector-tag, +.hljs-deletion, +.hljs-subst { + color: #e45649; +} + +.hljs-literal { + color: #0184bb; +} + +.hljs-string, +.hljs-regexp, +.hljs-addition, +.hljs-attribute, +.hljs-meta-string { + color: #50a14f; +} + +.hljs-built_in, +.hljs-class .hljs-title { + color: #c18401; +} + +.hljs-attr, +.hljs-variable, +.hljs-template-variable, +.hljs-type, +.hljs-selector-class, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-number { + color: #986801; +} + +.hljs-symbol, +.hljs-bullet, +.hljs-link, +.hljs-meta, +.hljs-selector-id, +.hljs-title { + color: #4078f2; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-link { + text-decoration: underline; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/dracula.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/dracula.min.css new file mode 100644 index 00000000..578f0b40 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/dracula.min.css @@ -0,0 +1,76 @@ +/* + +Dracula Theme v1.2.0 + +https://github.com/zenorocha/dracula-theme + +Copyright 2015, All rights reserved + +Code licensed under the MIT license +https://zenorocha.mit-license.org/ + +@author Éverton Ribeiro +@author Zeno Rocha + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #282a36; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-literal, +.hljs-section, +.hljs-link { + color: #8be9fd; +} + +.hljs-function .hljs-keyword { + color: #ff79c6; +} + +.hljs, +.hljs-subst { + color: #f8f8f2; +} + +.hljs-string, +.hljs-title, +.hljs-name, +.hljs-type, +.hljs-attribute, +.hljs-symbol, +.hljs-bullet, +.hljs-addition, +.hljs-variable, +.hljs-template-tag, +.hljs-template-variable { + color: #f1fa8c; +} + +.hljs-comment, +.hljs-quote, +.hljs-deletion, +.hljs-meta { + color: #6272a4; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-literal, +.hljs-title, +.hljs-section, +.hljs-doctag, +.hljs-type, +.hljs-name, +.hljs-strong { + font-weight: bold; +} + +.hljs-emphasis { + font-style: italic; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/github.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/github.min.css new file mode 100644 index 00000000..791932b8 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/github.min.css @@ -0,0 +1,99 @@ +/* + +github.com style (c) Vasily Polovnyov + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: #333; + background: #f8f8f8; +} + +.hljs-comment, +.hljs-quote { + color: #998; + font-style: italic; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-subst { + color: #333; + font-weight: bold; +} + +.hljs-number, +.hljs-literal, +.hljs-variable, +.hljs-template-variable, +.hljs-tag .hljs-attr { + color: #008080; +} + +.hljs-string, +.hljs-doctag { + color: #d14; +} + +.hljs-title, +.hljs-section, +.hljs-selector-id { + color: #900; + font-weight: bold; +} + +.hljs-subst { + font-weight: normal; +} + +.hljs-type, +.hljs-class .hljs-title { + color: #458; + font-weight: bold; +} + +.hljs-tag, +.hljs-name, +.hljs-attribute { + color: #000080; + font-weight: normal; +} + +.hljs-regexp, +.hljs-link { + color: #009926; +} + +.hljs-symbol, +.hljs-bullet { + color: #990073; +} + +.hljs-built_in, +.hljs-builtin-name { + color: #0086b3; +} + +.hljs-meta { + color: #999; + font-weight: bold; +} + +.hljs-deletion { + background: #fdd; +} + +.hljs-addition { + background: #dfd; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/monokai-sublime.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/monokai-sublime.min.css new file mode 100644 index 00000000..ed52c92e --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/monokai-sublime.min.css @@ -0,0 +1,83 @@ +/* + +Monokai Sublime style. Derived from Monokai by noformnocontent https://nn.mit-license.org/ + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #23241f; +} + +.hljs, +.hljs-tag, +.hljs-subst { + color: #f8f8f2; +} + +.hljs-strong, +.hljs-emphasis { + color: #a8a8a2; +} + +.hljs-bullet, +.hljs-quote, +.hljs-number, +.hljs-regexp, +.hljs-literal, +.hljs-link { + color: #ae81ff; +} + +.hljs-code, +.hljs-title, +.hljs-section, +.hljs-selector-class { + color: #a6e22e; +} + +.hljs-strong { + font-weight: bold; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-name, +.hljs-attr { + color: #f92672; +} + +.hljs-symbol, +.hljs-attribute { + color: #66d9ef; +} + +.hljs-params, +.hljs-class .hljs-title { + color: #f8f8f2; +} + +.hljs-string, +.hljs-type, +.hljs-built_in, +.hljs-builtin-name, +.hljs-selector-id, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-addition, +.hljs-variable, +.hljs-template-variable { + color: #e6db74; +} + +.hljs-comment, +.hljs-deletion, +.hljs-meta { + color: #75715e; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/monokai.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/monokai.min.css new file mode 100644 index 00000000..a5735585 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/monokai.min.css @@ -0,0 +1,70 @@ +/* +Monokai style - ported by Luigi Maselli - https://grigio.org +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #272822; color: #ddd; +} + +.hljs-tag, +.hljs-keyword, +.hljs-selector-tag, +.hljs-literal, +.hljs-strong, +.hljs-name { + color: #f92672; +} + +.hljs-code { + color: #66d9ef; +} + +.hljs-class .hljs-title { + color: white; +} + +.hljs-attribute, +.hljs-symbol, +.hljs-regexp, +.hljs-link { + color: #bf79db; +} + +.hljs-string, +.hljs-bullet, +.hljs-subst, +.hljs-title, +.hljs-section, +.hljs-emphasis, +.hljs-type, +.hljs-built_in, +.hljs-builtin-name, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-addition, +.hljs-variable, +.hljs-template-tag, +.hljs-template-variable { + color: #a6e22e; +} + +.hljs-comment, +.hljs-quote, +.hljs-deletion, +.hljs-meta { + color: #75715e; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-literal, +.hljs-doctag, +.hljs-title, +.hljs-section, +.hljs-type, +.hljs-selector-id { + font-weight: bold; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/solarized-light.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/solarized-light.min.css new file mode 100644 index 00000000..fdcfcc72 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/solarized-light.min.css @@ -0,0 +1,84 @@ +/* + +Orginal Style from ethanschoonover.com/solarized (c) Jeremy Hull + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #fdf6e3; + color: #657b83; +} + +.hljs-comment, +.hljs-quote { + color: #93a1a1; +} + +/* Solarized Green */ +.hljs-keyword, +.hljs-selector-tag, +.hljs-addition { + color: #859900; +} + +/* Solarized Cyan */ +.hljs-number, +.hljs-string, +.hljs-meta .hljs-meta-string, +.hljs-literal, +.hljs-doctag, +.hljs-regexp { + color: #2aa198; +} + +/* Solarized Blue */ +.hljs-title, +.hljs-section, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class { + color: #268bd2; +} + +/* Solarized Yellow */ +.hljs-attribute, +.hljs-attr, +.hljs-variable, +.hljs-template-variable, +.hljs-class .hljs-title, +.hljs-type { + color: #b58900; +} + +/* Solarized Orange */ +.hljs-symbol, +.hljs-bullet, +.hljs-subst, +.hljs-meta, +.hljs-meta .hljs-keyword, +.hljs-selector-attr, +.hljs-selector-pseudo, +.hljs-link { + color: #cb4b16; +} + +/* Solarized Red */ +.hljs-built_in, +.hljs-deletion { + color: #dc322f; +} + +.hljs-formula { + background: #eee8d5; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/zenburn.min.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/zenburn.min.css new file mode 100644 index 00000000..07be5020 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/highlight/styles/zenburn.min.css @@ -0,0 +1,80 @@ +/* + +Zenburn style from voldmar.ru (c) Vladimir Epifanov +based on dark.css by Ivan Sagalaev + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + background: #3f3f3f; + color: #dcdcdc; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-tag { + color: #e3ceab; +} + +.hljs-template-tag { + color: #dcdcdc; +} + +.hljs-number { + color: #8cd0d3; +} + +.hljs-variable, +.hljs-template-variable, +.hljs-attribute { + color: #efdcbc; +} + +.hljs-literal { + color: #efefaf; +} + +.hljs-subst { + color: #8f8f8f; +} + +.hljs-title, +.hljs-name, +.hljs-selector-id, +.hljs-selector-class, +.hljs-section, +.hljs-type { + color: #efef8f; +} + +.hljs-symbol, +.hljs-bullet, +.hljs-link { + color: #dca3a3; +} + +.hljs-deletion, +.hljs-string, +.hljs-built_in, +.hljs-builtin-name { + color: #cc9393; +} + +.hljs-addition, +.hljs-comment, +.hljs-quote, +.hljs-meta { + color: #7f9f7f; +} + + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/toc.js b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/toc.js new file mode 100644 index 00000000..0b6fcd65 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/toc.js @@ -0,0 +1,80 @@ +var toctitle = document.getElementById('toctitle'); +var path = window.location.pathname; +if (toctitle != null) { + var oldtoc = toctitle.nextElementSibling; + var newtoc = document.createElement('div'); + newtoc.setAttribute('id', 'tocbot'); + newtoc.setAttribute('class', 'js-toc desktop-toc'); + oldtoc.setAttribute('class', 'mobile-toc'); + oldtoc.parentNode.appendChild(newtoc); + tocbot.init({ + contentSelector: '#content', + headingSelector: 'h1, h2, h3, h4, h5', + positionFixedSelector: 'body', + fixedSidebarOffset: 90, + smoothScroll: false + }); + if (!path.endsWith("index.html") && !path.endsWith("/")) { + var link = document.createElement("a"); + if (document.getElementById('index-link')) { + indexLinkElement = document.querySelector('#index-link > p > a'); + linkHref = indexLinkElement.getAttribute("href"); + link.setAttribute("href", linkHref); + } else { + link.setAttribute("href", "index.html"); + } + link.innerHTML = " Back to index"; + var block = document.createElement("div"); + block.setAttribute('class', 'back-action'); + block.appendChild(link); + var toc = document.getElementById('toc'); + var next = document.getElementById('toctitle').nextElementSibling; + toc.insertBefore(block, next); + } +} + +var headerHtml = '

'; + +var header = document.createElement("div"); +header.innerHTML = headerHtml; +document.body.insertBefore(header, document.body.firstChild); diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/tocbot/tocbot.css b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/tocbot/tocbot.css new file mode 100644 index 00000000..0632de23 --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/tocbot/tocbot.css @@ -0,0 +1 @@ +.toc{overflow-y:auto}.toc>.toc-list{overflow:hidden;position:relative}.toc>.toc-list li{list-style:none}.toc-list{margin:0;padding-left:10px}a.toc-link{color:currentColor;height:100%}.is-collapsible{max-height:1000px;overflow:hidden;transition:all 300ms ease-in-out}.is-collapsed{max-height:0}.is-position-fixed{position:fixed !important;top:0}.is-active-link{font-weight:700}.toc-link::before{background-color:#EEE;content:' ';display:inline-block;height:inherit;left:0;margin-top:-1px;position:absolute;width:2px}.is-active-link::before{background-color:#54BC4B} diff --git a/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/tocbot/tocbot.min.js b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/tocbot/tocbot.min.js new file mode 100644 index 00000000..943d8fdb --- /dev/null +++ b/spring-cloud-sleuth/3.0.0.M1/reference/htmlsingle/js/tocbot/tocbot.min.js @@ -0,0 +1 @@ +!function(e){function t(o){if(n[o])return n[o].exports;var l=n[o]={i:o,l:!1,exports:{}};return e[o].call(l.exports,l,l.exports,t),l.l=!0,l.exports}var n={};t.m=e,t.c=n,t.d=function(e,n,o){t.o(e,n)||Object.defineProperty(e,n,{configurable:!1,enumerable:!0,get:o})},t.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return t.d(n,"a",n),n},t.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},t.p="",t(t.s=0)}([function(e,t,n){(function(o){var l,i,s;!function(n,o){i=[],l=o(n),void 0!==(s="function"==typeof l?l.apply(t,i):l)&&(e.exports=s)}(void 0!==o?o:this.window||this.global,function(e){"use strict";function t(){for(var e={},t=0;te.fixedSidebarOffset?-1===n.className.indexOf(e.positionFixedClass)&&(n.className+=h+e.positionFixedClass):n.className=n.className.split(h+e.positionFixedClass).join("")}function s(t){var n=document.documentElement.scrollTop||f.scrollTop;e.positionFixedSelector&&i();var o,l=t;if(m&&null!==document.querySelector(e.tocSelector)&&l.length>0){d.call(l,function(t,i){if(t.offsetTop>n+e.headingsOffset+10){return o=l[0===i?i:i-1],!0}if(i===l.length-1)return o=l[l.length-1],!0});var s=document.querySelector(e.tocSelector).querySelectorAll("."+e.linkClass);u.call(s,function(t){t.className=t.className.split(h+e.activeLinkClass).join("")});var c=document.querySelector(e.tocSelector).querySelectorAll("."+e.listItemClass);u.call(c,function(t){t.className=t.className.split(h+e.activeListItemClass).join("")});var a=document.querySelector(e.tocSelector).querySelector("."+e.linkClass+".node-name--"+o.nodeName+'[href="#'+o.id+'"]');-1===a.className.indexOf(e.activeLinkClass)&&(a.className+=h+e.activeLinkClass);var p=a.parentNode;p&&-1===p.className.indexOf(e.activeListItemClass)&&(p.className+=h+e.activeListItemClass);var C=document.querySelector(e.tocSelector).querySelectorAll("."+e.listClass+"."+e.collapsibleClass);u.call(C,function(t){-1===t.className.indexOf(e.isCollapsedClass)&&(t.className+=h+e.isCollapsedClass)}),a.nextSibling&&-1!==a.nextSibling.className.indexOf(e.isCollapsedClass)&&(a.nextSibling.className=a.nextSibling.className.split(h+e.isCollapsedClass).join("")),r(a.parentNode.parentNode)}}function r(t){return-1!==t.className.indexOf(e.collapsibleClass)&&-1!==t.className.indexOf(e.isCollapsedClass)?(t.className=t.className.split(h+e.isCollapsedClass).join(""),r(t.parentNode.parentNode)):t}function c(t){var n=t.target||t.srcElement;"string"==typeof n.className&&-1!==n.className.indexOf(e.linkClass)&&(m=!1)}function a(){m=!0}var u=[].forEach,d=[].some,f=document.body,m=!0,h=" ";return{enableTocAnimation:a,disableTocAnimation:c,render:n,updateToc:s}}},function(e,t){e.exports=function(e){function t(e){return e[e.length-1]}function n(e){return+e.nodeName.split("H").join("")}function o(t){var o={id:t.id,children:[],nodeName:t.nodeName,headingLevel:n(t),textContent:t.textContent.trim()};return e.includeHtml&&(o.childNodes=t.childNodes),o}function l(l,i){for(var s=o(l),r=n(l),c=i,a=t(c),u=a?a.headingLevel:0,d=r-u;d>0;)a=t(c),a&&void 0!==a.children&&(c=a.children),d--;return r>=e.collapseDepth&&(s.isCollapsed=!0),c.push(s),c}function i(t,n){var o=n;e.ignoreSelector&&(o=n.split(",").map(function(t){return t.trim()+":not("+e.ignoreSelector+")"}));try{return document.querySelector(t).querySelectorAll(o)}catch(e){return console.warn("Element not found: "+t),null}}function s(e){return r.call(e,function(e,t){return l(o(t),e.nest),e},{nest:[]})}var r=[].reduce;return{nestHeadingsArray:s,selectHeadings:i}}},function(e,t){function n(e){function t(e){return"a"===e.tagName.toLowerCase()&&(e.hash.length>0||"#"===e.href.charAt(e.href.length-1))&&(n(e.href)===s||n(e.href)+"#"===s)}function n(e){return e.slice(0,e.lastIndexOf("#"))}function l(e){var t=document.getElementById(e.substring(1));t&&(/^(?:a|select|input|button|textarea)$/i.test(t.tagName)||(t.tabIndex=-1),t.focus())}!function(){document.documentElement.style}();var i=e.duration,s=location.hash?n(location.href):location.href;!function(){function n(n){!t(n.target)||n.target.className.indexOf("no-smooth-scroll")>-1||"#"===n.target.href.charAt(n.target.href.length-2)&&"!"===n.target.href.charAt(n.target.href.length-1)||-1===n.target.className.indexOf(e.linkClass)||o(n.target.hash,{duration:i,callback:function(){l(n.target.hash)}})}document.body.addEventListener("click",n,!1)}()}function o(e,t){function n(e){s=e-i,window.scrollTo(0,c.easing(s,r,u,d)),s + + + + + + + + + + + + + + DEBUG + + + ${CONSOLE_LOG_PATTERN} + utf8 + + + + + + ${LOG_FILE} + + ${LOG_FILE}.%d{yyyy-MM-dd}.gz + 7 + + + ${CONSOLE_LOG_PATTERN} + utf8 + + + + + ${LOG_FILE}.json + + ${LOG_FILE}.json.%d{yyyy-MM-dd}.gz + 7 + + + + + UTC + + + + { + "timestamp": "@timestamp", + "severity": "%level", + "service": "${springAppName:-}", + "trace": "%X{traceId:-}", + "span": "%X{spanId:-}", + "pid": "${PID:-}", + "thread": "%thread", + "class": "%logger{40}", + "rest": "%message" + } + + + + + + + + + + + +