Rodolphe Bréard
					
					11 months ago
					
				 
				
			 
		 
		
			
				
				  
				  Failed to extract signature
				  
				
			
		
		
		
	
		
			
				 4 changed files with 
34 additions and 
4 deletions
			 
			
		 
		
			
				- 
					
					
					 
					Cargo.lock
				
 
			
				- 
					
					
					 
					Cargo.toml
				
 
			
				- 
					
					
					 
					src/log.rs
				
 
			
				- 
					
					
					 
					src/main.rs
				
 
			
		
		
			
				
					
					
						
							
								
									
										
											
	
		
			
				
					| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -7,6 +7,7 @@ name = "acmed" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					version = "0.25.0-dev" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					dependencies = [ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "clap", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "syslog-tracing", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "tokio", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "tracing", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "tracing-subscriber", | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -268,6 +269,17 @@ dependencies = [ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "unicode-ident", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					[[package]] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					name = "syslog-tracing" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					version = "0.3.1" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					source = "registry+https://github.com/rust-lang/crates.io-index" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					checksum = "d349bc2df408b4bf656709a29643641cef7f1795d708f88b105c626a8f64f6e4" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					dependencies = [ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "libc", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "tracing-core", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "tracing-subscriber", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					[[package]] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					name = "thread_local" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					version = "1.1.8" | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -305,6 +317,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					dependencies = [ | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "once_cell", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					 "valuable", | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					[[package]] | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -331,6 +344,12 @@ version = "0.2.2" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					source = "registry+https://github.com/rust-lang/crates.io-index" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					[[package]] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					name = "valuable" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					version = "0.1.0" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					source = "registry+https://github.com/rust-lang/crates.io-index" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					[[package]] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					name = "winapi" | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					version = "0.3.9" | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  | 
				
			
			
		
	
										
									
								
							
						 
					 
				 
			
		
			
				
					
					
						
							
								
									
										
											
	
		
			
				
					| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -23,6 +23,7 @@ ed448 = [] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					[dependencies] | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					clap = { version = "4.5.23", default-features = false, features = ["color", "derive", "help", "std"] } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					syslog-tracing = { version = "0.3.1", default-features = false } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					tokio = { version = "1.42.0", default-features = false, features = ["rt", "rt-multi-thread"] } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					tracing = { version = "0.1.41", default-features = false, features = ["std"] } | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					tracing-subscriber = { version = "0.3.19", default-features = false, features = ["ansi", "fmt", "std"] } | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  | 
				
			
			
		
	
										
									
								
							
						 
					 
				 
			
		
			
				
					
					
						
							
								
									
										
											
	
		
			
				
					| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -23,8 +23,17 @@ impl Level { | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					}
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					pub fn init(level: Level, is_syslog: bool) {
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						let subscriber = FmtSubscriber::builder()
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							.with_max_level(level.tracing())
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							.finish();
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						tracing::subscriber::set_global_default(subscriber).expect("setting default subscriber failed");
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						if is_syslog {
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							let identity = std::ffi::CStr::from_bytes_with_nul(crate::APP_IDENTITY).unwrap();
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							let (options, facility) = Default::default();
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							let syslog = syslog_tracing::Syslog::new(identity, options, facility)
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								.expect("building syslog subscriber failed");
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							tracing_subscriber::fmt().with_writer(syslog).init();
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						} else {
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							let subscriber = FmtSubscriber::builder()
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								.with_max_level(level.tracing())
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								.finish();
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
							tracing::subscriber::set_global_default(subscriber)
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
								.expect("setting default subscriber failed");
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
						}
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					}
 | 
				
			
			
		
	
										
									
								
							
						 
					 
				 
			
		
			
				
					
					
						
							
								
									
										
											
	
		
			
				
					| 
						
						
							
								
							
						
						
					 | 
				
				 | 
				
					@ -3,6 +3,7 @@ mod log; | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					use clap::Parser;
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					pub const APP_IDENTITY: &[u8] = b"acmed\0";
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					pub const APP_THREAD_NAME: &str = "acmed-runtime";
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					pub const DEFAULT_CONFIG_PATH: &str = "/etc/acmed/acmed.toml";
 | 
				
			
			
		
	
		
			
				
					 | 
					 | 
				
				 | 
				
					pub const DEFAULT_LOG_LEVEL: log::Level = log::Level::Warn;
 | 
				
			
			
		
	
	
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
				
				 | 
				
					
  |