Expand description
§A slog Drain
for glog-formatted logs.
§Usage
For simple programs where you need glog-formatted logs to standard error, use the logger
convenience function to create your logger:
use slog::info;
fn main() {
let log = slog_glog_fmt::facebook_logger().unwrap();
info!(log, "glog-formatted logs available");
}
For more complicated scenarios, create a GlogFormat
instance using a normal slog-term
decorator, and use that to construct the root Logger
instance. You can combine the
GlogFormat
drain with other drains in the usual way. The KVCategorizer
controls how the KV
values should be printed.
use std::sync::Mutex;
use slog::{debug, o, Drain, Logger};
use slog_glog_fmt::kv_categorizer::InlineCategorizer;
pub fn main() {
let decorator = slog_term::TermDecorator::new().build();
let drain = slog_glog_fmt::GlogFormat::new(decorator, InlineCategorizer).fuse();
let drain = Mutex::new(drain).fuse();
let log = Logger::root(drain, o!());
debug!(log, "Custom logger built.");
}
Modules§
- collector_
serializer - Provides CollectorSerializer. See it’s documentation for more help
- kv_
categorizer - Provides ways to control how the KV values passed to slog macros are printed
- kv_
defaults - Module defining FacebookKV structure that should be used by all Facebook services
Structs§
- Glog
Format - A slog
Drain
for glog-formatted logs.
Functions§
- default_
drain - Create a default drain that outputs to stderr and inlines all KV values except for supported error_chain errors.
- facebook_
logger - Create a default root logger for Facebook services
- logger_
that_ can_ work_ in_ tests - If you set this as the root logger at the start of your tests
you will actually see log lines for failed tests. It looks the same
as
facebook_logger
. Note: this may not show logs from threads not under the test runner https://docs.rs/slog-term/2.8.0/slog_term/struct.TestStdoutWriter.html#note