Provided by: courier-filter-perl_0.200+ds-4_all bug


       Courier::Filter::Logger::File - File logger for the Courier::Filter framework


           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,


       This class is a file logger class for use with Courier::Filter and its filter modules.  It
       is derived from Courier::Filter::Logger::IOHandle.

       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:

               Required.  The name of the file to which log messages should be written.

               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

       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

       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).


       Courier::Filter::Logger::IOHandle, Courier::Filter::Logger, Courier::Filter::Overview.

       For AVAILABILITY, SUPPORT, and LICENSE information, see Courier::Filter::Overview.


       Julian Mehnle <>