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


NAME

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

Back to Top


VERSION

0.17

Back to Top


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

Back to Top


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

Back to Top


SEE ALSO

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

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

Back to Top


AUTHOR

Julian Mehnle <julian@mehnle.net>

Back to Top

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