Struct ezlog::InitBuilder
source · pub struct InitBuilder { /* private fields */ }Expand description
InitBuilder is used to init ezlog
Implementations§
source§impl InitBuilder
impl InitBuilder
pub fn new() -> Self
sourcepub fn with_event_listener(self, listener: &'static dyn EventListener) -> Self
pub fn with_event_listener(self, listener: &'static dyn EventListener) -> Self
add a listener to handle all events
Example
use ezlog::Event;
use ezlog::LogError;
struct MyEventListener;
impl ezlog::EventListener for MyEventListener {
fn on_event(&self, event: Event, desc: &str) {
println!("event: {:?}, desc: {}", event, desc);
}
fn on_error_event(&self, event: Event, desc: &str, err: &LogError) {
println!("event: {:?}, desc: {}, err: {}", event, desc, err);
}
}
static LISTENER: MyEventListener = MyEventListener{};
ezlog::InitBuilder::new()
.with_event_listener(&LISTENER)
.init();sourcepub fn with_layer(self, layer: Box<dyn MsgHandler>) -> Self
pub fn with_layer(self, layer: Box<dyn MsgHandler>) -> Self
add a layer to handle all operations
Example
use ezlog::MsgHandler;
struct MyLayer;
impl MyLayer {
pub fn new() -> Self {
Self {}
}
}
impl ezlog::MsgHandler for MyLayer {
fn handle(&self, msg: &ezlog::EZMsg) {
println!("{:?}", msg);
}
}
ezlog::InitBuilder::new()
.with_layer(Box::new(MyLayer::new()))
.init();sourcepub fn with_request_callback_fn(
self,
on_success: fn(_: &str, _: &str, _: &[&str]),
on_fail: fn(_: &str, _: &str, _: &str)
) -> Self
pub fn with_request_callback_fn( self, on_success: fn(_: &str, _: &str, _: &[&str]), on_fail: fn(_: &str, _: &str, _: &str) ) -> Self
add a callback to receive log file path request result
Example
let on_success : fn(&str, &str, &[&str]) = |name, date, logs| {
println!("on_success: name: {}, desc: {}, tags: {:?}", name, date, logs);
};
let on_fail : fn(&str, &str, &str) = |name, date, err| {
println!("on_fail: name: {}, desc: {}, err: {}", name, date, err);
};
ezlog::InitBuilder::new()
.with_request_callback_fn(on_success, on_fail)
.init();sourcepub fn with_request_callback(
self,
callback: impl EZLogCallback + 'static
) -> Self
pub fn with_request_callback( self, callback: impl EZLogCallback + 'static ) -> Self
add a callback to receive log file path request result
Example
use ezlog::EZLogCallback;
struct MyCallback {}
impl EZLogCallback for MyCallback {
fn on_fetch_success(&self, name: &str, date: &str, logs: &[&str]) {
println!("on_success: name: {}, desc: {}, tags: {:?}", name, date, logs);
}
fn on_fetch_fail(&self, name: &str, date: &str, err: &str) {
println!("on_fail: name: {}, desc: {}, err: {}", name, date, err);
}
}
let callback: MyCallback = MyCallback { };
ezlog::InitBuilder::new()
.with_request_callback(callback)
.init();sourcepub fn with_layer_fn(self, layer: fn(_: &EZMsg)) -> Self
pub fn with_layer_fn(self, layer: fn(_: &EZMsg)) -> Self
add a layer to handle all operations
Example
ezlog::InitBuilder::new()
.with_layer_fn(|msg| println!("{:?}", msg))
.init();sourcepub fn with_formatter(self, formatter: Box<dyn Formatter>) -> Self
pub fn with_formatter(self, formatter: Box<dyn Formatter>) -> Self
set a formatter to format log record
Example
use ezlog::Formatter;
use ezlog::EZRecord;
struct MyFormatter;
impl Formatter for MyFormatter {
fn format(&self, msg: &EZRecord) -> std::result::Result<Vec<u8>, ezlog::LogError> {
Ok(format!("{:?}", msg).into_bytes())
}
}
ezlog::InitBuilder::new()
.with_formatter(Box::new(MyFormatter))
.init();Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for InitBuilder
impl !Send for InitBuilder
impl !Sync for InitBuilder
impl Unpin for InitBuilder
impl !UnwindSafe for InitBuilder
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more