Skip to main content

logforth_append_file/
lib.rs

1// Copyright 2024 FastLabs Developers
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7//     http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15//! Appender for writing log records to single file or rolling files.
16//!
17//! # Example
18//!
19//!```
20//! use logforth_append_file::File;
21//! use logforth_append_file::FileBuilder;
22//! use logforth_core::record::LevelFilter;
23//! use logforth_layout_json::JsonLayout;
24//!
25//! let rolling = FileBuilder::new("logs", "app_log")
26//!     .layout(JsonLayout::default())
27//!     .rollover_daily()
28//!     .build()
29//!     .unwrap();
30//!
31//! let logger = logforth_core::builder()
32//!     .dispatch(|d| d.filter(LevelFilter::All).append(rolling))
33//!     .build();
34//! ```
35
36#![cfg_attr(docsrs, feature(doc_cfg))]
37#![deny(missing_docs)]
38
39pub use self::append::File;
40pub use self::append::FileBuilder;
41
42mod append;
43mod clock;
44mod rolling;
45mod rotation;