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