pub fn self_event(full_name: &str, tier: Tier, sev: Severity) -> ObsEnvelopeExpand description
Build a labels-only self-event envelope with sampling_reason = SAMPLING_REASON_RUNTIME and the current wall-clock ts_ns.
Typical usage from a sink, middleware adapter, or runtime module:
use obs_core::{observer, self_event, Severity, Tier};
let mut env = self_event("mylib.v1.WorkerRestart", Tier::Log, Severity::Warn);
env.labels.insert("reason".into(), "timeout".into());
observer().emit_envelope(env);