sozu_command_lib/logging/
mod.rs

1//! Sōzu logs, optimized for performance
2//!
3//! Instead of relying on well-known logging or tracing solutions,
4//! Sōzu has its own logging stack that prioritizes CPU performance
5
6pub mod access_logs;
7pub mod display;
8#[macro_use]
9pub mod logs;
10
11use std::net::AddrParseError;
12
13pub use crate::logging::{access_logs::*, logs::*};
14
15#[derive(thiserror::Error, Debug)]
16pub enum LogError {
17    #[error("invalid log target {0}: {1}")]
18    InvalidLogTarget(String, &'static str),
19    #[error("invalid log target {0}: {1}")]
20    InvalidSocketAddress(String, AddrParseError),
21    #[error("could not open log file {0}: {1}")]
22    OpenFile(String, std::io::Error),
23    #[error("could not connect to TCP socket {0}: {1}")]
24    TcpConnect(String, std::io::Error),
25    #[error("could not create unbound UNIX datagram: {0}")]
26    CreateUnixSocket(std::io::Error),
27    #[error("could not connect to UNIX datagram {0}: {1}")]
28    ConnectToUnixSocket(String, std::io::Error),
29    #[error("could not bind to UDP socket: {0}")]
30    UdpBind(std::io::Error),
31}