Skip to content

Commit 22343f3

Browse files
committed
logging: fix bugs
1 parent f5006a3 commit 22343f3

File tree

1 file changed

+20
-21
lines changed

1 file changed

+20
-21
lines changed

src/logging.rs

Lines changed: 20 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ use tracing_subscriber::{
77
use crate::{
88
print_to_terminal,
99
vfs::{create_drive, open_file, File},
10-
Address,
10+
Address, Request,
1111
};
1212

1313
pub struct RemoteLogSettings {
1414
pub target: Address,
15-
pub level: u8,
15+
pub level: Level,
1616
}
1717

1818
pub struct RemoteWriter {
@@ -41,11 +41,7 @@ pub struct TerminalWriterMaker {
4141

4242
impl std::io::Write for RemoteWriter {
4343
fn write(&mut self, buf: &[u8]) -> std::io::Result<usize> {
44-
Request::to(self.target)
45-
.body(buf)
46-
.send()
47-
.unwrap()
48-
.map_err(|e| std::io::Error::new(std::io::ErrorKind::Other, e))?;
44+
Request::to(&self.target).body(buf).send().unwrap();
4945
Ok(buf.len())
5046
}
5147

@@ -55,11 +51,11 @@ impl std::io::Write for RemoteWriter {
5551
}
5652

5753
impl<'a> tracing_subscriber::fmt::MakeWriter<'a> for RemoteWriterMaker {
58-
type Writer = FileWriter;
54+
type Writer = RemoteWriter;
5955

6056
fn make_writer(&'a self) -> Self::Writer {
61-
FileWriter {
62-
file: File::new(self.file.path.clone(), self.file.timeout),
57+
RemoteWriter {
58+
target: self.target.clone(),
6359
}
6460
}
6561
}
@@ -176,17 +172,6 @@ pub fn init_logging(
176172

177173
// TODO: can we DRY?
178174
let Some(remote) = remote else {
179-
let remote_filter = EnvFilter::new(remote.level.as_str());
180-
let sub = sub.with(
181-
fmt::layer()
182-
.with_file(true)
183-
.with_line_number(true)
184-
.with_writer(remote_writer_maker)
185-
.with_ansi(false)
186-
.with_target(false)
187-
.json()
188-
.with_filter(remote_filter),
189-
);
190175
if terminal_level >= Level::DEBUG {
191176
sub.with(
192177
fmt::layer()
@@ -258,6 +243,20 @@ pub fn init_logging(
258243
return Ok(());
259244
};
260245

246+
let remote_filter = EnvFilter::new(remote.level.as_str());
247+
let remote_writer_maker = RemoteWriterMaker {
248+
target: remote.target,
249+
};
250+
let sub = sub.with(
251+
fmt::layer()
252+
.with_file(true)
253+
.with_line_number(true)
254+
.with_writer(remote_writer_maker)
255+
.with_ansi(false)
256+
.with_target(false)
257+
.json()
258+
.with_filter(remote_filter),
259+
);
261260
if terminal_level >= Level::DEBUG {
262261
sub.with(
263262
fmt::layer()

0 commit comments

Comments
 (0)