++ed by:

26 PAUSE users
13 non-PAUSE users.

Dave Rolsky


Log::Dispatch::Screen - Object for logging to the screen


  use Log::Dispatch::Screen;

  my $screen = Log::Dispatch::Screen->new( name      => 'screen',
                                           min_level => 'debug',
                                           stderr    => 1 );

  $screen->log( level => 'alert', message => "I'm searching the city for sci-fi wasabi\n" );


This module provides an object for logging to the screen (really STDOUT or STDERR).


  • new(%p)

    This method takes a hash of parameters. The following options are valid:

    • name ($)

      The name of the object (not the filename!). Required.

    • min_level ($)

      The minimum logging level this object will accept. See the Log::Dispatch documentation for more information. Required.

    • max_level ($)

      The maximum logging level this obejct will accept. See the Log::Dispatch documentation for more information. This is not required. By default the maximum is the highest possible level (which means functionally that the object has no maximum).

    • stderr (0 or 1)

      Indicates whether or not logging information should go to STDERR. If false, logging information is printed to STDOUT instead. This defaults to true.

    • callbacks( \& or [ \&, \&, ... ] )

      This parameter may be a single subroutine reference or an array reference of subroutine references. These callbacks will be called in the order they are given and passed a hash containing the following keys:

       ( message => $log_message, level => $log_level )

      The callbacks are expected to modify the message and then return a single scalar containing that modified message. These callbacks will be called when either the log or log_to methods are called and will only be applied to a given message once.

  • log_message( message => $ )

    Sends a message to the appropriate output. Generally this shouldn't be called directly but should be called through the log() method (in Log::Dispatch::Output).


Dave Rolsky, <autarch@urth.org>