Mercurial > hg > release > icedtea-web-1.8
view rust-launcher/src/log_helper.rs @ 1554:65de3b40a457
Implemented basic stub for file logging
* rust-launcher/src/log_helper.rs: extracted log_impl from os.Implemented (always on for now) call to log to file
* rust-launcher/src/main.rs: made aware of new log_hlper module
* rust-launcher/src/os_access.rs: adapted to log_helper. Added forgotten is_verbose to windows os impl.
author | Jiri Vanek <jvanek@redhat.com> |
---|---|
date | Sat, 16 Feb 2019 20:56:33 +0100 |
parents | |
children | 7ef277699fd1 |
line wrap: on
line source
use os_access; use std::fs::OpenOptions; use std::io::Write; use std::time::SystemTime; use std::time::UNIX_EPOCH; use std::fs::File; static mut first: bool = true; //0 critical //1 info //2 debug only pub fn log_impl(level: i32, os: &os_access::Os, s: &str) { if level == 0 {} else if level == 1 { println!("{}", s); } else if level == 2 { if os.is_verbose() { println!("{}", s); } } unsafe { if first { //mkdir //createfile //rust itw log initiate dor so first = false; let start = SystemTime::now(); let t = start.duration_since(UNIX_EPOCH).expect("time should be measureable"); let mut file = File::create("my-file").expect("failed to create file log"); if let Err(e) = write!(&mut file, "itw-rust-debug: file log started: {}\n", t.as_secs()) { println!("Couldn't write to file: {}", e); } file.sync_all(); } } let mut file = OpenOptions::new() .write(true) .append(true) .open("my-file") .expect("failed to append to file log"); if let Err(e) = writeln!(&mut file, "{}", s) { println!("Couldn't write to file: {}", e); } file.sync_all(); }