Courier::Filter::Logger::File.3pm

Langue: en

Autres versions - même langue

Version: 2008-11-05 (ubuntu - 07/07/09)

Section: 3 (Bibliothèques de fonctions)

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 the "timestamp" 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>