You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardexpand all lines: README.md
+4
Original file line number
Diff line number
Diff line change
@@ -142,6 +142,10 @@ possible to dynamically modify the logging at runtime.
142
142
-`http://$RAINBOW_CTL_LISTEN_ADDRESS/mgr/log/level?subsystem=<system name or * for all system>&level=<level>` will set the logging level for a subsystem
143
143
-`http://$RAINBOW_CTL_LISTEN_ADDRESS/mgr/log/ls` will return a comma separated list of available logging subsystems
144
144
145
+
## Tracing
146
+
147
+
See [docs/tracing.md](docs/tracing.md).
148
+
145
149
## Deployment
146
150
147
151
Suggested method for self-hosting is to run a [prebuilt Docker image](#docker).
Tracing across the stack follows, as much as possible, the [Open Telemetry]
4
+
specifications. Configuration environment variables are specified in the
5
+
[OpenTelemetry Environment Variable Specification] where possible. The
6
+
[Boxo Tracing] documentation is the basis for tracing here.
7
+
8
+
> [!NOTE]
9
+
> A major distinction from the more [general tracing enabled in boxo][Boxo Tracing] is that when
10
+
> tracing is enabled it is restricted to flows through HTTP Gateway requests, rather
11
+
> than also included background processes.
12
+
13
+
### Fractional Sampling
14
+
15
+
To sample a % of requests set [`RAINBOW_SAMPLING_FRACTION`](environment-variables.md#rainbow_sampling_fraction) to a value between `0` and `1`.
16
+
17
+
### Per Request
18
+
19
+
Per-request tracing is possible when a non-empty [`RAINBOW_TRACING_AUTH`](environment-variables.md#rainbow_tracing_auth) is set in Rainbow and when there are both valid
20
+
[Authorization](headers.md#authorization) and [`Traceparent`](headers.md#traceparent) HTTP headers passed in the request.
21
+
22
+
When tracing, it is often useful to skip local blockcache by setting [`Rainbow-No-Blockcache`](headers.md#rainbow-no-blockcache) header to `true`.
23
+
24
+
Per-request tracing exmaple:
25
+
26
+
```console
27
+
$ export RAINBOW_TRACING_AUTH=CHANGEME-tracing-auth-secret # use value from Rainbow config
0 commit comments