tracing-rolling-file

tracing-rolling-file on GitHub Actions tracing-rolling-file on crates.io tracing-rolling-file on docs.rs GitHub: cavivie/tracing-rolling-file license: MIT or Apache-2.0 minimum rustc: 1.42

A rolling file appender with customizable rolling conditions, based on rolling-file. Includes built-in support for rolling conditions on date/time (daily, hourly, every minute) and/or size.

Follows a Debian-style naming convention for logfiles, using basename, basename.1, ..., basename.N where N is the maximum number of allowed historical logfiles.

This is useful to combine with the tracing crate and tracingappender::nonblocking::NonBlocking -- use it as an alternative to tracing_appender::rolling::RollingFileAppender.

Examples

rust use tracing_rolling_file::*; let file_appender = RollingFileAppenderBase::new( "/var/log/myprogram", RollingConditionBase::new().daily(), 9 ).unwrap();

Development

Must pass latest stable clippy, be formatted with nightly rustfmt, and pass unit tests:

cargo +nightly fmt cargo clippy --all-targets cargo test

License

Dual-licensed under the terms of either the MIT license or the Apache 2.0 license.