feat: replace env_logger with tracing_subscriber

This allows to get iroh logs with
RUST_LOG=iroh_net=trace
This commit is contained in:
link2xt
2024-05-18 18:06:09 +00:00
parent 97602f3fd7
commit 6d59fb49aa
7 changed files with 18 additions and 45 deletions

39
Cargo.lock generated
View File

@@ -1395,7 +1395,6 @@ dependencies = [
"percent-encoding", "percent-encoding",
"pgp", "pgp",
"pretty_assertions", "pretty_assertions",
"pretty_env_logger",
"proptest", "proptest",
"qrcodegen", "qrcodegen",
"quick-xml", "quick-xml",
@@ -1451,7 +1450,7 @@ dependencies = [
"base64 0.22.1", "base64 0.22.1",
"deltachat", "deltachat",
"deltachat-contact-tools", "deltachat-contact-tools",
"env_logger 0.11.3", "env_logger",
"futures", "futures",
"log", "log",
"num-traits", "num-traits",
@@ -1475,10 +1474,10 @@ dependencies = [
"deltachat", "deltachat",
"dirs", "dirs",
"log", "log",
"pretty_env_logger",
"rusqlite", "rusqlite",
"rustyline", "rustyline",
"tokio", "tokio",
"tracing-subscriber",
] ]
[[package]] [[package]]
@@ -1488,13 +1487,13 @@ dependencies = [
"anyhow", "anyhow",
"deltachat", "deltachat",
"deltachat-jsonrpc", "deltachat-jsonrpc",
"env_logger 0.11.3",
"futures-lite 2.3.0", "futures-lite 2.3.0",
"log", "log",
"serde", "serde",
"serde_json", "serde_json",
"tokio", "tokio",
"tokio-util", "tokio-util",
"tracing-subscriber",
"yerpc", "yerpc",
] ]
@@ -2150,19 +2149,6 @@ dependencies = [
"regex", "regex",
] ]
[[package]]
name = "env_logger"
version = "0.10.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4cd405aab171cb85d6735e5c8d9db038c17d3ca007a4d2c25f337935c3d90580"
dependencies = [
"humantime",
"is-terminal",
"log",
"regex",
"termcolor",
]
[[package]] [[package]]
name = "env_logger" name = "env_logger"
version = "0.11.3" version = "0.11.3"
@@ -4759,16 +4745,6 @@ dependencies = [
"yansi", "yansi",
] ]
[[package]]
name = "pretty_env_logger"
version = "0.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "865724d4dbe39d9f3dd3b52b88d859d66bcb2d6a0acfd5ea68a65fb66d4bdc1c"
dependencies = [
"env_logger 0.10.2",
"log",
]
[[package]] [[package]]
name = "primeorder" name = "primeorder"
version = "0.13.6" version = "0.13.6"
@@ -6381,15 +6357,6 @@ dependencies = [
"windows-sys 0.52.0", "windows-sys 0.52.0",
] ]
[[package]]
name = "termcolor"
version = "1.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
dependencies = [
"winapi-util",
]
[[package]] [[package]]
name = "testdir" name = "testdir"
version = "0.9.1" version = "0.9.1"

View File

@@ -76,7 +76,6 @@ once_cell = { workspace = true }
percent-encoding = "2.3" percent-encoding = "2.3"
parking_lot = "0.12" parking_lot = "0.12"
pgp = { version = "0.11", default-features = false } pgp = { version = "0.11", default-features = false }
pretty_env_logger = { version = "0.5", optional = true }
qrcodegen = "1.7.0" qrcodegen = "1.7.0"
quick-xml = "0.31" quick-xml = "0.31"
quoted_printable = "0.5" quoted_printable = "0.5"
@@ -119,7 +118,6 @@ anyhow = { version = "1", features = ["backtrace"] } # Enable `backtrace` featur
criterion = { version = "0.5.1", features = ["async_tokio"] } criterion = { version = "0.5.1", features = ["async_tokio"] }
futures-lite = "2.3.0" futures-lite = "2.3.0"
log = "0.4" log = "0.4"
pretty_env_logger = "0.5"
proptest = { version = "1", default-features = false, features = ["std"] } proptest = { version = "1", default-features = false, features = ["std"] }
tempfile = "3" tempfile = "3"
testdir = "0.9.0" testdir = "0.9.0"

View File

@@ -11,10 +11,10 @@ anyhow = "1"
deltachat = { path = "..", features = ["internals"]} deltachat = { path = "..", features = ["internals"]}
dirs = "5" dirs = "5"
log = "0.4.21" log = "0.4.21"
pretty_env_logger = "0.5"
rusqlite = "0.31" rusqlite = "0.31"
rustyline = "14" rustyline = "14"
tokio = { version = "1.37.0", features = ["fs", "rt-multi-thread", "macros"] } tokio = { version = "1.37.0", features = ["fs", "rt-multi-thread", "macros"] }
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
[features] [features]
default = ["vendored"] default = ["vendored"]

