I need a GL::Logger wich implements Class::Singleton to be a singleton and Log::Log4perl to can log amy message into a file. Here is the module source: ------------------------------------------------------------------------- package GL::Logger;
use Class::Singleton; use vars qw( $ERROR ); @ISA = qw(Class::Singleton); use Log::Log4perl; my $ERROR = ''; my $logger;
sub instance(){
my $class = shift;
my $self = bless { }, $class;
Log::Log4perl::init('c:/log4perl/log4perl.conf');
unless (defined ($self->{ $logger } = Log::Log4perl->get_logger('...'))) {
$ERROR = "Cannot get configuration file (log4perl.conf)\n";
return undef;
}
$self;
}sub log(){
my($level, $msg) = @_;
if($level eq 'DEBUG'){
$logger->debug($msg);
}
if($level eq 'INFO'){
$logger->info($msg);
}
if($level eq 'WARN'){
$logger->warn($msg);
}
if($level eq 'ERROR'){
$logger->error($msg);
}
if($level eq 'FATAL'){
$logger->fatal($msg);
}
return 0;
}
1;
-------------------------------------------------------------------------And this is the way how I want to use it:
-------------------------------------------------------------------------
#!perl -w
use GL::Logger;
my $logger = GL::Logger->instance();
$logger->log("ERROR", "blablabla");
-------------------------------------------------------------------------It retunr the following error message:
Use of uninitialized value in hash element at c:/Perl/site/lib/GL/Logger.pm line 14.
What is wrong ? -------------------------------------------- Laszlo Graf
-- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] <http://learn.perl.org/> <http://learn.perl.org/first-response>
