GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages


Manual Reference Pages  -  LOG::CONTEXTUAL::WARNLOGGER (3)

.ds Aq ’

NAME

Log::Contextual::WarnLogger - logger for libraries using Log::Contextual

CONTENTS

VERSION

version 0.006005

SYNOPSIS



 package My::Package;
 use Log::Contextual::WarnLogger;
 use Log::Contextual qw( :log ),
   -default_logger => Log::Contextual::WarnLogger->new({
      env_prefix => MY_PACKAGE,
      levels => [ qw(debug info notice warning error critical alert emergency) ],
   });

 # warns [info] program started if $ENV{MY_PACKAGE_TRACE} is set
 log_info { program started }; # no-op because info is not in levels
 sub foo {
   # warns [debug] entered foo if $ENV{MY_PACKAGE_DEBUG} is set
   log_debug { entered foo };
   ...
 }



DESCRIPTION

This module is a simple logger made for libraries using Log::Contextual. We recommend the use of this logger as your default logger as it is simple and useful for most users, yet users can use set_logger in Log::Contextual to override your choice of logger in their own code thanks to the way Log::Contextual works.

METHODS

    new

Arguments: Dict[ env_prefix => Str, levels => List ] $conf



 my $l = Log::Contextual::WarnLogger->new({ env_prefix => BAR });



or:



 my $l = Log::Contextual::WarnLogger->new({
   env_prefix => BAR,
   levels => [ level1, level2 ],
 });



Creates a new logger object where env_prefix defines what the prefix is for the environment variables that will be checked for the log levels.

The log levels may be customized, but if not defined, these are used:
trace
debug
info
warn
error
fatal
For example, if env_prefix is set to FREWS_PACKAGE the following environment variables will be used:



 FREWS_PACKAGE_UPTO

 FREWS_PACKAGE_TRACE
 FREWS_PACKAGE_DEBUG
 FREWS_PACKAGE_INFO
 FREWS_PACKAGE_WARN
 FREWS_PACKAGE_ERROR
 FREWS_PACKAGE_FATAL



Note that UPTO is a convenience variable. If you set FOO_UPTO=TRACE it will enable all log levels. Similarly, if you set it to FATAL only fatal will be enabled.

CW$level

Arguments: @anything

All of the following six methods work the same. The basic pattern is:



 sub $level {
   my $self = shift;

   warn "[$level] " . join qq{\n}, @_;
      if $self->is_$level;
 }



trace



 $l->trace( entered method foo with args  join q{,}, @args );



debug



 $l->debug( entered method foo );



info



 $l->info( started process foo );



warn



 $l->warn( possible misconfiguration at line 10 );



error



 $l->error( non-numeric user input! );



fatal



 $l->fatal( 1 is never equal to 0! );



If different levels are specified, appropriate functions named for your custom levels work as you expect.

    is_$level

All of the following six functions just return true if their respective environment variable is enabled.

is_trace



 say tracing if $l->is_trace;



is_debug



 say debuging if $l->is_debug;



is_info



 say q{infoing} if $l->is_info;



is_warn



 say warning if $l->is_warn;



is_error



 say erroring if $l->is_error;



is_fatal



 say q{fataling} if $l->is_fatal;



If different levels are specified, appropriate is_$level functions work as you would expect.

AUTHOR

Arthur Axel fREW Schmidt <frioux+cpan@gmail.com>

COPYRIGHT AND LICENSE

This software is copyright (c) 2015 by Arthur Axel fREW Schmidt.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.

Search for    or go to Top of page |  Section 3 |  Main Index


perl v5.20.3 LOG::CONTEXTUAL::WARNLOGGER (3) 2015-03-14

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with manServer 1.07.