1
1
#![ warn( clippy:: all, rust_2018_idioms) ]
2
2
3
3
use cargo_registry:: { metrics:: LogEncoder , util:: errors:: AppResult , App , Env } ;
4
- use std:: { borrow:: Cow , fs:: File , process:: Command , sync:: Arc , time:: Duration } ;
4
+ use std:: { borrow:: Cow , env , fs:: File , process:: Command , sync:: Arc , time:: Duration } ;
5
5
6
6
use conduit_hyper:: Service ;
7
7
use futures_util:: future:: FutureExt ;
@@ -11,6 +11,8 @@ use sentry::{ClientOptions, IntoDsn};
11
11
use std:: io:: Write ;
12
12
use tokio:: io:: AsyncWriteExt ;
13
13
use tokio:: signal:: unix:: { signal, SignalKind } ;
14
+ use tracing:: Level ;
15
+ use tracing_subscriber:: { filter, prelude:: * } ;
14
16
15
17
const CORE_THREADS : usize = 4 ;
16
18
@@ -33,7 +35,15 @@ fn main() -> Result<(), Box<dyn std::error::Error>> {
33
35
} ) ;
34
36
35
37
// Initialize logging
36
- tracing_subscriber:: fmt:: init ( ) ;
38
+
39
+ let log_filter = env:: var ( "RUST_LOG" )
40
+ . unwrap_or_default ( )
41
+ . parse :: < filter:: Targets > ( )
42
+ . expect ( "Invalid RUST_LOG value" ) ;
43
+
44
+ tracing_subscriber:: registry ( )
45
+ . with ( tracing_subscriber:: fmt:: layer ( ) . with_filter ( log_filter) )
46
+ . init ( ) ;
37
47
38
48
let config = cargo_registry:: config:: Server :: default ( ) ;
39
49
let env = config. env ( ) ;
0 commit comments