Crate slog_glog_fmt

source ·
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

  • Provides CollectorSerializer. See it’s documentation for more help
  • Provides ways to control how the KV values passed to slog macros are printed
  • Module defining FacebookKV structure that should be used by all Facebook services

Structs

Functions