#logging #rotating #rotation #logrotate

rotating-file

一个线程安全的可自定义旋转行为的旋转文件

9个版本

0.3.6 2022年4月16日
0.3.5 2021年1月18日
0.2.0 2021年1月17日
0.1.0 2021年1月17日

301压缩

每月31次下载

Apache-2.0

19KB
411

rotating-file

一个线程安全的可自定义旋转行为的旋转文件。

示例

use rotating_file::RotatingFile;

fn main() {
    let root_dir = "./target/tmp";
    let s = "The quick brown fox jumps over the lazy dog";

    // rotated by 1 kilobyte, compressed with gzip
    let rotating_file = RotatingFile::new(root_dir, Some(1), None, None, None, None, None);
    for _ in 0..24 {
        rotating_file.writeln(s).unwrap();
    }
    rotating_file.close();

    assert_eq!(2, std::fs::read_dir(root_dir).unwrap().count());
    std::fs::remove_dir_all(root_dir).unwrap();
}

lib.rs:

一个线程安全的可自定义旋转行为的旋转文件。

示例

use rotating_file::RotatingFile;

let root_dir = "./target/tmp";
let s = "The quick brown fox jumps over the lazy dog";
let _ = std::fs::remove_dir_all(root_dir);

// rotated by 1 kilobyte, compressed with gzip
let rotating_file = RotatingFile::new(root_dir, Some(1), None, None, None, None, None);
for _ in 0..24 {
    rotating_file.writeln(s).unwrap();
}
rotating_file.close();

assert_eq!(2, std::fs::read_dir(root_dir).unwrap().count());
std::fs::remove_dir_all(root_dir).unwrap();

依赖

~6.5MB
~106K SLoC