Skip to main content

saddle_observability/
lib.rs

1//! Saddle structured logging and trace correlation.
2//!
3//! The V1 scope is Log and Trace only; the broader name does not imply Metrics
4//! or monitoring-platform delivery in V1. Framework components create an
5//! [`Observer`] once and use [`Observer::start_external_call`] and
6//! [`Observer::start_child_call`] around their async work. Records are queued
7//! without waiting for the output writer.
8
9mod call;
10mod event;
11mod logger;
12mod trace;
13
14pub use call::{ActiveCall, CallKind, CallOutcome};
15pub use event::{
16    DomainEvent, DomainEventError, DomainValue, EventLevel, MAX_DOMAIN_EVENT_NAME_BYTES,
17    MAX_DOMAIN_FIELD_NAME_BYTES, MAX_DOMAIN_FIELDS, MAX_DOMAIN_PAYLOAD_BYTES,
18    MAX_DOMAIN_STRING_BYTES,
19};
20pub use logger::{
21    FlushError, FlushFuture, InitError, Observer, ObserverConfig, OutputStage, global, init,
22};
23pub use saddle_core::{CallContext, SpanId, TraceId};
24pub use trace::{InboundTrace, TraceIdError, trace_id_from_hex};