Skip to main content

Telemetry

Struct Telemetry 

Source
pub struct Telemetry {
    pub counters: Arc<Counters>,
    /* private fields */
}

Fields§

§counters: Arc<Counters>

Implementations§

Source§

impl Telemetry

Source

pub fn init(cfg: ResolvedConfig, app_version: String) -> Arc<Self>

Source

pub fn track(&self, event: Event)

Non-blocking emit. Drops silently on backpressure or if disabled.

Source

pub async fn shutdown(&self, timeout: Duration)

Signal the sender task to drain mpsc→disk, force-roll the current segment, and attempt one HTTP send before the process exits. The whole operation is bounded by timeout (default exit budget is 500ms); if the network call outruns the budget the future is cancelled and the segment stays on disk for the next process to pick up.

We intentionally do not close the mpsc channel: self.tx is shared (Arc<Telemetry>), and closing would race with concurrent callers. Instead we use a oneshot to ask the task to exit cleanly.

Source

pub fn set_account_id(&self, id: Option<String>)

Update the active account ID. Pass Some(id) after a successful login (call this before emitting login_success so the event itself carries the id) and None after logout. All subsequent events emitted by this process will carry the new value via the envelope.

Source

pub fn set_session_id(&self, id: Uuid)

Update the active session ID (e.g. when a new AtomCode session is established or the user switches session via /session or /resume).

Source

pub fn is_enabled(&self) -> bool

Source

pub fn device_id(&self) -> Uuid

Source

pub fn launch_id(&self) -> Uuid

Source

pub fn uptime(&self) -> Duration

Source

pub fn counters_snapshot(&self) -> CountersSnapshot

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more