if(function_exists('sys_getloadavg')) {
$load = sys_getloadavg();
if(intval($load[0]) > $maxsysload) {
- logger('system: load ' . $load . ' too high. Poller deferred to next scheduled run.');
+ logger('system: load ' . $load[0] . ' too high. Cronhooks deferred to next scheduled run.');
return;
}
}
if(function_exists('sys_getloadavg')) {
$load = sys_getloadavg();
if(intval($load[0]) > $maxsysload) {
- logger('system: load ' . $load . ' too high. Delivery deferred to next queue run.');
+ logger('system: load ' . $load[0] . ' too high. Delivery deferred to next queue run.');
return;
}
}
if(function_exists('sys_getloadavg')) {
$load = sys_getloadavg();
if(intval($load[0]) > $maxsysload) {
- logger('system: load ' . $load . ' too high. Poller deferred to next scheduled run.');
+ logger('system: load ' . $load[0] . ' too high. Poller deferred to next scheduled run.');
return;
}
}
load_config('config');
load_config('system');
+ $maxsysload = intval(get_config('system','maxloadavg'));
+ if($maxsysload < 1)
+ $maxsysload = 50;
+ if(function_exists('sys_getloadavg')) {
+ $load = sys_getloadavg();
+ if(intval($load[0]) > $maxsysload) {
+ logger('system: load ' . $load[0] . ' too high. Service Temporarily Unavailable.');
+ header($_SERVER["SERVER_PROTOCOL"].' 503 Service Temporarily Unavailable');
+ header('Retry-After: 300');
+ die("System is currently unavailable. Please try again later");
+ }
+ }
+
+
if (get_config('system','force_ssl') AND ($a->get_scheme() == "http") AND
(intval(get_config('system','ssl_policy')) == SSL_POLICY_FULL) AND
(substr($a->get_baseurl(), 0, 8) == "https://")) {