aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ManaTools/Module.pm
diff options
context:
space:
mode:
authorMaarten Vanraes <alien@mageia.org>2016-05-05 14:59:39 +0200
committerMaarten Vanraes <alien@mageia.org>2016-05-09 10:34:30 +0200
commit952e34d4082e459c57d70c6db981dff87b2ca87d (patch)
treee78c3667f859a146036a38a08f2bb117625e22de /lib/ManaTools/Module.pm
parentf65822318e0b3a033d315c5625074b654e9f6450 (diff)
downloadmanatools-952e34d4082e459c57d70c6db981dff87b2ca87d.tar
manatools-952e34d4082e459c57d70c6db981dff87b2ca87d.tar.gz
manatools-952e34d4082e459c57d70c6db981dff87b2ca87d.tar.bz2
manatools-952e34d4082e459c57d70c6db981dff87b2ca87d.tar.xz
manatools-952e34d4082e459c57d70c6db981dff87b2ca87d.zip
Module: automatically create a logging object
Diffstat (limited to 'lib/ManaTools/Module.pm')
-rw-r--r--lib/ManaTools/Module.pm35
1 files changed, 35 insertions, 0 deletions
diff --git a/lib/ManaTools/Module.pm b/lib/ManaTools/Module.pm
index b800d0b1..5bc8c064 100644
--- a/lib/ManaTools/Module.pm
+++ b/lib/ManaTools/Module.pm
@@ -157,6 +157,41 @@ has 'loc' => (
#=============================================================
+=head2 logger
+
+ logger attribute defines logging object that uses the loc attribute
+ and goes to Syslog. (see ManaTools::Shared::Logging for details).
+ You can use this attribute to log various messages:
+
+ $log->D("debugstuff: %s", $somestring);
+ $log->I("infostuff: %s", $somestring);
+ $log->W("warnstuff: %s", $somestring);
+ $log->E("errorstuff: %s", $somestring);
+
+ if you wish to trace (goes to STDERR):
+
+ $log->trace(1);
+
+=cut
+
+#=============================================================
+has 'logger' => (
+ is => 'rw',
+ isa => 'ManaTools::Shared::Logging',
+ lazy => 1,
+ init_arg => undef,
+ required => 0,
+ default => sub {
+ my $self = shift;
+ # make sure to trigger loc & name first
+ return ManaTools::Shared::Logging->new(loc => $self->loc(), ident => $self->name());
+ },
+ handles => ['D','I','W','E'],
+);
+
+
+#=============================================================
+
=head2 commandline
commandline attribute defines the given command line, if