riker-rs / riker

Easily build efficient, highly concurrent and resilient applications. An Actor Framework for Rust.
https://riker.rs
MIT License
1.02k stars 69 forks source link

Use slog as a logging subsystem #78

Closed mrjoe7 closed 4 years ago

mrjoe7 commented 4 years ago

This PR replaces log crate by the slog crate. All code was written with a backward compatibility in mind. When slog::Logger is not passed to actor system via the SystemBuilder, then behavior and log messages format stays the same as was before this PR.

Example of how slog can be passed to riker.

#[macro_use]
extern crate slog;
extern crate sloggers;

use sloggers::Build;
use sloggers::terminal::{TerminalLoggerBuilder, Destination};
use sloggers::types::Severity;

let mut builder = TerminalLoggerBuilder::new();
builder.level(Severity::Debug);
builder.destination(Destination::Stderr);

let logger = builder.build().unwrap();
let sys = SystemBuilder::new()
    .log(logger)
    .create().unwrap();
olexiyb commented 4 years ago

merged into actors.rs