use actix_web::actix::{Actor, Addr, SyncContext}; use diesel::prelude::*; use slog::Drain; pub struct DbExecutor(pub SqliteConnection); impl Actor for DbExecutor { type Context = SyncContext; } pub struct AppState { pub log: slog::Logger, pub db: Addr, } pub fn setup_logging() -> slog::Logger { let decorator = slog_term::TermDecorator::new().build(); let drain = slog_term::CompactFormat::new(decorator).build().fuse(); let drain = slog_async::Async::new(drain).build().fuse(); slog::Logger::root(drain, o!()) }