NAME
Log::Fine::Handle::File - Output log messages to a file
SYNOPSIS
Provides logging to a file
use Log::Fine;
use Log::Fine::Handle::File;
# Get a new logger
my $log = Log::Fine->logger("foo");
# Create a file handle (default values shown)
my $handle = Log::Fine::Handle::File
->new( name => 'file0',
mask => LOGMASK_EMERG | LOGMASK_ALERT | LOGMASK_CRIT | LOGMASK_ERR | LOGMASK_WARNING | LOGMASK_NOTICE | LOGMASK_INFO,
dir => "/var/log",
file => "myapp.log",
autoflush => 0 );
# Register the handle
$log->registerHandle($handle);
# Log something
$log->(INFO, "Opened new log handle");
DESCRIPTION
Log::Fine::Handle::File provides logging to a file. Note that this module will log messages to a specific file. Support for dynamic time-stamps in file names (e.g., myapp-080523.log
) is provided by Log::Fine::Handle::File::Timestamp. Further features, such as log file rotation a la syslog can be added by sub-classing this class.
Constructor Parameters
The following parameters can be passed to Log::Fine::Handle::File->new():
name
[optional] Name of this object (see Log::Fine). Will be autoset if not specified.
mask
Mask to set the handle to (see Log::Fine::Handle)
dir
Directory to place the log file
file
Name of the log file. Note that if the given file is an absolute path, then
dir
will be ignored.autoclose
[default: 0] If set to true, will close the filehandle after every invocation of "msgWrite". NOTE: will significantly slow down logging speed if multiple messages are logged at once. Consider autoflush instead
autoflush
[default: 0] If set to true, will force file flush after every write or print (see FileHandle and perlvar)
METHODS
fileHandle
Getter for file handle. If a file handle is not defined, then one will be created.
Override this method if you wish to support features such as time-stamped and/or rotating files.
Returns
A FileHandle object
msgWrite
See "msgWrite" in Log::Fine::Handle
BUGS
Please report any bugs or feature requests to bug-log-fine 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:
AnnoCPAN: Annotated CPAN documentation
CPAN Ratings
RT: CPAN's request tracker
Search CPAN
AUTHOR
Christopher M. Fuhrman, <cfuhrman at pobox.com>
SEE ALSO
perl, Log::Fine, Log::Fine::Handle
COPYRIGHT & LICENSE
Copyright (c) 2008, 2010-2011, 2013 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.