Andy Wardley > Badger > Badger::Log::File

Download:
Badger-0.09.tar.gz

Dependencies

Annotate this POD

CPAN RT

New  2
Open  0
View/Report Bugs
Source  

NAME ^

Badger::Log::File - writes log messages to a log file

SYNOPSIS ^

    use Badger::Log::File;
    
    my $log = Badger::Log::File->new({
        filename  => '/var/log/badger.log',
        keep_open => 1,
    });
        
    $log->log('a debug message');
    $log->info('an info message');
    $log->warn('a warning message');
    $log->error('an error message');
    $log->fatal('a fatal error message');

DESCRIPTION ^

This module is a subclass of Badger::Log that implements a simple mechanism for logging messages to a file. It uses Badger::Filesystem for all the underlying file operations.

CONFIGURATION OPTIONS ^

The following configuration options are available in addition to those inherited form the Badger::Log base class.

filename

The name of the log file which you want messages appended to. This parameter is mandatory.

filesystem

An optional reference to a Badger::Filesystem object, or the name of a filesystem class having a file() method similar to that in Badger::Filesystem. This defaults to the Badger::Filesystem class.

keep_open

A flag indicating if the log file should be kept open between calls to logging methods. The default value is 0 meaning that the file will be opened for each message and closed again afterwards. Set it to any true value to have the file kept open.

METHODS ^

The following methods are implemented in addition to those inherited from Badger::Log and its base classes.

log($level,$message)

This method redefines the log() method in Badger::Log to write logging messages to the log file.

INTERNAL METHODS

init(\%config)

Custom initialiser method which calls the base class init_log() method followed by the init_file() method.

init_file(\%config)

Custom initialiser method which handles the configuration and initialisation of the file-specific parts of the logger.

acquire()

This method acquires a file handle (an IO::File object) for the specified filename, opened ready for appending log messages.

release()

The method releases a previously acquired file handle. i.e. it closes the log file.

AUTHOR ^

Andy Wardley http://wardley.org/

COPYRIGHT ^

Copyright (C) 2005-2009 Andy Wardley. All Rights Reserved.

This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

SEE ALSO ^

Badger::Log

syntax highlighting: