Logger

Structured logging with levels, colors, and flexible output

Basic Logging
Log messages with different severity levels
Basic Logger Example
use zfish::log::{Logger, Level}; let logger = Logger::new(); logger.info("Application started"); logger.warn("This is a warning"); logger.error("An error occurred"); logger.debug("Debug information"); logger.trace("Trace message");
Output
[INFO] Application started\n[WARN] This is a warning\n[ERROR] An error occurred\n[DEBUG] Debug information\n[TRACE] Trace message
Custom Log Levels
Set minimum log level to filter messages
Log Level Example
use zfish::log::{Logger, Level}; // Set log level using builder pattern let logger = Logger::new().level(Level::Warn); // These will be shown logger.error("Error message"); logger.warn("Warning message"); // These will be hidden (below Warn level) logger.info("Info message"); logger.debug("Debug message");
Output
[ERROR] Error message\n[WARN] Warning message
Formatted Logging
Use format strings in log messages
Formatted Logging
use zfish::log::Logger; let logger = Logger::new(); let user = "Alice"; let count = 42; logger.info(&format!("User {} logged in", user)); logger.debug(&format!("Processing {} items", count)); logger.error(&format!("Failed to process item {}", count));
Output
[INFO] User Alice logged in\n[DEBUG] Processing 42 items\n[ERROR] Failed to process item 42