traefik/docs/configuration/tracing.md

151 lines
3.2 KiB
Markdown
Raw Normal View History

2018-01-10 16:48:04 +00:00
# Tracing
Tracing system allows developers to visualize call flows in there infrastructures.
We use [OpenTracing](http://opentracing.io). It is an open standard designed for distributed tracing.
Træfik supports two backends: Jaeger and Zipkin.
## Jaeger
```toml
# Tracing definition
[tracing]
# Backend name used to send tracing data
#
# Default: "jaeger"
#
2018-04-06 07:38:03 +00:00
backend = "jaeger"
2018-01-10 16:48:04 +00:00
# Service name used in Jaeger backend
#
# Default: "traefik"
#
2018-04-06 07:38:03 +00:00
serviceName = "traefik"
2018-01-10 16:48:04 +00:00
[tracing.jaeger]
2018-04-06 07:38:03 +00:00
# Sampling Server URL is the address of jaeger-agent's HTTP sampling server
2018-01-10 16:48:04 +00:00
#
# Default: "http://localhost:5778/sampling"
#
2018-04-06 07:38:03 +00:00
samplingServerURL = "http://localhost:5778/sampling"
2018-01-10 16:48:04 +00:00
# Sampling Type specifies the type of the sampler: const, probabilistic, rateLimiting
#
# Default: "const"
#
2018-04-06 07:38:03 +00:00
samplingType = "const"
2018-01-10 16:48:04 +00:00
2018-04-06 07:38:03 +00:00
# Sampling Param is a value passed to the sampler.
2018-01-10 16:48:04 +00:00
# Valid values for Param field are:
# - for "const" sampler, 0 or 1 for always false/true respectively
# - for "probabilistic" sampler, a probability between 0 and 1
# - for "rateLimiting" sampler, the number of spans per second
#
# Default: 1.0
#
2018-04-06 07:38:03 +00:00
samplingParam = 1.0
2018-04-06 07:38:03 +00:00
# Local Agent Host Port instructs reporter to send spans to jaeger-agent at this address
#
# Default: "127.0.0.1:6831"
#
localAgentHostPort = "127.0.0.1:6831"
2018-08-01 11:52:03 +00:00
# Generate 128-bit trace IDs, compatible with OpenCensus
#
# Default: false
gen128Bit = true
# Set the propagation header type. This can be either:
# - "jaeger", jaeger's default trace header.
# - "b3", compatible with OpenZipkin
#
# Default: "jaeger"
propagation = "jaeger"
2018-01-10 16:48:04 +00:00
```
!!! warning
Træfik is only able to send data over compact thrift protocol to the [Jaeger agent](https://www.jaegertracing.io/docs/deployment/#agent).
2018-01-10 16:48:04 +00:00
## Zipkin
```toml
# Tracing definition
[tracing]
# Backend name used to send tracing data
#
# Default: "jaeger"
#
2018-04-06 07:38:03 +00:00
backend = "zipkin"
2018-01-10 16:48:04 +00:00
# Service name used in Zipkin backend
#
# Default: "traefik"
#
2018-04-06 07:38:03 +00:00
serviceName = "traefik"
2018-01-10 16:48:04 +00:00
[tracing.zipkin]
# Zipking HTTP endpoint used to send data
#
# Default: "http://localhost:9411/api/v1/spans"
#
2018-04-06 07:38:03 +00:00
httpEndpoint = "http://localhost:9411/api/v1/spans"
2018-01-10 16:48:04 +00:00
# Enable Zipkin debug
#
# Default: false
#
2018-04-06 07:38:03 +00:00
debug = false
2018-01-10 16:48:04 +00:00
# Use ZipKin SameSpan RPC style traces
#
# Default: false
#
2018-04-06 07:38:03 +00:00
sameSpan = false
2018-01-10 16:48:04 +00:00
# Use ZipKin 128 bit root span IDs
#
# Default: true
#
2018-04-06 07:38:03 +00:00
id128Bit = true
2018-01-10 16:48:04 +00:00
```
## DataDog
```toml
# Tracing definition
[tracing]
# Backend name used to send tracing data
#
# Default: "jaeger"
#
backend = "datadog"
# Service name used in DataDog backend
#
# Default: "traefik"
#
serviceName = "traefik"
[tracing.datadog]
# Local Agent Host Port instructs reporter to send spans to datadog-tracing-agent at this address
#
# Default: "127.0.0.1:8126"
#
localAgentHostPort = "127.0.0.1:8126"
# Enable DataDog debug
#
# Default: false
#
debug = false
# Apply shared tag in a form of Key:Value to all the traces
#
# Default: ""
#
globalTag = ""
```