@@ -6,13 +6,15 @@ mod metrics;
6
6
7
7
use std:: fs:: { self , File } ;
8
8
use std:: path:: PathBuf ;
9
+ use std:: str:: FromStr ;
9
10
use std:: sync:: { Arc , Mutex } ;
10
11
use std:: { io, panic, process} ;
11
12
12
13
use event_manager:: SubscriberOps ;
13
14
use logger:: { error, info, ProcessTimeReporter , StoreMetric , LOGGER , METRICS } ;
14
15
use seccompiler:: BpfThreadMap ;
15
16
use snapshot:: Snapshot ;
17
+ use tracing:: { error, info} ;
16
18
use utils:: arg_parser:: { ArgParser , Argument } ;
17
19
use utils:: terminal:: Terminal ;
18
20
use utils:: validators:: validate_instance_id;
@@ -21,7 +23,6 @@ use vmm::seccomp_filters::{get_filters, SeccompConfig};
21
23
use vmm:: signal_handler:: register_signal_handlers;
22
24
use vmm:: version_map:: { FC_VERSION_TO_SNAP_VERSION , VERSION_MAP } ;
23
25
use vmm:: vmm_config:: instance_info:: { InstanceInfo , VmState } ;
24
- use vmm:: vmm_config:: logger:: { init_logger, LoggerConfig , LoggerLevel } ;
25
26
use vmm:: vmm_config:: metrics:: { init_metrics, MetricsConfig } ;
26
27
use vmm:: { EventManager , FcExitCode , HTTP_MAX_PAYLOAD_SIZE } ;
27
28
@@ -279,29 +280,30 @@ fn main_exitable() -> FcExitCode {
279
280
280
281
if let Some ( log) = arguments. single_value ( "log-path" ) {
281
282
// It's safe to unwrap here because the field's been provided with a default value.
282
- let level = arguments. single_value ( "level" ) . unwrap ( ) . to_owned ( ) ;
283
- let logger_level = match LoggerLevel :: from_string ( level) {
284
- Ok ( level) => level,
285
- Err ( err) => {
286
- return generic_error_exit ( & format ! (
287
- "Invalid value for logger level: {}.Possible values: [Error, Warning, Info, \
288
- Debug]",
289
- err
290
- ) ) ;
291
- }
283
+ let logger_level = match arguments. single_value ( "level" ) {
284
+ None => None ,
285
+ Some ( s) => match log:: Level :: from_str ( s) {
286
+ Ok ( level) => Some ( level) ,
287
+ Err ( err) => {
288
+ return generic_error_exit ( & format ! (
289
+ "Invalid value for logger level: {}.Possible values: [Error, Warning, \
290
+ Info, Debug]",
291
+ err
292
+ ) ) ;
293
+ }
294
+ } ,
292
295
} ;
293
- let show_level = arguments. flag_present ( "show-level" ) ;
294
- let show_log_origin = arguments. flag_present ( "show-log-origin" ) ;
296
+ let show_level = Some ( arguments. flag_present ( "show-level" ) ) ;
297
+ let show_log_origin = Some ( arguments. flag_present ( "show-log-origin" ) ) ;
295
298
296
- let logger_config = LoggerConfig {
297
- log_path : PathBuf :: from ( log) ,
299
+ let logger_config = vmm :: vmm_config :: LoggerConfig {
300
+ log_path : Some ( PathBuf :: from ( log) ) ,
298
301
level : logger_level,
299
302
show_level,
300
303
show_log_origin,
304
+ profile_file : None ,
301
305
} ;
302
- if let Err ( err) = init_logger ( logger_config, & instance_info) {
303
- return generic_error_exit ( & format ! ( "Could not initialize logger: {}" , err) ) ;
304
- } ;
306
+ logger_config. init ( ) ;
305
307
}
306
308
307
309
if let Some ( metrics_path) = arguments. single_value ( "metrics-path" ) {
0 commit comments