use std::time::SystemTime;
fn main() {
let operation_type = "File Creation";
let operation_result = "Success";
let now = SystemTime::now();
let timestamp = now
.duration_since(SystemTime::UNIX_EPOCH)
.expect("Time went backwards")
.as_secs();
let date_time = chrono::NaiveDateTime::from_timestamp(timestamp as i64, 0);
let formatted_time = date_time.format("%Y-%m-%d %H:%M:%S");
let log_message = format!(
"Time: {}, Operation Type: {}, Operation Result: {}",
formatted_time, operation_type, operation_result
);
println!("{}", log_message);
}
使用格式化字符串在日志记录场景中的优势
- 可读性强:以直观清晰的方式组合不同类型的数据,使得日志内容易于理解,例如将时间、操作类型和结果整合在一条日志中。
- 灵活性高:可以根据实际需求灵活调整日志格式,如改变时间格式或者增加其他信息。
- 易于维护:格式化字符串将日志结构和内容生成逻辑清晰地展示出来,在需要修改日志格式时,只需调整格式化字符串部分,代码整体结构变动较小。