Skip to content

Commit

Permalink
Merge pull request containerd#10854 from austinvazquez/update-tracing…
Browse files Browse the repository at this point in the history
…-docs-for-containerd-2.0

Update tracing docs for containerd 2.0
  • Loading branch information
dmcgowan authored Oct 18, 2024
2 parents d4cabf7 + 92d327a commit b291eb8
Showing 1 changed file with 23 additions and 16 deletions.
39 changes: 23 additions & 16 deletions docs/tracing.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,9 @@ Tracing currently targets only gRPC calls.

## Sending traces from containerd daemon

By configuring `io.containerd.tracing.processor.v1.otlp` plugin.
containerd daemon can send traces to the specified OpenTelemetry endpoint.

```toml
version = 2

[plugins."io.containerd.tracing.processor.v1.otlp"]
endpoint = "http://localhost:4318"
```
containerd daemon can send traces to collection endpoints by configuring
[OpenTelemetry exporter environment variables](https://opentelemetry.io/docs/specs/otel/protocol/exporter/)
within the daemon's process space.

The following options are supported.

Expand All @@ -24,15 +18,28 @@ The following options are supported.
"http/protobuf" always uses the schema provided by the endpoint and
the value of this setting being ignored.

The sampling ratio and the service name on the traces could be configured by
`io.containerd.internal.v1.tracing` plugin.
The sampling ratio and the service name on the traces can be configured by setting
[OpenTelemetry environment variables](https://opentelemetry.io/docs/specs/otel/configuration/sdk-environment-variables/).

For example, if running containerd as a systemd service, add the environment variables to the service:

```text
[Service]
Environment="OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318"
Environment="OTEL_EXPORTER_OTLP_PROTOCOL=http/protobuf"
Environment="OTEL_SERVICE_NAME=containerd"
Environment="OTEL_TRACES_SAMPLER=traceidratio"
Environment="OTEL_TRACES_SAMPLER_ARG=1.0"
```

```toml
version = 2
Or if running containerd from the command-line, set the environment variables before starting the daemon:

[plugins."io.containerd.internal.v1.tracing"]
sampling_ratio = 1.0
service_name = "containerd"
```bash
export OTEL_EXPORTER_OTLP_ENDPOINT="http://localhost:4318"
export OTEL_EXPORTER_OTLP_PROTOCOL="http/protobuf"
export OTEL_SERVICE_NAME="containerd"
export OTEL_TRACES_SAMPLER="traceidratio"
export OTEL_TRACES_SAMPLER_ARG=1.0
```

## Sending traces from containerd client
Expand Down

0 comments on commit b291eb8

Please sign in to comment.