libhoney

Struct Event

Source
pub struct Event { /* private fields */ }
Expand description

Event is used to hold data that can be sent to Honeycomb. It can also specify overrides of the config settings (client::Options).

Implementations§

Source§

impl Event

Source

pub fn new(options: &Options) -> Self

new creates a new event with the passed ClientOptions

Source

pub fn send<T: Sender>(&mut self, client: &mut Client<T>) -> Result<()>

send dispatches the event to be sent to Honeycomb, sampling if necessary.

If you have sampling enabled (i.e. sample_rate >1), send will only actually transmit data with a probability of 1/sample_rate. No error is returned whether or not traffic is sampled, however, the Response sent down the response channel will indicate the event was sampled in the errors Err field.

Send inherits the values of required fields from ClientOptions. If any required fields are specified in neither ClientOptions nor the Event, send will return an error. Required fields are api_host, api_key, and dataset. Values specified in an Event override ClientOptions.

Once you send an event, any addition calls to add data to that event will return without doing anything. Once the event is sent, it becomes immutable.

Source

pub fn send_presampled<T: Sender>( &mut self, client: &mut Client<T>, ) -> Result<()>

send_presampled dispatches the event to be sent to Honeycomb.

Sampling is assumed to have already happened. send_presampled will dispatch every event handed to it, and pass along the sample rate. Use this instead of send() when the calling function handles the logic around which events to drop when sampling.

send_presampled inherits the values of required fields from Config. If any required fields are specified in neither Config nor the Event, send will return an error. Required fields are api_host, api_key, and dataset. Values specified in an Event override Config.

Once you send an event, any addition calls to add data to that event will return without doing anything. Once the event is sent, it becomes immutable.

Source

pub fn set_sample_rate(&mut self, sample_rate: usize)

Set options sample_rate on the event

Source

pub fn set_timestamp(&mut self, timestamp: DateTime<Utc>)

Set timestamp on the event

Source

pub fn set_metadata(&mut self, metadata: Metadata)

Set metadata on the event

Source

pub fn metadata(&self) -> Metadata

Get event metadata

Source

pub fn fields(&self) -> HashMap<String, Value>

Get event fields

Source

pub fn get_fields_mut(&mut self) -> &mut HashMap<String, Value>

Get event fields (mutable)

Trait Implementations§

Source§

impl Clone for Event

Source§

fn clone(&self) -> Event

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for Event

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl FieldHolder for Event

Source§

fn add_field(&mut self, name: &str, value: Value)

add_field adds a field to the current (event/builder) fields

Source§

fn add_func<F>(&mut self, func: F)
where F: Fn() -> Result<(String, Value)>,

add_func iterates over the results from func (until Err) and adds the results to the event/builder fields

Source§

fn add(&mut self, data: HashMap<String, Value>)

add data to the current (event/builder) fields

Auto Trait Implementations§

§

impl Freeze for Event

§

impl RefUnwindSafe for Event

§

impl Send for Event

§

impl Sync for Event

§

impl Unpin for Event

§

impl UnwindSafe for Event

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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> 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. 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<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

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
Source§

impl<T> ErasedDestructor for T
where T: 'static,

Source§

impl<T> MaybeSendSync for T