Skip to content

docs: traces now go to your own backend, and extensions emit them too - #216

Open
achoimet wants to merge 2 commits into
mainfrom
docs/otel-traces-from-extensions
Open

achoimet wants to merge 2 commits into
mainfrom
docs/otel-traces-from-extensions

Conversation

@achoimet

Copy link
Copy Markdown
Member

Two things changed under this page:

  1. Extensions export spans of their own since extension-kit v1.12.1 (feat: add OpenTelemetry HTTP tracing support extension-kit#114, Update Windows compatibility matrix with missing attack categories #179, Feat/risk #180). A trace now covers the platform, the agent and the extension it called, rather than stopping at the agent — which is what makes a timing-out action debuggable.
  2. The platform's per-run span download is being retired (steadybit/platform#2036), so the page can no longer point at it.

What changed

Replaced the "Download through the Experiment Run View" section with "Finding the Traces for an Experiment Run". Every span of a run carries an experiment.execution.id attribute, so a single query pulls up everything that happened during it:

Backend Query
Grafana Tempo { span.experiment.execution.id = "138004" }
Jaeger tag experiment.execution.id=138004
Datadog @experiment.execution.id:138004

The time-window caveat is called out deliberately: tracing backends search a window rather than all history, so a default of "last 1 hour" returns nothing for an older run — indistinguishable from the traces being missing.

Added an "Extension Configuration" section: the OTEL_* variables, the otel Helm values including the global.otel block that configures every extension in a release at once, and a warning that the gRPC default pairs with port 4317 — pointing it at an OTLP/HTTP collector on 4318 without changing the protocol exports nothing, silently.

Dropped the "experimental capability" note on export. With platform-side collection going away this becomes the only path, so the label is misleading.

Removed traces-download.png, now orphaned.

Merge timing

Best merged alongside or just after steadybit/platform#2036, since it describes the run view as showing the identifier and queries.

Vendor coverage

Deliberately limited to Tempo, Jaeger and Datadog. Those three I can state confidently; for others the attribute may not be queryable as written — AWS X-Ray only indexes annotations, and Elastic transforms attribute keys — and a wrong query in the docs is worse than none, since it sends people hunting for traces that are actually there.

Two things changed under this page. Extensions export spans of their own since
extension-kit v1.12.1, so a trace now covers the platform, the agent and the
extension it called rather than stopping at the agent. And the platform's
per-run span download is being retired, so the page can no longer point at it.

Replaces the download section with how to find a run in your own backend: every
span carries the run's experiment.execution.id, so one query pulls up
everything that happened during it. The time-window caveat is called out
because a default of "last 1 hour" returns nothing for an older run, which
looks exactly like the traces being missing.

Adds an extension configuration section: the OTEL_* variables, the otel Helm
values including the global block that configures every extension at once, and
a warning that the gRPC default pairs with port 4317 — pointing it at an
OTLP/HTTP collector on 4318 without changing the protocol exports nothing.

Drops the "experimental" note on export. With the platform-side collection
going away this is the only path, so labelling it experimental is misleading.
docs_lint's table-width rule requires every row in a table to be the same
character width; the new query and configuration tables were ragged.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant