Skip to main content

Crate reifydb_profiler

Crate reifydb_profiler 

Source
Expand description

Always-on profiler primitives. Builds on tracing to capture per-scope span records without allocating on the hot path. ProfilerLayer is a tracing_subscriber::Layer that intercepts spans matching a curated set of ProfilerCategory prefixes, extracts numeric fields through reusable thread-local visitors, and appends a fixed-size MinimalSpanRecord to scope-local state. ProfilerScope::start opens a scope; ScopeHandle::finish drains the accumulated records, builds a ProfilerSummary for the caller, and hands the batch to a ProfilerSink for downstream delivery (in production this is sub-profiler’s EventBus bridge).

This crate stays free of any metric or IoC dependency so the layer can be embedded in tests with a NoopSink and so the rest of the workspace can use the data model without pulling in the subsystem.

Modules§

callsite
category
event
format
intern
layer
percentile
record
scope
sink
summary
visit