lemonldap-ng/lemonldap-ng-handler/lib/Lemonldap/NG/Handler/Main/Logger.pm
David COUTADEUR b3d05721a8 - Merging branch lemonldap-ng-experimental/Handler-Mouse with with trunk
code impacted:
* lemonldap-ng-handler/*: handler code,
* lemonldap-ng-handler/example/*.pm: handler aliases to libraries,
* _example/etc/*.conf: virtual host templates
(references #630, #LEMONLDAP-386)

(second part of incomplete r3251 commit)
2014-03-13 15:07:36 +00:00

33 lines
900 B
Perl
Executable File

package Lemonldap::NG::Handler::Main::Logger;
use Lemonldap::NG::Handler::Main qw( :apache );
## @rmethod void lmLog(string mess, string level)
# Wrapper for Apache log system
# @param $mess message to log
# @param $level string (debug, info, warning or error)
sub lmLog {
my ( $class, $mess, $level ) = splice @_;
die("Level is required") unless ($level);
my $call;
my @tmp = caller();
my $module = $tmp[0] =~ s/.+:://gr . "($tmp[2]): ";
unless ( $level eq 'debug' ) {
$call = "$tmp[1] $tmp[2]:";
}
if ( MP() == 2 ) {
Apache2::ServerRec->log->debug($call) if ($call);
Apache2::ServerRec->log->$level( $module . $mess );
}
elsif ( MP() == 1 ) {
Apache->server->log->debug($call) if ($call);
Apache->server->log->$level( $module . $mess );
}
else {
print STDERR "[$level] $module $mess\n";
}
}
1;