Skip to main content

LogConfig

Struct LogConfig 

Source
pub struct LogConfig {
    pub level: LogLevel,
    pub message: Value,
    pub fields: HashMap<String, Value>,
    pub compiled_message: Option<Arc<Logic>>,
    pub compiled_fields: Vec<(String, Option<Arc<Logic>>)>,
}
Expand description

Configuration for the log function.

The message and field expressions are pre-compiled at startup.

Fields§

§level: LogLevel

Log level to emit at

§message: Value

JSONLogic expression to produce the log message string

§fields: HashMap<String, Value>

Additional structured fields: each value is a JSONLogic expression

§compiled_message: Option<Arc<Logic>>

Pre-compiled message JSONLogic, populated by LogicCompiler.

§compiled_fields: Vec<(String, Option<Arc<Logic>>)>

Pre-compiled JSONLogic for each fields entry, populated by LogicCompiler. The inner Option is None for fields whose logic failed to compile (logged at engine construction).

Implementations§

Source§

impl LogConfig

Source

pub fn execute( &self, message: &mut Message, engine: &Arc<Engine>, ) -> Result<(TaskOutcome, Vec<Change>)>

Execute the log function, opening a fresh thread-local arena scope.

Use this entry point when calling LogConfig outside an existing with_arena scope (direct API users, tests). Inside a workflow sync stretch the dispatch goes through Self::execute_in_arena to reuse the cached ArenaContext and avoid a redundant to_arena walk.

Trait Implementations§

Source§

impl Clone for LogConfig

Source§

fn clone(&self) -> LogConfig

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Debug for LogConfig

Source§

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

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

impl<'de> Deserialize<'de> for LogConfig

Source§

fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more

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

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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.