Skip to content

Commit c613581

Browse files
authored
Remove previously-emitted tracing-log metadata (#24)
2 parents 1ac8754 + b573440 commit c613581

File tree

5 files changed

+34
-10
lines changed

5 files changed

+34
-10
lines changed

Cargo.toml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,15 @@ termcolor = "1.0.5"
1515
ansi_term = "0.12.1"
1616
chrono = "0.4.10"
1717
atty = "0.2.14"
18+
tracing-log = { version = "0.1", optional = true }
19+
20+
[features]
21+
default = ["tracing-log"]
1822

1923
[dev-dependencies]
2024
glob = "0.3.0"
2125
assert_cmd = "1.0.1"
26+
log = "0.4.11"
2227

2328
[[test]]
2429
name = "ui"

examples/basic.rs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ fn main() {
1414

1515
let subscriber = Registry::default().with(layer);
1616
tracing::subscriber::set_global_default(subscriber).unwrap();
17+
#[cfg(feature = "tracing-log")]
18+
tracing_log::LogTracer::init().unwrap();
1719

1820
let app_span = span!(Level::TRACE, "hierarchical-example", version = %0.1);
1921
let _e = app_span.enter();
@@ -57,6 +59,7 @@ fn main() {
5759
debug!("disconnected");
5860
});
5961
warn!("internal error");
62+
log::error!("this is a log message");
6063
info!("exit");
6164
}
6265

examples/basic.stdout

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -34,6 +34,7 @@
3434
1:main│ │┌┘basic::conn peer_addr="8.8.8.8", port=18230
3535
1:main│ ├┘basic::server host="localhost", port=8080
3636
1:main│ ├─ms WARN basic internal error
37+
1:main│ ├─ms ERROR basic this is a log message
3738
1:main│ ├─ms INFO basic exit
3839
1:main│┌┘basic::server host="localhost", port=8080
3940
1:main├┘basic::hierarchical-example version=0.1

src/format.rs

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -189,14 +189,19 @@ pub struct FmtEvent<'a> {
189189
impl<'a> Visit for FmtEvent<'a> {
190190
fn record_debug(&mut self, field: &Field, value: &dyn fmt::Debug) {
191191
let buf = &mut self.bufs.current_buf;
192-
write!(buf, "{comma} ", comma = if self.comma { "," } else { "" },).unwrap();
193-
let name = field.name();
194-
if name == "message" {
195-
write!(buf, "{:?}", value).unwrap();
196-
self.comma = true;
197-
} else {
198-
write!(buf, "{}={:?}", name, value).unwrap();
199-
self.comma = true;
192+
let comma = if self.comma { "," } else { "" };
193+
match field.name() {
194+
"message" => {
195+
write!(buf, "{} {:?}", comma, value).unwrap();
196+
self.comma = true;
197+
}
198+
// Skip fields that are actually log metadata that have already been handled
199+
#[cfg(feature = "tracing-log")]
200+
name if name.starts_with("log.") => {}
201+
name => {
202+
write!(buf, "{} {}={:?}", comma, name, value).unwrap();
203+
self.comma = true;
204+
}
200205
}
201206
}
202207
}

src/lib.rs

Lines changed: 12 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ use tracing::{
1313
span::{Attributes, Id},
1414
Event, Subscriber,
1515
};
16+
#[cfg(feature = "tracing-log")]
17+
use tracing_log::NormalizeEvent;
1618
use tracing_subscriber::{
1719
fmt::MakeWriter,
1820
layer::{Context, Layer},
@@ -351,7 +353,15 @@ where
351353
)
352354
.expect("Unable to write to buffer");
353355
}
354-
let level = event.metadata().level();
356+
357+
#[cfg(feature = "tracing-log")]
358+
let normalized_meta = event.normalized_metadata();
359+
#[cfg(feature = "tracing-log")]
360+
let metadata = normalized_meta.as_ref().unwrap_or_else(|| event.metadata());
361+
#[cfg(not(feature = "tracing-log"))]
362+
let metadata = event.metadata();
363+
364+
let level = metadata.level();
355365
let level = if self.config.ansi {
356366
ColorLevel(level).to_string()
357367
} else {
@@ -360,7 +370,7 @@ where
360370
write!(&mut event_buf, "{level}", level = level).expect("Unable to write to buffer");
361371

362372
if self.config.targets {
363-
let target = event.metadata().target();
373+
let target = metadata.target();
364374
write!(
365375
&mut event_buf,
366376
" {}",

0 commit comments

Comments
 (0)