ftimme
2012-05-30 2cb1563f63386b35a69e460051aa9b4a2851d104
interface/web/monitor/show_sys_state.php
@@ -69,7 +69,7 @@
$app->tpl->setVar("state_data",$output);
$app->tpl->setVar("state_type",$stateType);
$app->tpl->setVar("list_head_txt",$title);
$app->tpl->setVar("list_desc_txt",$description);
$app->tpl->setVar("list_desc_txt",(isset($description) ? $description : ''));
$app->tpl->setVar("monTransRefreshsq", $monTransRefreshsq);
/*
@@ -138,7 +138,7 @@
         }
      }
   }
   /*
    * Now we have to output all "normal" server or all OpenVZ-Hosts (or all OpenVZ-VE's without
    * a OpenVZ-Host managed by ISPConfig). The OpenVz-VE's are then included in them...
@@ -149,7 +149,7 @@
      if (!isset($data['is_ve'])) {
         /*
          * it is NOT a Ve, so do the output of this server and off all VE's included in them
          */
         */
         $html .= $data['html_server'];
         /* get all VE's of this server */
         $veInfo = $data['ve_info'];
@@ -196,7 +196,10 @@
   $ispcData = null;
   foreach($records as $record) {
      /* get the state from the db-data */
      _processDbState($record['type'], $serverId, &$serverState, &$messages);
      $tmp = _processDbState($record['type'], $serverId, $serverState, $messages);
      $serverState = $tmp['serverState'];
      $messages = $tmp['messages'];
      /* if we have the os-info, get it */
      if ($record['type'] == 'os_info') {
         $osData = unserialize($record['data']);
@@ -234,37 +237,41 @@
   /*
    * Info of a "normal" Server or a OpenVz-Host
   */
   $html_server .= '<div class="systemmonitor-state state-' . $serverState . '">';
   $html_server = '<div class="systemmonitor-state state-' . $serverState . '">';
   $html_server .= '<div class="systemmonitor-device device-server">';
   $html_server .= '<div class="systemmonitor-content icons32 ico-' . $serverState . '">';
   $html_server .= $app->lng("monitor_serverstate_server_txt") . ': ' . $serverName;
   if ($osData != null) {
      $html_server .= ' (' . $osData['name'] . ' ' . $osData['version'] . ')';
      $html_server .= ' (' . $osData['name'] . ' ' . $osData['version'] . ')<br>';
   }
   else {
      $html_server .= '<br />';
   }
   if ($ispcData != null) {
      $html_server .= $ispcData['name'] . ' ' . $ispcData['version'] . '<br>';
   }
   else {
      $html_server .= '<br />';
   }
   $html_server .= '<br />';
   $html_server .= $app->lng("monitor_serverstate_state_txt") . ': ' . $serverState . ' (';
   $html_server .= sizeof($messages[$app->lng("monitor_serverstate_listunknown_txt")]) . ' ' . $app->lng("monitor_serverstate_unknown_txt") . ', ';
   $html_server .= sizeof($messages[$app->lng("monitor_serverstate_listinfo_txt")]) . ' ' . $app->lng("monitor_serverstate_info_txt") . ', ';
   $html_server .= sizeof($messages[$app->lng("monitor_serverstate_listwarning_txt")]) . ' ' . $app->lng("monitor_serverstate_warning_txt") . ', ';
   $html_server .= sizeof($messages[$app->lng("monitor_serverstate_listcritical_txt")]) . ' ' . $app->lng("monitor_serverstate_critical_txt") . ', ';
   $html_server .= sizeof($messages[$app->lng("monitor_serverstate_listerror_txt")]) . ' ' . $app->lng("monitor_serverstate_error_txt") . '';
   $html_server .= sizeof((isset($messages[$app->lng("monitor_serverstate_listunknown_txt")]) ? $messages[$app->lng("monitor_serverstate_listunknown_txt")] : array())) . ' ' . $app->lng("monitor_serverstate_unknown_txt") . ', ';
   $html_server .= sizeof((isset($messages[$app->lng("monitor_serverstate_listinfo_txt")]) ? $messages[$app->lng("monitor_serverstate_listinfo_txt")] : array())) . ' ' . $app->lng("monitor_serverstate_info_txt") . ', ';
   $html_server .= sizeof((isset($messages[$app->lng("monitor_serverstate_listwarning_txt")]) ? $messages[$app->lng("monitor_serverstate_listwarning_txt")] : array())) . ' ' . $app->lng("monitor_serverstate_warning_txt") . ', ';
   $html_server .= sizeof((isset($messages[$app->lng("monitor_serverstate_listcritical_txt")]) ? $messages[$app->lng("monitor_serverstate_listcritical_txt")] : array())) . ' ' . $app->lng("monitor_serverstate_critical_txt") . ', ';
   $html_server .= sizeof((isset($messages[$app->lng("monitor_serverstate_listerror_txt")]) ? $messages[$app->lng("monitor_serverstate_listerror_txt")] : array())) . ' ' . $app->lng("monitor_serverstate_error_txt") . '';
   $html_server .= ')<br />';
   /*
    * Verbose - Info 
   */
   $html_verbose = $html_server;
   foreach($messages as $key => $state) { {
         $html_verbose .= $key . ':<br />';
         foreach ($state as $msg) {
            $html_verbose .= $msg . '<br />';
         }
         $html_verbose .= '<br />';
   foreach($messages as $key => $state) {
      $html_verbose .= $key . ':<br />';
      foreach ($state as $msg) {
         $html_verbose .= $msg . '<br />';
      }
      $html_verbose .= '<br />';
   }
   /*
@@ -293,7 +300,7 @@
}
/*
 * gets the state from the db and process it
* gets the state from the db and process it
*/
function _processDbState($type, $serverId, $serverState, $messages) {
   global $app;
@@ -302,10 +309,17 @@
    * Always the NEWEST record of each monitoring is responsible for the
    * state
   */
// get the State from the DB
   // get the State from the DB
   $record = $app->db->queryOneRecord("SELECT state FROM monitor_data WHERE type = '" . $type . "' and server_id = " . $serverId . " order by created desc");
// change the new state to the highest state
   $serverState = _setState($serverState, $record['state']);
   // change the new state to the highest state
   /*
   * Monitoring the user_beancounter of a VE is not as easy as i thought, so for now ignore
   * this state (if we have a better solution)
   */
   if ($type != 'openvz_beancounter') {
      $serverState = _setState($serverState, $record['state']);
   }
   /*
     * The message depands on the type and the state
@@ -443,32 +457,35 @@
      }
   }
   if ($type == 'openvz_beancounter') {
      switch ($record['state']) {
         case 'ok':
            $messages[$app->lng("monitor_serverstate_listok_txt")][] = $app->lng("monitor_serverstate_beancounterok_txt") . ' ' .
                  "<a href='#' onclick='loadContent(\"monitor/show_data.php?type=openvz_beancounter\");'>[" . $app->lng("monitor_serverstate_more_txt") . "]</a>";
            break;
         case 'info':
            $messages[$app->lng("monitor_serverstate_listinfo_txt")][] = $app->lng("monitor_serverstate_beancounterinfo_txt") . ' ' .
                  "<a href='#' onclick='loadContent(\"monitor/show_data.php?type=openvz_beancounter\");'>[" . $app->lng("monitor_serverstate_more_txt") . "]</a>";
            break;
         case 'warning':
            $messages[$app->lng("monitor_serverstate_listinfo_txt")][] = $app->lng("monitor_serverstate_beancounterwarning_txt") . ' ' .
                  "<a href='#' onclick='loadContent(\"monitor/show_data.php?type=openvz_beancounter\");'>[" . $app->lng("monitor_serverstate_more_txt") . "]</a>";
            break;
         case 'critical':
            $messages[$app->lng("monitor_serverstate_listcritical_txt")][] = $app->lng("monitor_serverstate_beancountercritical_txt") . ' ' .
                  "<a href='#' onclick='loadContent(\"monitor/show_data.php?type=openvz_beancounter\");'>[" . $app->lng("monitor_serverstate_more_txt") . "]</a>";
            break;
         case 'error':
            $messages[$app->lng("monitor_serverstate_listerror_txt")][] = $app->lng("monitor_serverstate_beancountererror_txt") . ' ' .
                  "<a href='#' onclick='loadContent(\"monitor/show_data.php?type=openvz_beancounter\");'>[" . $app->lng("monitor_serverstate_more_txt") . "]</a>";
            break;
         default:
            break;
      }
   }
   /*
    * ignore, until we find a better solution
    */
//   if ($type == 'openvz_beancounter') {
//      switch ($record['state']) {
//         case 'ok':
//            $messages[$app->lng("monitor_serverstate_listok_txt")][] = $app->lng("monitor_serverstate_beancounterok_txt") . ' ' .
//                  "<a href='#' onclick='loadContent(\"monitor/show_data.php?type=openvz_beancounter\");'>[" . $app->lng("monitor_serverstate_more_txt") . "]</a>";
//            break;
//         case 'info':
//            $messages[$app->lng("monitor_serverstate_listinfo_txt")][] = $app->lng("monitor_serverstate_beancounterinfo_txt") . ' ' .
//                  "<a href='#' onclick='loadContent(\"monitor/show_data.php?type=openvz_beancounter\");'>[" . $app->lng("monitor_serverstate_more_txt") . "]</a>";
//            break;
//         case 'warning':
//            $messages[$app->lng("monitor_serverstate_listinfo_txt")][] = $app->lng("monitor_serverstate_beancounterwarning_txt") . ' ' .
//                  "<a href='#' onclick='loadContent(\"monitor/show_data.php?type=openvz_beancounter\");'>[" . $app->lng("monitor_serverstate_more_txt") . "]</a>";
//            break;
//         case 'critical':
//            $messages[$app->lng("monitor_serverstate_listcritical_txt")][] = $app->lng("monitor_serverstate_beancountercritical_txt") . ' ' .
//                  "<a href='#' onclick='loadContent(\"monitor/show_data.php?type=openvz_beancounter\");'>[" . $app->lng("monitor_serverstate_more_txt") . "]</a>";
//            break;
//         case 'error':
//            $messages[$app->lng("monitor_serverstate_listerror_txt")][] = $app->lng("monitor_serverstate_beancountererror_txt") . ' ' .
//                  "<a href='#' onclick='loadContent(\"monitor/show_data.php?type=openvz_beancounter\");'>[" . $app->lng("monitor_serverstate_more_txt") . "]</a>";
//            break;
//         default:
//            break;
//      }
//   }
   if ($type == 'mailq') {
@@ -560,6 +577,8 @@
   if ($type == 'rkhunter') {
      /* this type has no state */
   }
   return array('serverState' => $serverState,'messages' => $messages);
}
/*