-
Notifications
You must be signed in to change notification settings - Fork 884
Closed
Labels
crate/subscriberRelated to the `tracing-subscriber` crateRelated to the `tracing-subscriber` cratekind/bugSomething isn't workingSomething isn't working
Description
Bug Report
The following code panics when the inner::log_smt(11111); function is called:
use std::str::FromStr;
use log::*;
use tracing_subscriber::{filter::{Targets, filter_fn}, prelude::*};
mod inner {
use super::*;
#[tracing::instrument(fields(yak))]
pub fn log_smt(yak: u32) {
debug!("inner - yak: {} - this is debug", yak);
info!("inner - yak: {} - this is info", yak);
warn!("inner - yak: {} - this is warn", yak);
}
}
#[test]
fn should_log() -> Result<(), std::io::Error> {
let filter = Targets::from_str("debug,tracing_test::inner=warn").unwrap();
let fmt_layer = tracing_subscriber::fmt::layer()
.with_filter(filter_fn(move |_meta| true ));
tracing_subscriber::registry().with(filter).with(fmt_layer).init();
debug!("before inner");
inner::log_smt(11111);
debug!("after inner");
Ok(())
}The bug disappears if the .with_filter(filter_fn(move |_meta| true )) call is removed.
The bug disappears also if the Target filter is set to debug instead of debug,tracing_test::inner=warn.
Error message
If you launch the test, it panics with this message:
thread 'should_log' panicked at 'assertion failed: `(left == right)`
left: `1`,
right: `0`: if we are in or starting a filter pass, we must not be in an interest pass.', /home/ufo/.cargo/registry/src/mygithub.libinneed.workers.dev-1ecc6299db9ec823/tracing-subscriber-0.2.22/src/filter/layer_filters.rs:611:13Version
Here is the cargo.toml file:
[package]
name = "tracing_test"
version = "0.1.0"
edition = "2018"
[dependencies]
log = "0.4"
tracing = "0.1.27"
tracing-subscriber = "0.2.22"Platform
$ uname -a
Linux ufo-lap-1 5.11.0-34-generic #36-Ubuntu SMP Thu Aug 26 19:22:09 UTC 2021 x86_64 x86_64 x86_64 GNU/LinuxReproducer
Here you can find a minimal reproducer for the issue: https://github.com/ufoscout/tracing_test
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
crate/subscriberRelated to the `tracing-subscriber` crateRelated to the `tracing-subscriber` cratekind/bugSomething isn't workingSomething isn't working