Crates.io | logcontrol-log |
lib.rs | logcontrol-log |
version | 0.1.0 |
source | src |
created_at | 2023-10-26 13:52:48.607476 |
updated_at | 2023-10-26 13:52:48.607476 |
description | log backend for the log control interface |
homepage | https://github.com/swsnr/logcontrol.rs |
repository | https://github.com/swsnr/logcontrol.rs.git |
max_upload_size | |
id | 1014490 |
size | 52,186 |
log
implementation for the logcontrol interface.
$ cargo add logcontrol-log
use std::error::Error;
use logcontrol_log::{LogController, LogFactory};
use logcontrol_zbus::ConnectionBuilderExt;
use zbus::ConnectionBuilder;
struct Factory;
impl LogFactory for Factory {
fn create_console_log(&self) -> Result<Box<dyn log::Log>, logcontrol::LogControl1Error> {
Ok(Box::new(env_logger::Builder::from_default_env().build()))
}
}
#[async_std::main]
async fn main() -> Result<(), Box<dyn Error>> {
let control = LogController::install_auto(Factory, log::Level::Info)?;
let _conn = ConnectionBuilder::session()?
.name("de.swsnr.logcontrol.TracingServerExample")?
.serve_log_control(logcontrol_zbus::LogControl1::new(control))?
.build()
.await?;
loop {
// Service event loop
}
}