Skip to content

Commit 2bcdd31

Browse files
committed
refactor: add log proxy, and with_kv field to OmaFormatter
1 parent fe135c8 commit 2bcdd31

File tree

2 files changed

+25
-11
lines changed

2 files changed

+25
-11
lines changed

oma-console/src/print.rs

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -138,25 +138,29 @@ fn term_color<D>(input: D, color: Action) -> StyledObject<D> {
138138
///
139139
/// # Example:
140140
/// ```
141-
/// use spdlog::{info, sink::StdStreamSink, Logger};
141+
/// use spdlog::{info, sink::StdStreamSink, Logger, Result};
142142
/// use oma_console::OmaLayer;
143143
///
144-
/// let mut logger_builder = Logger::builder();
144+
/// fn main() -> Result<()> {
145+
/// let mut logger_builder = Logger::builder();
145146
///
146-
/// let logger = logger_builder.sink(Arc::new(
147-
/// StdStreamSink::builder().formatter(Box::new(OmaLayer::default())).build().unwrap()
148-
/// )).build().unwrap();
147+
/// let logger = logger_builder.sink(Arc::new(
148+
/// StdStreamSink::builder().formatter(Box::new(OmaLayer::default())).build()?
149+
/// )).build()?;
149150
///
150-
/// spdlog::set_default_logger(Arc::new(logger));
151+
/// spdlog::set_default_logger(Arc::new(logger));
151152
///
152-
/// info!("My name is oma!");
153+
/// info!("My name is oma!");
154+
/// }
153155
/// ```
154156
///
155157
#[derive(Clone)]
156158
pub struct OmaFormatter {
157159
with_ansi: bool,
158160
with_time: bool,
159161
with_file: bool,
162+
#[allow(unused)]
163+
with_kv: bool,
160164
prefix_len: u16,
161165
}
162166

@@ -166,6 +170,7 @@ impl Default for OmaFormatter {
166170
with_ansi: true,
167171
with_file: false,
168172
with_time: false,
173+
with_kv: false,
169174
prefix_len: 10,
170175
}
171176
}
@@ -194,6 +199,12 @@ impl OmaFormatter {
194199
self
195200
}
196201

202+
#[allow(unused)]
203+
pub fn with_kv(mut self, with_kv: bool) -> Self {
204+
self.with_kv = with_kv;
205+
self
206+
}
207+
197208
fn format_impl(
198209
&self,
199210
record: &spdlog::Record,

src/main.rs

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,9 @@ use reqwest::Client;
3939
use rustix::stdio::stdout;
4040
// FIXME: `spdlog::error` is conflict with `mod error`
4141
use spdlog::{
42-
Level, LevelFilter, Logger, debug, default_logger, error as error2, info, set_default_logger,
42+
Level, LevelFilter, Logger, debug, default_logger, info, init_log_crate_proxy,
43+
prelude::error,
44+
set_default_logger,
4345
sink::{AsyncPoolSink, RotatingFileSink, RotationPolicy, StdStreamSink},
4446
warn,
4547
};
@@ -296,9 +298,9 @@ fn init_logger(
296298
.expect("Failed to get state dir")
297299
.join("oma")
298300
})
299-
.join("oma.log")
300-
.to_string_lossy()
301-
.to_string();
301+
.join("oma.log");
302+
303+
// TODO: We need `spdlog-rs` implements `EnvFilter` first
302304

303305
let (level_filter, formatter) = if !debug && !dry_run {
304306
let level_filter = LevelFilter::MoreSevereEqual(Level::Info);
@@ -348,6 +350,7 @@ fn init_logger(
348350
let logger = logger_builder.build().unwrap();
349351

350352
set_default_logger(Arc::new(logger));
353+
init_log_crate_proxy()?;
351354

352355
(Some(default_logger()), Ok(log_file))
353356
}

0 commit comments

Comments
 (0)