pub fn map(
root: &Path,
from: i64,
to: i64,
max_spans: usize,
open: &[Arc<Open>],
) -> Result<Results>Expand description
A service map over a window: who calls whom, how often, and how badly.
The edge is the one a service map has always been — a span’s resource to its
parent span’s resource — and the join is parent_span_id -> span_id. What
makes it affordable here is that it is a read: Tempo answers the same
question with a metrics-generator writing into a separate Prometheus, which
is a second write path, a second store and a second thing to operate.
Bounded by max_spans, newest block first. A map is a shape, not a census:
five services do not become six because the window held twenty million spans
instead of one, and a page that waits two seconds for the same picture is a
page nobody leaves open. What was covered is reported in stats.