Log::Fine::Handle::Console - Output messages to C<STDERR> or C<STDOUT>


Log-Fine documentation Contained in the Log-Fine distribution.

Index


Code Index:

NAME

Top

Log::Fine::Handle::Console - Output messages to STDERR or STDOUT

SYNOPSIS

Top

Provides logging to either STDERR or STDOUT.

    # Get a new logger
    my $log = Log::Fine->logger("foo");

    # register a file handle
    my $handle = Log::Fine::Handle::Console
        ->new( name => 'myname',
               mask => LOGMASK_EMERG | LOGMASK_ALERT | LOGMASK_CRIT | LOGMASK_ERR | LOGMASK_WARNING | LOGMASK_NOTICE | LOGMASK_INFO,
               use_stderr => undef );

    # you can set logging to STDERR per preference
    $handle->{use_stderr} = 1;

    # register the handle
    $log->registerHandle($handle);

    # log something
    $log->(INFO, "Opened new log handle");

DESCRIPTION

Top

The console handle provides logging to the console, either via STDOUT (default) or STDERR.

METHODS

Top

msgWrite

See msgWrite in Log::Fine::Handle

BUGS

Top

Please report any bugs or feature requests to bug-log-fine-handle-output 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.

SUPPORT

Top

You can find documentation for this module with the perldoc command.

    perldoc Log::Fine

You can also look for information at:

* AnnoCPAN: Annotated CPAN documentation

http://annocpan.org/dist/Log-Fine

* CPAN Ratings

http://cpanratings.perl.org/d/Log-Fine

* RT: CPAN's request tracker

http://rt.cpan.org/NoAuth/Bugs.html?Dist=Log-Fine

* Search CPAN

http://search.cpan.org/dist/Log-Fine

REVISION INFORMATION

Top

  $Id: 1a1665f6746360268e957d67b03a9ecde1a97309 $

AUTHOR

Top

Christopher M. Fuhrman, <cfuhrman at panix.com>

SEE ALSO

Top

perl, Log::Fine::Handle

COPYRIGHT & LICENSE

Top


Log-Fine documentation Contained in the Log-Fine distribution.
use strict;
use warnings;

package Log::Fine::Handle::Console;

use base qw( Log::Fine::Handle );

use Log::Fine;

our $VERSION = $Log::Fine::Handle::VERSION;

sub msgWrite
{

        my $self = shift;
        my $lvl  = shift;
        my $msg  = shift;
        my $skip = shift;

        # if we have a formatter defined, then use that, otherwise, just
        # print the raw message
        $msg = $self->{formatter}->format($lvl, $msg, $skip)
            if defined $self->{formatter};

        # where do we send the message to?
        if (defined $self->{use_stderr}) {
                print STDERR $msg;
        } else {
                print STDOUT $msg;
        }

        # Victory!
        return $self;

}          # msgWrite()

# --------------------------------------------------------------------

##
# Initializes our object

sub _init
{

        my $self = shift;

        # call the super object
        $self->SUPER::_init();

        # by default, we print messages to STDOUT
        $self->{use_stderr} = undef
            unless (exists $self->{use_stderr});

        # Victory!
        return $self;

}          # _init()

1;          # End of Log::Fine::Handle::Console