Expand description
§rivet-logger
rivet-logger is a simple logging crate built on top of
tracing. It provides:
- A static
LogAPI for output-only logging. - Pluggable handlers such as
single,daily,stdout, andstack.
§Example
use std::sync::Arc;
use rivet_logger::handlers::single::Single;
use rivet_logger::{set_handler, Log};
let single = Single::new("rivet.log")?;
set_handler(Arc::new(single));
Log::info("application booted");
Log::warn("cache warmup skipped");
Log::error("failed to connect to database");§Stack Handler Example
use std::sync::Arc;
use rivet_logger::handlers::single::Single;
use rivet_logger::handlers::stack::Stack;
use rivet_logger::handlers::stdout::Stdout;
use rivet_logger::{set_handler, Log};
let file = Arc::new(Single::new("rivet.log")?);
let stdout = Arc::new(Stdout::new());
let stack = Stack::new(vec![file, stdout]);
set_handler(Arc::new(stack));
Log::info("application booted");§Processor Example
use std::sync::Arc;
use rivet_logger::{Logger, PsrLogMessage, Tag};
let mut logger = Logger::new("app");
logger.push_processor(Arc::new(PsrLogMessage::default()));
logger.push_processor(Arc::new(Tag::new(vec!["http".to_string()])));Re-exports§
pub use logger::ClosureContext;pub use logger::DeferredValue;pub use logger::Git;pub use logger::Handler;pub use logger::Hostname;pub use logger::Introspection;pub use logger::Level;pub use logger::LoadAverage;pub use logger::LoadAverageWindow;pub use logger::LogRecord;pub use logger::LogValue;pub use logger::Logger;pub use logger::LoggerError;pub use logger::MemoryPeakUsage;pub use logger::MemoryUsage;pub use logger::Mercurial;pub use logger::ProcessId;pub use logger::Processor;pub use logger::PsrLogMessage;pub use logger::Tag;pub use logger::Uid;pub use logger::Web;