reth_tracing/
test_tracer.rs

1use tracing_appender::non_blocking::WorkerGuard;
2use tracing_subscriber::EnvFilter;
3
4use crate::Tracer;
5
6///  Initializes a tracing subscriber for tests.
7///
8///  The filter is configurable via `RUST_LOG`.
9///
10///  # Note
11///
12///  The subscriber will silently fail if it could not be installed.
13#[derive(Debug, Clone, Default)]
14#[non_exhaustive]
15pub struct TestTracer;
16
17impl Tracer for TestTracer {
18    fn init(self) -> eyre::Result<Option<WorkerGuard>> {
19        let _ = tracing_subscriber::fmt()
20            .with_env_filter(EnvFilter::from_default_env())
21            .with_writer(std::io::stderr)
22            .try_init();
23        Ok(None)
24    }
25}