NAME
Courier::Filter::Logger::File - File logger for the Courier::Filter framework
SYNOPSIS
use Courier::Filter::Logger::File;
my $logger = Courier::Filter::Logger::File->new(
file_name => $file_name
);
# For use in an individual filter module:
my $module = Courier::Filter::Module::My->new(
...
logger => $logger,
...
);
# For use as a global Courier::Filter logger object:
my $filter = Courier::Filter->new(
...
logger => $logger,
...
);
DESCRIPTION
This class is a file logger class for use with Courier::Filter and its filter modules. It is derived from Courier::Filter::Logger::IOHandle.
Constructor
The following constructor is provided:
- new(%options): returns Courier::Filter::Logger::File; throws Courier::Error
-
Creates a new logger that logs messages as lines to a file. Opens the file for writing, creating it if necessary.
%options is a list of key/value pairs representing any of the following options:
- file_name
-
Required. The name of the file to which log messages should be written.
- timestamp
-
A boolean value controlling whether every log message line should be prefixed with a timestamp (in local time, in ISO format). Defaults to false.
Instance methods
The following instance methods are provided, as inherited from Courier::Filter::Logger::IOHandle:
- log_error($text): throws Perl exceptions
-
Logs the error message given as
$text
(a string which may contain newlines). Prefixes each line with a timestamp if thetimestamp
option has been set through the constructor. - log_rejected_message($message, $reason): throws Perl exceptions
-
Logs the Courier::Message given as
$message
as having been rejected due to$reason
(a string which may contain newlines).
SEE ALSO
Courier::Filter::Logger::IOHandle, Courier::Filter::Logger, Courier::Filter::Overview.
For AVAILABILITY, SUPPORT, and LICENSE information, see Courier::Filter::Overview.
AUTHOR
Julian Mehnle <julian@mehnle.net>