1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
//! This crate provides frequently used //! [slog](https://github.com/slog-rs/slog) loggers and convenient functions. //! //! # Examples //! //! Creates a logger via `TerminalLoggerBuilder`: //! //! ``` //! #[macro_use] //! extern crate slog; //! extern crate sloggers; //! //! use sloggers::Build; //! use sloggers::terminal::{TerminalLoggerBuilder, Destination}; //! use sloggers::types::Severity; //! //! # fn main() { //! let mut builder = TerminalLoggerBuilder::new(); //! builder.level(Severity::Debug); //! builder.destination(Destination::Stderr); //! //! let logger = builder.build().unwrap(); //! info!(logger, "Hello World!"); //! # } //! ``` //! //! Creates a logger from configuration text (TOML): //! //! ``` //! #[macro_use] //! extern crate slog; //! extern crate sloggers; //! extern crate serdeconv; //! //! use sloggers::{Config, LoggerConfig}; //! //! # fn main() { //! let config: LoggerConfig = serdeconv::from_toml_str(r#" //! type = "terminal" //! level = "debug" //! destination = "stderr" //! "#).unwrap(); //! //! let logger = config.build_logger().unwrap(); //! info!(logger, "Hello World!"); //! # } //! ``` #![warn(missing_docs)] extern crate chrono; extern crate libflate; extern crate serde; #[macro_use] extern crate serde_derive; #[macro_use] extern crate slog; extern crate slog_async; extern crate slog_kvfilter; extern crate slog_scope; extern crate slog_stdlog; extern crate slog_term; #[cfg(test)] extern crate tempfile; #[macro_use] extern crate trackable; extern crate regex; pub use build::{Build, LoggerBuilder}; pub use config::{Config, LoggerConfig}; pub use error::{Error, ErrorKind}; pub use misc::set_stdlog_logger; pub mod file; pub mod null; pub mod terminal; pub mod types; mod build; mod config; mod error; mod misc; /// A specialized `Result` type for this crate. pub type Result<T> = ::std::result::Result<T, Error>;