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}