diff --git a/Cargo.lock b/Cargo.lock index acdbb5ce7a3..e3f64d7a426 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -93,6 +93,15 @@ dependencies = [ "url", ] +[[package]] +name = "ansi_term" +version = "0.12.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d52a9bb7ec0cf484c551830a7ce27bd20d67eac647e1befb56b0be4ee39a55d2" +dependencies = [ + "winapi 0.3.9", +] + [[package]] name = "anyhow" version = "1.0.34" @@ -282,7 +291,6 @@ dependencies = [ "diesel_full_text_search", "diesel_migrations", "dotenv", - "env_logger", "failure", "flate2", "futures-channel", @@ -299,7 +307,6 @@ dependencies = [ "lazy_static", "lettre", "license-exprs", - "log", "oauth2", "parking_lot", "rand", @@ -316,6 +323,8 @@ dependencies = [ "tokio", "toml", "tower-service", + "tracing", + "tracing-subscriber", "url", ] @@ -809,19 +818,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b5320ae4c3782150d900b79807611a59a99fc9a1d61d686faafc24b93fc8d7ca" -[[package]] -name = "env_logger" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f26ecb66b4bdca6c1409b40fb255eefc2bd4f6d135dab3c3124f80ffa2a9661e" -dependencies = [ - "atty", - "humantime", - "log", - "regex", - "termcolor", -] - [[package]] name = "failure" version = "0.1.8" @@ -1009,6 +1005,19 @@ dependencies = [ "slab", ] +[[package]] +name = "generator" +version = "0.6.23" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8cdc09201b2e8ca1b19290cf7e65de2246b8e91fb6874279722189c4de7b94dc" +dependencies = [ + "cc", + "libc", + "log", + "rustc_version", + "winapi 0.3.9", +] + [[package]] name = "generic-array" version = "0.12.3" @@ -1239,12 +1248,6 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "494b4d60369511e7dea41cf646832512a94e542f68bb9c49e54518e0f468eb47" -[[package]] -name = "humantime" -version = "2.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c1ad908cc71012b7bea4d0c53ba96a8cba9962f048fa68d143376143d863b7a" - [[package]] name = "hyper" version = "0.13.9" @@ -1540,6 +1543,19 @@ dependencies = [ "cfg-if 0.1.10", ] +[[package]] +name = "loom" +version = "0.3.6" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a0e8460f2f2121162705187214720353c517b97bdfb3494c0b1e33d83ebe4bed" +dependencies = [ + "cfg-if 0.1.10", + "generator", + "scoped-tls", + "serde", + "serde_json", +] + [[package]] name = "mac" version = "0.1.1" @@ -1587,6 +1603,15 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ffbee8634e0d45d258acb448e7eaab3fce7a0a467395d4d9f228e3c1f01fb2e4" +[[package]] +name = "matchers" +version = "0.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f099785f7595cc4b4553a174ce30dd7589ef93391ff414dbb67f62392b9e0ce1" +dependencies = [ + "regex-automata", +] + [[package]] name = "matches" version = "0.1.8" @@ -2227,6 +2252,16 @@ dependencies = [ "thread_local", ] +[[package]] +name = "regex-automata" +version = "0.1.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae1ded71d66a4a97f5e961fd0cb25a5f366a42a41570d16a763a69c092c26ae4" +dependencies = [ + "byteorder", + "regex-syntax", +] + [[package]] name = "regex-syntax" version = "0.6.21" @@ -2331,6 +2366,12 @@ dependencies = [ "parking_lot", ] +[[package]] +name = "scoped-tls" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ea6a9290e3c9cf0f18145ef7ffa62d68ee0bf5fcd651017e586dc7fd5da448c2" + [[package]] name = "scopeguard" version = "1.1.0" @@ -2565,6 +2606,16 @@ dependencies = [ "opaque-debug 0.3.0", ] +[[package]] +name = "sharded-slab" +version = "0.1.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7b4921be914e16899a80adefb821f8ddb7974e3f1250223575a44ed994882127" +dependencies = [ + "lazy_static", + "loom", +] + [[package]] name = "shell-words" version = "1.0.0" @@ -3033,6 +3084,49 @@ dependencies = [ "tracing", ] +[[package]] +name = "tracing-log" +version = "0.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "5e0f8c7178e13481ff6765bd169b33e8d554c5d2bbede5e32c356194be02b9b9" +dependencies = [ + "lazy_static", + "log", + "tracing-core", +] + +[[package]] +name = "tracing-serde" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fb65ea441fbb84f9f6748fd496cf7f63ec9af5bca94dd86456978d055e8eb28b" +dependencies = [ + "serde", + "tracing-core", +] + +[[package]] +name = "tracing-subscriber" +version = "0.2.15" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "a1fa8f0c8f4c594e4fc9debc1990deab13238077271ba84dd853d54902ee3401" +dependencies = [ + "ansi_term", + "chrono", + "lazy_static", + "matchers", + "regex", + "serde", + "serde_json", + "sharded-slab", + "smallvec 1.5.0", + "thread_local", + "tracing", + "tracing-core", + "tracing-log", + "tracing-serde", +] + [[package]] name = "try-lock" version = "0.2.3" diff --git a/Cargo.toml b/Cargo.toml index cadaa2294c9..0e22a873069 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -54,7 +54,6 @@ dialoguer = "0.7.1" diesel = { version = "1.4.0", features = ["postgres", "serde_json", "chrono", "r2d2"] } diesel_full_text_search = "1.0.0" dotenv = "0.15" -env_logger = "0.8" failure = "0.1.1" flate2 = "1.0" futures-channel = { version = "0.3.1", default-features = false } @@ -69,7 +68,6 @@ indexmap = "1.0.2" jemallocator = { version = "0.3", features = ['unprefixed_malloc_on_supported_platforms', 'profiling'] } lettre = { version = "0.10.0-alpha.1", default-features = false, features = ["file-transport", "smtp-transport", "native-tls", "hostname", "builder"] } license-exprs = "^1.4" -log = "0.4" oauth2 = { version = "3.0.0", default-features = false, features = ["reqwest-010"] } parking_lot = "0.11" rand = "0.7" @@ -85,6 +83,8 @@ tar = "0.4.16" tempfile = "3" tokio = { version = "0.2", default-features = false, features = ["net", "signal", "io-std"]} toml = "0.5" +tracing = "0.1" +tracing-subscriber = "0.2" url = "2.1" [dev-dependencies] diff --git a/src/bin/server.rs b/src/bin/server.rs index 7d24ff36feb..1628b456ace 100644 --- a/src/bin/server.rs +++ b/src/bin/server.rs @@ -45,7 +45,7 @@ fn main() -> Result<(), Box> { }); // Initialize logging - env_logger::init(); + tracing_subscriber::fmt::init(); let config = cargo_registry::Config::default(); let client = Client::new(); diff --git a/src/lib.rs b/src/lib.rs index dc52ecb122f..850472e9424 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -15,11 +15,11 @@ extern crate derive_deref; #[macro_use] extern crate diesel; #[macro_use] -extern crate log; -#[macro_use] extern crate serde; #[macro_use] extern crate serde_json; +#[macro_use] +extern crate tracing; pub use crate::{app::App, config::Config, uploaders::Uploader}; use std::sync::Arc; diff --git a/src/tests/all.rs b/src/tests/all.rs index d3bf22c5ee1..8c13f3aecfb 100644 --- a/src/tests/all.rs +++ b/src/tests/all.rs @@ -7,11 +7,11 @@ extern crate diesel; #[macro_use] extern crate lazy_static; #[macro_use] -extern crate log; -#[macro_use] extern crate serde; #[macro_use] extern crate serde_json; +#[macro_use] +extern crate tracing; use crate::util::{RequestHelper, TestApp}; use cargo_registry::{ diff --git a/src/tests/util.rs b/src/tests/util.rs index 575c8371052..5e84e5448a2 100644 --- a/src/tests/util.rs +++ b/src/tests/util.rs @@ -48,9 +48,10 @@ use url::Url; pub use conduit::{header, StatusCode}; pub fn init_logger() { - let _ = env_logger::builder() - .format_timestamp(None) - .is_test(true) + let _ = tracing_subscriber::fmt() + .with_env_filter(tracing_subscriber::EnvFilter::from_default_env()) + .without_time() + .with_test_writer() .try_init(); }