diff --git a/phplib/logger.php b/phplib/logger.php index 015ee79..b7adf83 100644 --- a/phplib/logger.php +++ b/phplib/logger.php @@ -1,91 +1,101 @@ setFormatter($formatter); $logger->pushHandler($syslog); $logger->pushProcessor(new WebProcessor(null, ['ip'])); global $browserLogger; $browserLogger = new Logger('CDRTool'); $console= new BrowserConsoleHandler(); $browserLogger->pushHandler($console); +function changeLoggerChannel($name) +{ + global $logger; + $logger = $logger->withName($name); + $handler = $logger->popHandler(); + $formatter = new LineFormatter("%channel%: %message% %extra%", null, false, true); + $handler->setFormatter($formatter); + $logger->pushHandler($handler); +} + function logger($message, $level = 'notice') { if ($level == 'notice') { notice($message); } elseif ($level == 'error') { error($message); } elseif ($level == 'critical') { critical($message); } } function loggerAndPrint($message, $level = 'notice') { if ($level == 'notice') { noticeAndPrint($message); } } function notice($message) { global $logger; $logger->notice($message); } function warning($message) { global $logger; $logger->warning($message); } function error($message) { global $logger; $logger->error($message); } function critical($message) { global $logger; $logger->critical($message); } function noticeAndPrint($message) { print "$message"; notice($message); } function warningAndPrint($message) { global $logger; print "$message"; $logger->warning($message); } function errorAndPrint($message) { global $logger; print "$message"; $logger->error($message); } function criticalAndPrint($message) { print "$message"; critical($message); } diff --git a/scripts/OpenSIPS/quotaCheck.php b/scripts/OpenSIPS/quotaCheck.php index 72c8711..58a9c5c 100755 --- a/scripts/OpenSIPS/quotaCheck.php +++ b/scripts/OpenSIPS/quotaCheck.php @@ -1,80 +1,73 @@ #!/usr/bin/env php withName('quotaCheck'); -$handler = $logger->popHandler(); -$formatter = new LineFormatter("%channel%: %message% %extra%", null, false, true); -$handler->setFormatter($formatter); -$logger->pushHandler($handler); +changeLoggerChannel('quotaCheck'); $b = time(); $lockFile = sprintf("/var/lock/CDRTool_QuotaCheck.lock"); $abort_text = "Another check is in progress. Try again later.\n"; $f = fopen($lockFile, "w"); if (flock($f, LOCK_EX + LOCK_NB, $w)) { if ($w) { print $abort_text; critical($abort_text); exit(2); } } else { print $abort_text; critical($abort_text); exit(1); } foreach ($DATASOURCES as $k => $v) { if (strlen($v["UserQuotaClass"])) { unset($CDRS); $class_name = $v["class"]; $CDRS = new $class_name($k); $Quota_class = $v["UserQuotaClass"]; $log=sprintf("Checking user quotas for data source %s\n", $v['name']); logger($log); //print $log; $Quota = new $Quota_class($CDRS); $Quota->checkQuota($v['UserQuotaNotify']); $d = time() - $b; if ($d > 5) { $log = sprintf("Runtime: %d s", $d); logger($log); } } } function deleteQuotaCheckLockfile($lockFile) { if (!unlink($lockFile)) { errorAndPrint("Error: cannot delete lock file $lockFile"); } } diff --git a/scripts/OpenSIPS/quotaDeblock.php b/scripts/OpenSIPS/quotaDeblock.php index 3223b39..4194227 100755 --- a/scripts/OpenSIPS/quotaDeblock.php +++ b/scripts/OpenSIPS/quotaDeblock.php @@ -1,68 +1,71 @@ #!/usr/bin/env php $v) { if (strlen($v["UserQuotaClass"])) { unset($CDRS); $class_name = $v["class"]; $CDRS = new $class_name($k); $Quota_class = $v["UserQuotaClass"]; $log = sprintf("Checking user quotas for data source %s\n", $v['name']); syslog(LOG_NOTICE, $log); //print $log; $Quota = new $Quota_class($CDRS); $Quota->deblockAccounts(); $d = time()-$b; $log = sprintf("Runtime: %d s", $d); syslog(LOG_NOTICE, $log); } } function deleteQuotaDeblock($lockFile) { if (!unlink($lockFile)) { print "Error: cannot delete lock file $lockFile. Aborting.\n"; syslog(LOG_NOTICE, "Error: cannot delete lock file $lockFile"); } }