chronograph/processor.rs
1//! Traits for user to hook into completed spans by reference.
2
3use crate::schema::SpanData;
4
5pub enum SpanProcessor {
6 Dyn(Box<dyn ProcessSpan>),
7}
8
9impl SpanProcessor {
10 pub fn post_process_span(&self, span_data: &SpanData) {
11 match self {
12 Self::Dyn(x) => x.process_span(span_data),
13 }
14 }
15}
16
17pub trait ProcessSpan: Send + Sync {
18 fn process_span(&self, span: &SpanData);
19}