logforth 0.15.0

A versatile and extensible logging implementation.
Documentation

Logforth Project

Crates.io Documentation MSRV 1.75 Apache 2.0 licensed Build Status

Overview

A versatile and extensible logging implementation.

Usage

Add the dependencies to your Cargo.toml with:

cargo add log
cargo add logforth

... where log is the logging facade and logforth is the logging implementation.

Then, you can use the logger with the simplest default setup:

fn main() {
    logforth::stderr().apply();
}

Or configure the logger in a more fine-grained way:

use log::LevelFilter;
use logforth::append;

fn main() {
    logforth::builder()
        .dispatch(|d| d.filter(LevelFilter::Debug).append(append::Stderr::default()))
        .dispatch(|d| d.filter(LevelFilter::Info).append(append::Stdout::default()))
        .apply();
}

Read more demos under the examples directory.

Documentation

Read the online documents at https://docs.rs/logforth.

Minimum Rust version policy

This crate is built against the latest stable release, and its minimum supported rustc version is 1.75.0.

The policy is that the minimum Rust version required to use this crate can be increased in minor version updates. For example, if Logforth 1.0 requires Rust 1.20.0, then Logforth 1.0.z for all values of z will also require Rust 1.20.0 or newer. However, Logforth 1.y for y > 0 may require a newer minimum version of Rust.

When to release a 1.0 version

After one year of practicing the interfaces, if there are no further blockers, I'll release a 1.0 version. So consequently, it can be as early as 2025-08.

License and Origin

This project is licensed under Apache License, Version 2.0.

The name Logforth comes from an antonym to the Logback project.