| Log-Fine documentation | Contained in the Log-Fine distribution. |
Log::Fine::Formatter::Syslog - Formatter for Syslog formatting
Formats messages in a style similar to syslog(1)
use Log::Fine::Formatter::Syslog;
use Log::Fine::Handle::Console;
# instantiate a handle
my $handle = Log::Fine::Handle::Console->new();
# instantiate a formatter
my $formatter = Log::Fine::Formatter::Syslog
->new( name => 'syslog0');
# set the formatter
$handle->formatter( formatter => $formatter );
# format a msg
my $str = $formatter->format(INFO, "Resistence is futile", 1);
The syslog formatter logs messages in a format similar to that produced by syslog(1).
<Mon> <Day> <HH:MM:SS> <Hostname> <ProcessName>[<ProcessID>]: <Message>
Formats the given message for the given level
Level at which to log (see Log::Fine::Levels)
Message to log
Controls caller skip level
The formatted text string in the form:
<Mon> <Day> <HH:MM:SS> <Hostname> <ProcessName>[<ProcessID>]: <Message>>
Please report any bugs or feature requests to
bug-log-fine-formatter-detailed 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.
You can find documentation for this module with the perldoc command.
perldoc Log::Fine
You can also look for information at:
$Id: 9761b376b45e2a1cc9b63e5ac2f63c8ea8c639fa $
Christopher M. Fuhrman, <cfuhrman at panix.com>
perl, Log::Fine::Formatter
Copyright (c) 2008, 2009, 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.
| Log-Fine documentation | Contained in the Log-Fine distribution. |
use strict; use warnings; package Log::Fine::Formatter::Syslog; use base qw( Log::Fine::Formatter ); use File::Basename; use Log::Fine; use Log::Fine::Formatter; #use Log::Fine::Levels; use Log::Fine::Logger; use POSIX qw( strftime ); use Sys::Hostname; our $VERSION = $Log::Fine::Formatter::VERSION; # Constant: LOG_TIMESTAMP_FORMAT # # strftime(3)-compatible format string use constant LOG_TIMESTAMP_FORMAT => ($^O eq "MSWin32") ? "%b %d %H:%M:%S" : "%b %e %T";
sub format { my $self = shift; my $lvl = shift; my $msg = shift; my $skip = shift; my $host = (split(/\./, hostname))[0]; # Set skip to default if need be $skip = Log::Fine::Logger->LOG_SKIP_DEFAULT unless (defined $skip); return sprintf("%s %s %s[%d]: %s\n", $self->_formatTime(), $host, basename($0), $$, $msg); } # format()
1; # End of Log::Fine::Formatter::Syslog