table of contents
App::CELL::Log(3pm) | User Contributed Perl Documentation | App::CELL::Log(3pm) |
NAME¶
App::CELL::Log - the Logging part of CELL
SYNOPSIS¶
use App::CELL::Log qw( $log ); # set up logging for application FooBar -- need only be done once $log->init( ident => 'FooBar' ); # do not suppess 'trace' and 'debug' messages $log->init( debug_mode => 1 ); # do not append filename and line number of caller $log->init( show_caller => 0 ); # log messages at different log levels my $level = 'warn' # can be any of the levels provided by Log::Any $log->$level ( "Foobar log message" ); # the following App::CELL-specific levels are supported as well $log->ok ( "Info-level message prefixed with 'OK: '"); $log->not_ok ( "Info-level message prefixed with 'NOT_OK: '"); # by default, the caller's filename and line number are appended # to suppress this for an individual log message: $log->debug ( "Debug-level message", suppress_caller => 1 ); # Log a status object (happens automatically when object is # constructed) $log->status_obj( $status_obj ); # Log a message object $log->message_obj( $message_obj );
EXPORTS¶
This module provides the following exports:
- $log - App::CELL::Log singleton
PACKAGE VARIABLES¶
- $ident - the name of our application
- $show_caller - boolean value, determines if caller information is displayed in log messages
- $debug_mode - boolean value, determines if we display debug messages
- $log - App::CELL::Log singleton object
- $log_any_obj - Log::Any singleton object
- @permitted_levels - list of permissible log levels
DESCRIPTION¶
App::CELL's logs using Log::Any. This "App::CELL::Log" module exists to: (1) provide documentation, (2) store the logging category ($ident), (3) store the Log::Any log object, (4) provide convenience functions for logging 'OK' and 'NOT_OK' statuses.
METHODS¶
debug_mode¶
If argument provided, set the $debug_mode package variable. If no argument, simply return the current debug-mode setting. Examples:
$log->debug_mode(0); # turn debug mode off $log->debug_mode(1); # turn debug mode on print "Debug mode is on\n" if $log->debug_mode;
ident¶
Set the $ident package variable and the Log::Any category
show_caller¶
Set the $show_caller package variable
permitted_levels¶
Access the @permitted_levels package variable.
init¶
Initializes (or reconfigures) the logger. Although in most cases folks will want to call this in order to set "ident", it is not required for logging to work. See App::CELL::Guide for instructions on how to log with App::CELL.
Takes PARAMHASH as argument. Recognized parameters:
- "ident" -- (i.e., category) string, e.g. 'FooBar' for the FooBar application, or 'CELLtest' if none given
- "show_caller" -- sets the $show_caller package variable (see above)
- "debug_mode" -- sets the $debug_mode package variable (see above)
Always returns 1.
DESTROY¶
For some reason, Perl 5.012 seems to want a DESTROY method
AUTOLOAD¶
Call Log::Any methods after some pre-processing
status_obj¶
Take a status object and log it.
2022-07-17 | perl v5.34.0 |