
Log::Fine::Utils - Functional wrapper around Log::Fine

Provides a functional wrapper around Log::Fine.
use Log::Fine::Handle;
use Log::Fine::Handle::File;
use Log::Fine::Handle::Syslog;
use Log::Fine::Levels::Syslog;
use Log::Fine::Utils;
use Sys::Syslog;
# set up some handles as you normally would. First, a handler for
# file logging:
my $handle1 = Log::Fine::Handle::File
->new( name => "file0",
mask => Log::Fine::Levels::Syslog->bitmaskAll(),
formatter => Log::Fine::Formatter::Basic->new() );
# and now a handle for syslog
my $handle2 = Log::Fine::Handle::Syslog
->new( name => "syslog0",
mask => LOGMASK_EMERG | LOGMASK_CRIT | LOGMASK_ERR,
ident => $0,
logopts => 'pid',
facility => LOG_LEVEL0 );
# open the logging subsystem with the default name "GENERIC"
OpenLog( handles => [ $handle1, [$handle2], ... ],
levelmap => "Syslog" );
# Open new logging object with name "aux". Note this will switch
# the current logger to "aux"
OpenLog( name => "aux",
handles => [ $handle1, [[$handle2], [...] ]],
levelmap => "Syslog" );
# Grab a ref to active logger
my $current_logger = CurrentLogger();
# Get name of current logger
my $loggername = $current_logger()->name();
# Switch back to GENERIC logger
OpenLog( name => "GENERIC" );
# Grab a list of defined logger names
my @names = ListLoggers();
# Log a message
Log( INFO, "The angels have my blue box" );

The Utils class provides a functional wrapper for Log::Fine and friends, thus saving the developer the tedious task of mucking about in object-oriented land.

The following functions are automatically exported by Log::Fine::Utils:
Returns the currently "active" Log::Fine::Logger object
None
Currently active Log::Fine::Logger object
Provides list of currently defined loggers
None
Array containing list of currently defined loggers or undef if no loggers are defined
Logs the message at the given log level
Level at which to log
Message to log
1 on success
Opens the logging subsystem. If called with the name of a previously defined logger object, will switch to that logger, ignoring other given hash elements.
A hash containing the following keys:
An array ref containing one or more Log::Fine::Handle objects
[optional] Log::Fine::Levels subclass to use. Will default to "Syslog" if not defined.
[optional] Name of logger. If name is defined, will switch internal logger to given name, otherwise, creates a new logger and switches to that
[default: 0] If true, Log::Fine will not croak under certain circumstances (see Log::Fine)
1 on success

Please report any bugs or feature requests to bug-log-fine-utils at rt.cpan.org, or through the web interface at http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Log-Fine. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes.

OpenLog() will croak regardless if {no_croak} is set if the following two conditions are met:
{handles} array
You can find documentation for this module with the perldoc command.
perldoc Log::Fine
You can also look for information at:

$Id: 48cd5a4fe64adcc9eed28e8196e9f7aeba3614d4 $

Christopher M. Fuhrman, <cfuhrman at panix.com>

perl, Log::Fine, Log::Fine::Handle, Log::Fine::Logger

Copyright (c) 2008, 2010, 2011 Christopher M. Fuhrman, All rights reserved
This program is free software licensed under the...
The BSD License
The full text of the license can be found in the LICENSE file included with this module.