# NAME Log::YetAnother - A flexible logging class for Perl # VERSION 0.03 # SYNOPSIS use Log::YetAnother; my $logger = Log::YetAnother->new(logger => 'logfile.log'); $logger->debug('This is a debug message'); $logger->info('This is an info message'); $logger->notice('This is a notice message'); $logger->trace('This is a trace message'); $logger->warn({ warning => 'This is a warning message' }); # DESCRIPTION The `Log::YetAnother` class provides a flexible logging mechanism that can handle different types of loggers, including code references, arrays, file paths, and objects. It also supports logging to syslog if configured. # METHODS ## new my $logger = Log::YetAnother->new(%args); Creates a new `Log::YetAnother` object. The argument can be a hash, a reference to a hash or the `logger` value. The following arguments can be provided: - `logger` - A logger can be a code reference, an array reference, a file path, or an object. - `syslog` - A hash reference for syslog configuration. - `script_name` - Name of the script, needed when `syslog` is given ## debug $logger->debug(@messages); Logs a debug message. ## info $logger->info(@messages); Logs an info message. ## notice $logger->notice(@messages); Logs a notice message. ## trace $logger->trace(@messages); Logs a trace message. ## warn $logger->warn(@messages); $logger->warn(warning => \@messages); Logs a warning message. This method also supports logging to syslog if configured. If not logging mechanism is set, falls back to `Carp`. # AUTHOR Nigel Horne ` # COPYRIGHT AND LICENSE Copyright (C) 2025 Nigel Horne This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.