View File

@@ -32,6 +32,7 @@ use rustyline::{
}; };
use tokio::fs; use tokio::fs;
use tokio::runtime::Handle; use tokio::runtime::Handle;
use tracing_subscriber::EnvFilter;
mod cmdline; mod cmdline;
use self::cmdline::*; use self::cmdline::*;
@@ -483,9 +484,10 @@ async fn handle_cmd(
#[tokio::main] #[tokio::main]
async fn main() -> Result<(), Error> { async fn main() -> Result<(), Error> {
pretty_env_logger::formatted_timed_builder() tracing_subscriber::fmt()
.parse_default_env() .with_env_filter(
.filter_module("deltachat_repl", log::LevelFilter::Info) EnvFilter::from_default_env().add_directive("deltachat_repl=info".parse()?),
)
.init(); .init();
let args = std::env::args().collect(); let args = std::env::args().collect();

View File

@@ -14,13 +14,13 @@ deltachat-jsonrpc = { path = "../deltachat-jsonrpc", default-features = false }
deltachat = { path = "..", default-features = false } deltachat = { path = "..", default-features = false }
anyhow = "1" anyhow = "1"
env_logger = { version = "0.11.3" }
futures-lite = "2.3.0" futures-lite = "2.3.0"
log = "0.4" log = "0.4"
serde_json = "1" serde_json = "1"
serde = { version = "1.0", features = ["derive"] } serde = { version = "1.0", features = ["derive"] }
tokio = { version = "1.37.0", features = ["io-std"] } tokio = { version = "1.37.0", features = ["io-std"] }
tokio-util = "0.7.9" tokio-util = "0.7.9"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
yerpc = { version = "0.5.2", features = ["anyhow_expose", "openrpc"] } yerpc = { version = "0.5.2", features = ["anyhow_expose", "openrpc"] }
[features] [features]

View File

@@ -11,6 +11,7 @@ use deltachat::constants::DC_VERSION_STR;
use deltachat_jsonrpc::api::{Accounts, CommandApi}; use deltachat_jsonrpc::api::{Accounts, CommandApi};
use futures_lite::stream::StreamExt; use futures_lite::stream::StreamExt;
use tokio::io::{self, AsyncBufReadExt, BufReader}; use tokio::io::{self, AsyncBufReadExt, BufReader};
use tracing_subscriber::EnvFilter;
use yerpc::RpcServer as _; use yerpc::RpcServer as _;
#[cfg(target_family = "unix")] #[cfg(target_family = "unix")]
@@ -60,7 +61,13 @@ async fn main_impl() -> Result<()> {
#[cfg(target_family = "unix")] #[cfg(target_family = "unix")]
let mut sigterm = signal_unix::signal(signal_unix::SignalKind::terminate())?; let mut sigterm = signal_unix::signal(signal_unix::SignalKind::terminate())?;
env_logger::Builder::from_env(env_logger::Env::default().default_filter_or("info")).init(); // Logs from `log` crate and traces from `tracing` crate
// are configurable with `RUST_LOG` environment variable
// and go to stderr to avoid interferring with JSON-RPC using stdout.
tracing_subscriber::fmt()
.with_env_filter(EnvFilter::from_default_env())
.with_writer(std::io::stderr)
.init();
let path = std::env::var("DC_ACCOUNTS_PATH").unwrap_or_else(|_| "accounts".to_string()); let path = std::env::var("DC_ACCOUNTS_PATH").unwrap_or_else(|_| "accounts".to_string());
log::info!("Starting with accounts directory `{}`.", path); log::info!("Starting with accounts directory `{}`.", path);

View File

@@ -45,7 +45,6 @@ skip = [
{ name = "dlopen2", version = "0.4.1" }, { name = "dlopen2", version = "0.4.1" },
{ name = "ed25519-dalek", version = "1.0.1" }, { name = "ed25519-dalek", version = "1.0.1" },
{ name = "ed25519", version = "1.5.3" }, { name = "ed25519", version = "1.5.3" },
{ name = "env_logger", version = "0.10.2" },
{ name = "event-listener", version = "2.5.3" }, { name = "event-listener", version = "2.5.3" },
{ name = "event-listener", version = "4.0.3" }, { name = "event-listener", version = "4.0.3" },
{ name = "fastrand", version = "1.9.0" }, { name = "fastrand", version = "1.9.0" },