log4perl.logger.Siebel.Srvrmgr.Daemon=DEBUG, A1
log4perl.appender.A1=Log::Log4perl::Appender::File
log4perl.appender.A1.filename=C:/Temp/perl/project.log
log4perl.appender.A1.stderr=0
log4perl.appender.A1.layout=Log::Log4perl::Layout::PatternLayout
log4perl.appender.A1.layout.ConversionPattern=%d %p> %F{1}:%L %M - %m%n
log4perl.appender.A2= Log::Log4perl::Appender::Screen
log4perl.appender.A2.stderr=0
log4perl.appender.A2.layout=Log::Log4perl::Layout::PatternLayout
log4perl.appender.A2.layout.ConversionPattern=%d %p> %F{1}:%L %M - %m%n
log4perl.logger.Siebel.Srvrmgr.ListParser=WARN, A2
####
sub gimme_logger {
my $cfg = Siebel::Srvrmgr->logging_cfg();
die "Could not start logging facilities"
unless ( Log::Log4perl->init_once( \$cfg ) );
return Log::Log4perl->get_logger('Siebel::Srvrmgr::Daemon');
}
####
sub run {
my $self = shift;
my $logger = __PACKAGE__->gimme_logger();
weaken($logger);
# rest of code goes here
####
sub DEMOLISH {
my $self = shift;
my $logger = __PACKAGE__->gimme_logger();
weaken($logger);
# rest of code goes here
####
sub logging_cfg {
my $cfg = undef;
local $/;
if ( $ENV{SIEBEL_SRVRMGR_DEBUG} ) {
if ( ( -e $ENV{SIEBEL_SRVRMGR_DEBUG} )
and ( -f $ENV{SIEBEL_SRVRMGR_DEBUG} ) )
{
open( my $in, '<', $ENV{SIEBEL_SRVRMGR_DEBUG} )
or die "Cannot read $ENV{SIEBEL_SRVRMGR_DEBUG}: $!";
$cfg = <$in>;
close($in);
}
else {
die
'ENV SIEBEL_SRVRMGR_DEBUG is defined but the value does not exists in the filesystem or is not a file';
}
}
else {
$cfg = ;
}
return $cfg;
}
####
C:\Temp\memcached>server2.pl
Starting Nagios::Cache::Server...done
Starting RPC::XML::Server...done
Ready to accept requests
close() on unopened filehandle FH at C:/strawberry/perl/site/lib/Log/Log4perl/Appender/File.pm line 257 during global destruction.
Can't close C:/Temp/perl/project.log (Bad file descriptor) at C:/strawberry/perl/site/lib/Log/Log4perl/Appender/File.pm line 282 during global destruction.