Tracing Zebra
Dynamic Tracing
Zebra supports dynamic tracing, configured using the config's
TracingSection and an HTTP RPC endpoint.
Activate this feature using the filter-reload compile-time feature,
and the filter and endpoint_addr runtime config options.
If the endpoint_addr is specified, zebrad will open an HTTP endpoint
allowing dynamic runtime configuration of the tracing filter. For instance,
if the config had endpoint_addr = '127.0.0.1:3000', then
curl -X GET localhost:3000/filterretrieves the current filter string;curl -X POST localhost:3000/filter -d "zebrad=trace"sets the current filter string.
See the filter documentation for more details.
journald Logging
Zebra can send tracing spans and events to systemd-journald,
on Linux distributions that use systemd.
Activate journald logging using the journald compile-time feature,
and the use_journald runtime config option.
Flamegraphs
Zebra can generate flamegraphs of tracing spans.
Activate flamegraphs using the flamegraph compile-time feature,
and the flamegraph runtime config option.
Sentry Production Monitoring
Compile Zebra with --features sentry to monitor it using Sentry in production.