CC-2989: airtime-check-system should deal with the case when the web server is not accessible

-fixed some more inaccessible issues
This commit is contained in:
Martin Konecny 2011-10-27 17:13:36 -04:00
parent aace5d0776
commit 153e0df409
2 changed files with 74 additions and 30 deletions

View file

@ -141,23 +141,31 @@ class Application_Model_Systemstatus
public static function GetShowRecorderStatus(){ public static function GetShowRecorderStatus(){
$component = CcServiceRegisterQuery::create()->findOneByDbName("show-recorder"); $component = CcServiceRegisterQuery::create()->findOneByDbName("show-recorder");
$ip = $component->getDbIp(); if (is_null($component)){
return null;
} else {
$ip = $component->getDbIp();
$docRoot = self::GetMonitStatus($ip); $docRoot = self::GetMonitStatus($ip);
$data = self::ExtractServiceInformation($docRoot, "airtime-show-recorder"); $data = self::ExtractServiceInformation($docRoot, "airtime-show-recorder");
return $data; return $data;
}
} }
public static function GetMediaMonitorStatus(){ public static function GetMediaMonitorStatus(){
$component = CcServiceRegisterQuery::create()->findOneByDbName("media-monitor"); $component = CcServiceRegisterQuery::create()->findOneByDbName("media-monitor");
$ip = $component->getDbIp(); if (is_null($component)){
return null;
} else {
$ip = $component->getDbIp();
$docRoot = self::GetMonitStatus($ip); $docRoot = self::GetMonitStatus($ip);
$data = self::ExtractServiceInformation($docRoot, "airtime-media-monitor"); $data = self::ExtractServiceInformation($docRoot, "airtime-media-monitor");
return $data; return $data;
}
} }
public static function GetIcecastStatus(){ public static function GetIcecastStatus(){

View file

@ -72,6 +72,7 @@ class AirtimeCheck {
self::output_status("AIRTIME_SERVER_RESPONDING", "FAILED"); self::output_status("AIRTIME_SERVER_RESPONDING", "FAILED");
} else { } else {
self::output_status("AIRTIME_SERVER_RESPONDING", "OK"); self::output_status("AIRTIME_SERVER_RESPONDING", "OK");
$p_status = json_decode($p_status); $p_status = json_decode($p_status);
$data = $p_status->status; $data = $p_status->status;
@ -81,26 +82,61 @@ class AirtimeCheck {
self::output_status("TOTAL_MEMORY_MBYTES", $data->platform->memory); self::output_status("TOTAL_MEMORY_MBYTES", $data->platform->memory);
self::output_status("TOTAL_SWAP_MBYTES", $data->platform->swap); self::output_status("TOTAL_SWAP_MBYTES", $data->platform->swap);
self::output_status("AIRTIME_VERSION", $data->airtime_version); self::output_status("AIRTIME_VERSION", $data->airtime_version);
self::output_status("PLAYOUT_ENGINE_PROCESS_ID", $data->services->pypo->process_id); if ($data->services->pypo){
self::output_status("PLAYOUT_ENGINE_RUNNING_SECONDS", $data->services->pypo->uptime_seconds); self::output_status("PLAYOUT_ENGINE_PROCESS_ID", $data->services->pypo->process_id);
self::output_status("PLAYOUT_ENGINE_MEM_PERC", $data->services->pypo->memory_perc); self::output_status("PLAYOUT_ENGINE_RUNNING_SECONDS", $data->services->pypo->uptime_seconds);
self::output_status("PLAYOUT_ENGINE_CPU_PERC", $data->services->pypo->cpu_perc); self::output_status("PLAYOUT_ENGINE_MEM_PERC", $data->services->pypo->memory_perc);
self::output_status("LIQUIDSOAP_PROCESS_ID", $data->services->liquidsoap->process_id); self::output_status("PLAYOUT_ENGINE_CPU_PERC", $data->services->pypo->cpu_perc);
self::output_status("LIQUIDSOAP_RUNNING_SECONDS", $data->services->liquidsoap->uptime_seconds); } else {
self::output_status("LIQUIDSOAP_MEM_PERC", $data->services->liquidsoap->memory_perc); self::output_status("PLAYOUT_ENGINE_PROCESS_ID", "FAILED");
self::output_status("LIQUIDSOAP_CPU_PERC", $data->services->liquidsoap->cpu_perc); self::output_status("PLAYOUT_ENGINE_RUNNING_SECONDS", "0");
self::output_status("MEDIA_MONITOR_PROCESS_ID", $data->services->media_monitor->process_id); self::output_status("PLAYOUT_ENGINE_MEM_PERC", "0%");
self::output_status("MEDIA_MONITOR_RUNNING_SECONDS", $data->services->media_monitor->uptime_seconds); self::output_status("PLAYOUT_ENGINE_CPU_PERC", "0%");
self::output_status("MEDIA_MONITOR_MEM_PERC", $data->services->media_monitor->memory_perc); }
self::output_status("MEDIA_MONITOR_CPU_PERC", $data->services->media_monitor->cpu_perc); if (isset($data->services->liquidsoap)){
self::output_status("SHOW_RECORDER_PROCESS_ID", $data->services->show_recorder->process_id); self::output_status("LIQUIDSOAP_PROCESS_ID", $data->services->liquidsoap->process_id);
self::output_status("SHOW_RECORDER_RUNNING_SECONDS", $data->services->show_recorder->uptime_seconds); self::output_status("LIQUIDSOAP_RUNNING_SECONDS", $data->services->liquidsoap->uptime_seconds);
self::output_status("SHOW_RECORDER_MEM_PERC", $data->services->show_recorder->memory_perc); self::output_status("LIQUIDSOAP_MEM_PERC", $data->services->liquidsoap->memory_perc);
self::output_status("SHOW_RECORDER_CPU_PERC", $data->services->show_recorder->cpu_perc); self::output_status("LIQUIDSOAP_CPU_PERC", $data->services->liquidsoap->cpu_perc);
self::output_status("RABBITMQ_PROCESS_ID", $data->services->rabbitmq->process_id); } else {
self::output_status("RABBITMQ_RUNNING_SECONDS", $data->services->rabbitmq->uptime_seconds); self::output_status("LIQUIDSOAP_PROCESS_ID", "FAILED");
self::output_status("RABBITMQ_MEM_PERC", $data->services->rabbitmq->memory_perc); self::output_status("LIQUIDSOAP_RUNNING_SECONDS", "0");
self::output_status("RABBITMQ_CPU_PERC", $data->services->rabbitmq->cpu_perc); self::output_status("LIQUIDSOAP_MEM_PERC", "0%");
self::output_status("LIQUIDSOAP_CPU_PERC", "0%");
}
if (isset($data->services->media_monitor)){
self::output_status("MEDIA_MONITOR_PROCESS_ID", $data->services->media_monitor->process_id);
self::output_status("MEDIA_MONITOR_RUNNING_SECONDS", $data->services->media_monitor->uptime_seconds);
self::output_status("MEDIA_MONITOR_MEM_PERC", $data->services->media_monitor->memory_perc);
self::output_status("MEDIA_MONITOR_CPU_PERC", $data->services->media_monitor->cpu_perc);
} else {
self::output_status("MEDIA_MONITOR_PROCESS_ID", "FAILED");
self::output_status("MEDIA_MONITOR_RUNNING_SECONDS", "0");
self::output_status("MEDIA_MONITOR_MEM_PERC", "0%");
self::output_status("MEDIA_MONITOR_CPU_PERC", "0%");
}
if (isset($data->services->show_recorder)){
self::output_status("SHOW_RECORDER_PROCESS_ID", $data->services->show_recorder->process_id);
self::output_status("SHOW_RECORDER_RUNNING_SECONDS", $data->services->show_recorder->uptime_seconds);
self::output_status("SHOW_RECORDER_MEM_PERC", $data->services->show_recorder->memory_perc);
self::output_status("SHOW_RECORDER_CPU_PERC", $data->services->show_recorder->cpu_perc);
} else {
self::output_status("SHOW_RECORDER_PROCESS_ID", "FAILED");
self::output_status("SHOW_RECORDER_RUNNING_SECONDS", "0");
self::output_status("SHOW_RECORDER_MEM_PERC", "0%");
self::output_status("SHOW_RECORDER_CPU_PERC", "0%");
}
if (isset($data->services->rabbitmq)){
self::output_status("RABBITMQ_PROCESS_ID", $data->services->rabbitmq->process_id);
self::output_status("RABBITMQ_RUNNING_SECONDS", $data->services->rabbitmq->uptime_seconds);
self::output_status("RABBITMQ_MEM_PERC", $data->services->rabbitmq->memory_perc);
self::output_status("RABBITMQ_CPU_PERC", $data->services->rabbitmq->cpu_perc);
} else {
self::output_status("RABBITMQ_PROCESS_ID", "FAILED");
self::output_status("RABBITMQ_RUNNING_SECONDS", "0");
self::output_status("RABBITMQ_MEM_PERC", "0%");
self::output_status("RABBITMQ_CPU_PERC", "0%");
}
} }
if (self::$AIRTIME_STATUS_OK){ if (self::$AIRTIME_STATUS_OK){