Skip to main content

obs_core/observer/
noop.rs

1//! `NoopObserver` — the default. Drops every envelope. Pays only one
2//! TLS check + one atomic load on the emit hot path.
3
4use obs_proto::obs::v1::ObsEnvelope;
5
6use super::Observer;
7
8/// The default observer: drops every envelope.
9#[derive(Debug, Default, Clone, Copy)]
10pub struct NoopObserver;
11
12impl Observer for NoopObserver {
13    fn emit_envelope(&self, _env: ObsEnvelope) {}
14    fn enabled(&self, _callsite: &crate::ObsCallsite) -> bool {
15        false
16    }
17}