sjl 0.5.1

Simple JSON Logger
Documentation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
use std::{io::stderr, sync::Arc};

use crate::{
    logger::LogObject,
    utils::write_log_line::{FormatState, write_log_line},
};

pub fn flush_batch(batch: &[LogObject], format_state: &Arc<FormatState>) {
    // Lock once for the whole batch
    let mut stderr = stderr().lock();
    for log in batch {
        if let Err(err) = write_log_line(&mut stderr, log, format_state) {
            eprintln!("failed to write log: {err}")
        }
    }
}