16 releases (10 breaking)
| 0.12.2 | Aug 30, 2023 |
|---|---|
| 0.11.0 | Jul 22, 2023 |
| 0.6.1 | Mar 1, 2023 |
| 0.6.0 | Nov 2, 2022 |
| 0.4.0 | Jul 24, 2022 |
#914 in Debugging
255 downloads per month
Used in 5 crates
(4 directly)
100KB
2.5K
SLoC
Library providing functionalities to set and capture log_id::LogId events.
log_id::LogIds are used to identify and group events.
An event is captured by a central LOGGER once the event is finalized.
Finalizing is done explicitly using .finalize(), converting the event back to the log_id::LogId, or implicitly when the event is dropped.
The LOGGER is created using [evident]'s Publisher struct.
This allows to add subscribers to one or more log_id::LogIds to receive events set with those log_id::LogIds.
For more information about subscription variants, checkout evident.
Usage:
use logid::{log_id::{LogId, LogLevel}, err, ErrLogId};
use thiserror::Error;
#[derive(Debug, Clone, ErrLogId, Error)]
enum CrateError {
#[error("`SomeError` description.")]
SomeError,
#[error("`InternalError` description.")]
InternalError,
}
fn my_func() -> Result<(), CrateError> {
// some code ...
// on error
err!(CrateError::SomeError)
}
logid
Rust logging framework using IDs to identify log events.
Using logid
use logid::{log_id::{LogId, LogLevel}, err, ErrLogId};
use thiserror::Error;
#[derive(Debug, Clone, ErrLogId, Error)]
enum CrateError {
#[error("`SomeError` description.")]
SomeError,
#[error("`InternalError` description.")]
InternalError,
}
fn my_func() -> Result<(), CrateError> {
// some code ...
// on error
err!(CrateError::SomeError)
}
Contributing
There is not yet a contributing guideline, but feel free to create issues and/or pull requests.
Note that any contribution submitted to logid is going to be MIT licensed.
License
MIT Licensed
Dependencies
~1–12MB
~87K SLoC