CC-3044: Error in system status seen in apache log

- Added check for length > 0 before trying to get property
- Got rid of repeating code
This commit is contained in:
Yuchen Wang 2011-11-15 12:37:54 -05:00
parent 709582b47d
commit f6f58c9399
1 changed files with 11 additions and 10 deletions

View File

@ -96,24 +96,25 @@ class Application_Model_Systemstatus
}
public static function GetPlatformInfo(){
$data = array("release"=>"UNKNOWN",
"machine"=>"UNKNOWN",
"memory"=>"UNKNOWN",
"swap"=>"UNKNOWN");
$keys = array("release", "machine", "memory", "swap");
foreach($keys as $key) {
$data[$key] = "UNKNOWN";
}
$docRoot = self::GetMonitStatus("localhost");
if (!is_null($docRoot)){
foreach ($docRoot->getElementsByTagName("platform") AS $item)
{
$data["release"] = $item->getElementsByTagName("release")->item(0)->nodeValue;
$data["machine"] = $item->getElementsByTagName("machine")->item(0)->nodeValue;
$data["memory"] = $item->getElementsByTagName("memory")->item(0)->nodeValue;
$data["swap"] = $item->getElementsByTagName("swap")->item(0)->nodeValue;
foreach($keys as $key) {
$keyElement = $item->getElementsByTagName($key);
if($keyElement->length > 0) {
$data[$key] = $keyElement->item(0)->nodeValue;
}
}
}
}
return $data;
}
public static function GetPypoStatus(){