NAME

Log::Fine::Logger - Main logging object

SYNOPSIS

Provides an object through which to log.

use Log::Fine;
use Log::Fine::Logger;

# get a new logging object
my $log = Log::Fine->logger("mylogger");

# alternatively, specify a custom map
my $log = Log::Fine->logger("mylogger", "Syslog");

# register a handle
$log->registerHandle( Log::Fine::Handle::Console->new() );

# log a message
$log->log(DEBG, "This is a really cool module!");

# illustrate use of the log skip API
package Some::Package::That::Overrides::Log::Fine::Logger;

use base qw( Log::Fine::Logger );

sub log
{
    my $self = shift;
    my $lvl  = shift;
    my $msg  = shift;

    # do some custom stuff to message

    # make sure the formatter logs the correct calling method.
    $self->incrSkip();
    $self->SUPER::log($lvl, $msg);
    $self->decrSkip();

} # log()

DESCRIPTION

The Logger class is the main workhorse of the Log::Fine framework, providing the main "log" method from which to log. In addition, the Logger class provides means by which the developer can control the parameter passed to any caller() call so information regarding the correct stack frame is displayed.

decrSkip

Decrements the value of the skip attribute by one

Returns

The newly decremented value

incrSkip

Increments the value of the skip attribute by one

Returns

The newly incremented value

log

Logs the message at the given log level

Parameters

  • level

    Level at which to log

  • message

    Message to log

Returns

The object

registerHandle

Registers the given Log::Fine::Handle object with the logging facility.

Parameters

Returns

The object

skip

Getter/Setter for the objects skip attribute

See "caller" in perlfunc for details

Returns

The object's skip attribute

BUGS

Please report any bugs or feature requests to bug-log-fine-logger 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.

SUPPORT

You can find documentation for this module with the perldoc command.

perldoc Log::Fine

You can also look for information at:

REVISION INFORMATION

$Id: 4c0adbddb9d580d7ff6cd27387d8e4d19d6727df $

AUTHOR

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

SEE ALSO

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

COPYRIGHT & LICENSE

Copyright (c) 2008, 2010 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.