pub struct LoggerConfig {
    pub use_logger: bool,
    pub log_level: Level,
    pub log_use_ansi: bool,
    pub log_file_enabled: bool,
    pub log_file_path: PathBuf,
    pub log_file_rotate_directory: PathBuf,
    pub oslog_category: Option<String>,
    pub oslog_subsystem: Option<String>,
}
Expand description

Structure representing configuration of super::CargoLib. It is used to create super::CargoLib instance. It is created from JSON or from type implementing CargoCfgProvider. This structure provides default values for all fields and can be constructed by either LoggerConfig::new() or LoggerConfig::default(). Those two calls are equivalent to each other.

let config_json = r#"
{
    "log_level": "debug",
    "log_use_ansi": true,
    "log_file_path": "some_name",
    "log_file_rotate_directory": ".",
    "log_file_enabled": true,
    "evs_url": "some_url",
    "sc_url": "some_url"
}
"#;
let parsed_cfg = parse_config(config_json.as_bytes().to_vec()).unwrap();

Fields

use_logger: bool

switch to disable the logger facility. If set to false, the logger will be disabled. usefull for cases where the client wants to use its own tracing subscriber object or want to enable it from the outside. Default: true

Most users will want to leave it defaulted to true, especially users of the bindings, as they will not be able to create subscriber externally.

In case its false, all the log configs are not used nor the subscriber is created.

log_level: Level

Minimum level of messages to get logged

log_use_ansi: bool

If Enabled, the logger will use ansi sequences to style text not all platforms and receivers do support this feature. False by default.

log_file_enabled: bool

Enables or disables file logging.

log_file_path: PathBuf

File describing where log entries should be mirrored to. This part defines the file path of the currently active log file. defaults to cargolib_log

log_file_rotate_directory: PathBuf

File describing where log entries should be mirrored to. This part defines the file directory where the rotation will happen. defaults to the current working directory.

oslog_category: Option<String>

Name of the system.log category. If Some() provided together with oslog_subsystem category, enables the oslog facility. If OsLog is enabled, then all other facilities are not initialized.

oslog_subsystem: Option<String>

Name of the system.log subsystem. If Some() provided together with oslog_category, enables the oslog facility. If OsLog is enabled, then all other facilities are not initialized.

Implementations

Creates a default value for this type.

Helper function used to determine platform capabilities Whenever the os log facilities are available and properly configured, returns true. However if the configuration does not contain all the data necessary to start the logger or the platform does not support logging to the OsLog (i.e. linux,windows) then false is returned.

Helper function used to determine platform capabilities Whenever the file log facilities are available and properly configured, returns true. However if the configuration uses paths that do not exist we will fail to initialize the logger and return false.

Trait Implementations

Returns a copy of the value. Read more
Performs copy-assignment from source. Read more
Formats the value using the given formatter. Read more
Returns the “default value” for a type. Read more
Deserialize this value from the given Serde deserializer. Read more
This method tests for self and other values to be equal, and is used by ==. Read more
This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more
Immutably borrows from an owned value. Read more
Mutably borrows from an owned value. Read more
Compare self to key and return true if they are equal.

Returns the argument unchanged.

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

Calls U::from(self).

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

Should always be Self
The resulting type after obtaining ownership.
Creates owned data from borrowed data, usually by cloning. Read more
Uses borrowed data to replace owned data, usually by cloning. Read more
The type returned in the event of a conversion error.
Performs the conversion.
The type returned in the event of a conversion error.
Performs the conversion.
Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more