caddy-website/src/docs/markdown/caddyfile/directives/tracing.md
Andrii Kushch c734cc3e64
caddyfile: tracing directive (#205)
* Add documentation for tracing directive

* Update header in tracing.md

Co-authored-by: Matt Holt <mholt@users.noreply.github.com>

* Update documentation in tracing.md

Co-authored-by: Matt Holt <mholt@users.noreply.github.com>

* add link to the repository

* add link to gRPC repo and w3c specification

Co-authored-by: Andrii Kushch <>
Co-authored-by: Matt Holt <mholt@users.noreply.github.com>
2022-03-09 10:42:06 -07:00

1.5 KiB

title
tracing (Caddyfile directive)

tracing

It provides integration with OpenTelemetry tracing facilities.

When enabled, it will propagate an existing trace context or initialize a new one.

It is based on github.com/open-telemetry/opentelemetry-go.

It uses gRPC as an exporter protocol and W3C tracecontext and baggage as propagators.

Syntax

tracing {
	[span <span_name>]
}
  • <span_name> - is a span name. Please see span naming guidelines.

Configuration

Environment variables

It can be configured using the environment variables defined by the OpenTelemetry Environment Variable Specification.

For the exporter configuration details, please see spec.

For example:

export OTEL_EXPORTER_OTLP_HEADERS="myAuthHeader=myToken,anotherHeader=value"
export OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=https://my-otlp-endpoint:55680

Examples

Here is a Caddyfile example:

handle /myHandler {
	tracing {
		span my-span
	}
	reverse_proxy 127.0.0.1:8081
}