annotate perl/lib/Logger/Logger.pm @ 0:4ecb2ce50254 draft default tip

Uploaded
author stheil
date Mon, 26 Oct 2015 10:59:07 -0400
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
1 #!/usr/bin/perl
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
2 # $Id: Logger.pm,v 1.3 2011/07/01 18:07:31 nguilhot Exp $
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
3 package Logger::Logger;
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
4
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
5 ##################################################
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
6 ## Included modules
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
7 ##################################################
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
8 ## Perl modules
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
9 use strict;
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
10 use warnings;
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
11 use diagnostics;
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
12 use Log::Log4perl;
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
13 use Log::Log4perl::Layout;
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
14 use Log::Log4perl::Level;
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
15 use Exporter 'import';
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
16
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
17 our $logger;
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
18 our @EXPORT = qw($logger);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
19
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
20 $logger = Log::Log4perl->get_logger('');
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
21
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
22 # Define stdout Appender, by default messages will only be logged to stdout
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
23 # In order to log messages to a file, you need to call the initFileLoggers
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
24 # method with the name of folder where to create the log files
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
25 my $stdout_layout = Log::Log4perl::Layout::PatternLayout->new("%5p - %m%n");
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
26 my $stdout_appender = Log::Log4perl::Appender->new(
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
27 "Log::Log4perl::Appender::Screen",
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
28 name => 'screenlog',
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
29 stderr => 1);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
30 $stdout_appender->layout($stdout_layout);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
31 $stdout_appender->threshold($INFO);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
32 $logger->add_appender($stdout_appender);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
33 $logger->level($INFO);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
34
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
35
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
36
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
37 sub changeMode {
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
38 my ($s,$verbosity) = @_;
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
39 my $debug_layout = Log::Log4perl::Layout::PatternLayout->new("%d %5p> %F{1}:%L %M - %m%n");
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
40 my $debug_appender = Log::Log4perl::Appender->new(
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
41 "Log::Log4perl::Appender::Screen",
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
42 name => 'debuglog',
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
43 stderr => 0);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
44 $debug_appender->layout($debug_layout);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
45 $logger->add_appender($debug_appender);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
46 $logger->remove_appender('screenlog');
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
47
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
48 if($verbosity == 3){
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
49 $stdout_appender->threshold($DEBUG);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
50 $logger->level($DEBUG);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
51 }
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
52 if($verbosity == 4){
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
53
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
54 $stdout_appender->threshold($TRACE);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
55 $logger->level($TRACE);
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
56 }
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
57 }
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
58
4ecb2ce50254 Uploaded
stheil
parents:
diff changeset
59 1;