".$lang_label["view_servers"]." > "; echo $lang_label["server_detail"].""; // Get total modules defined (network) $total_modules_network = get_db_sql ("SELECT COUNT(id_agente_modulo) FROM tagente_modulo WHERE id_tipo_modulo > 4 AND id_tipo_modulo != 100"); // Get total modules defined (data) $total_modules_data = get_db_sql ("SELECT COUNT(id_agente_modulo) FROM tagente_modulo WHERE id_tipo_modulo < 5 OR id_tipo_modulo = 100"); // Connect DataBase $sql='SELECT * FROM tserver'; $result=mysql_query($sql); if (mysql_num_rows($result)){ echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; $color=1; while ($row=mysql_fetch_array($result)){ if ($color == 1){ $tdcolor = "datos"; $color = 0; } else { $tdcolor = "datos2"; $color = 1; } $id_server = $row["id_server"]; $name = $row["name"]; $address = $row["ip_address"]; $status = $row["status"]; $laststart = $row["laststart"]; $keepalive = $row["keepalive"]; $network_server = $row["network_server"]; $data_server = $row["data_server"]; $snmp_server = $row["snmp_server"]; $recon_server = $row["recon_server"]; $wmi_server = $row["wmi_server"]; $plugin_server = $row["plugin_server"]; $prediction_server = $row["prediction_server"]; $export_server = $row["export_server"]; $master = $row["master"]; $checksum = $row["checksum"]; $description = $row["description"]; $version = $row["version"]; $modules_server = 0; // Get total modules defined for this server (data modules) $modules_server = get_db_sql ("SELECT COUNT(running_by) FROM tagente_estado WHERE running_by = $id_server"); echo ""; echo ""; } echo '
".$lang_label["name"]."".$lang_label['status']."".$lang_label['load']."".$lang_label['modules']."".$lang_label['lag']."".$lang_label['description']."".$lang_label['type']."".$lang_label['version']."".$lang_label['lastupdate']."
"; // Recon server detail if ($recon_server == 1) echo "$name "; else echo "$name"; // Status (bad or good) echo ""; if ($status ==0){ echo ""; } else { echo ""; } echo ""; if (($snmp_server == 0) OR ($recon_server == 0)){ // Progress bar calculations if ($network_server == 1){ if ($total_modules_network == 0) $percentil = 0; if ($total_modules_network > 0) $percentil = $modules_server / ($total_modules_network / 100); else $percentil = 0; $total_modules_temp = $total_modules_network; } else { if ($total_modules_data == 0) $percentil = 0; else $percentil = $modules_server / ($total_modules_data / 100); $total_modules_temp = $total_modules_data; } } elseif ($recon_server == 1){ $modules_server = get_db_sql ("SELECT COUNT(id_rt) FROM trecon_task WHERE id_network_server = $id_server"); $total_modules = get_db_sql ("SELECT COUNT(id_rt) FROM trecon_task"); if ($total_modules == 0) $percentil = 0; else $percentil = $modules_server / ($total_modules / 100); $total_modules_temp = $total_modules; } else echo "-"; // Progress bar render if ($snmp_server == 0) { // Check bad values for percentile if ($percentil > 100){ $percentil = 100; } if ($percentil < 0){ $percentil = 0; } echo ''; } // Number of modules echo ""; if (($recon_server ==1) OR ($network_server == 1) OR ($data_server == 1)){ echo $modules_server . ' / '. $total_modules_temp; } else { echo "-"; } // LAG CHECK echo ""; // Calculate lag: get oldest module of any proc_type, for this server, // and calculate difference in seconds // Get total modules defined for this server if (($network_server == 1) OR ($data_server == 1) OR ($wmi_server == 1) OR ($plugin_server == 1)) { if (($network_server == 1) OR ($wmi_server == 1) OR ($plugin_server == 1)) { $sql1 = "SELECT MIN(last_execution_try),current_interval FROM tagente_estado WHERE last_execution_try > 0 AND running_by=$id_server GROUP BY current_interval ORDER BY 1"; } elseif ($data_server == 1){ // This only checks for agent with a last_execution_try of at // maximun: ten times it's interval.... if is bigger, it probably // will be because an agent down $sql1 = "SELECT MAX(last_execution_try), current_interval, id_agente FROM tagente_estado WHERE last_execution_try > 0 AND (tagente_estado.last_execution_try + (tagente_estado.current_interval * 10) > UNIX_TIMESTAMP()) AND running_by=$id_server GROUP BY id_agente ORDER BY 1 ASC LIMIT 1"; } $nowtime = time(); $maxlag=0; if ($result1=mysql_query($sql1)) while ($row1=mysql_fetch_array($result1)){ if (($row1[0] + $row1[1]) < $nowtime){ $maxlag2 = $nowtime - ($row1[0] + $row1[1]); // More than 5 times module interval is not lag, is a big // problem in agent, network or servers.. if ($maxlag2 < ($row1[1]*5)) if ($maxlag2 > $maxlag) $maxlag = $maxlag2; } } if ($maxlag < 60) echo $maxlag." sec"; elseif ($maxlag < 86400) echo format_numeric($maxlag/60) . " min"; elseif ($maxlag > 86400) echo "+1 ".$lang_label["day"]; } elseif ($recon_server == 1) { $sql1 = "SELECT * FROM trecon_task WHERE id_network_server = $id_server"; $result1=mysql_query($sql1); $nowtime = time(); $maxlag=0;$maxlag2=0; while ($row1=mysql_fetch_array($result1)){ if (($row1["utimestamp"] + $row1["interval_sweep"]) < $nowtime){ $maxlag2 = $nowtime - ($row1["utimestamp"] + $row1["interval_sweep"]); if ($maxlag2 > $maxlag) $maxlag = $maxlag2; } } if ($maxlag < 60) echo $maxlag." sec"; elseif ($maxlag < 86400) echo format_numeric($maxlag/60) . " min"; elseif ($maxlag > 86400) echo "+1 ".$lang_label["day"]; } else { echo "--"; } echo "".substr($description,0,25).""; if ($network_server == 1){ echo ''; } if ($data_server == 1){ echo '  '; } if ($snmp_server == 1){ echo "  "; } if ($recon_server == 1){ echo "  "; } if ($export_server == 1){ echo "  "; } if ($wmi_server == 1){ echo "  "; } if ($prediction_server == 1){ echo "  "; } if ($plugin_server == 1){ echo "  "; } if ($master == 1){ echo "  "; } if ($checksum == 1){ echo "  "; } echo ""; echo $version; echo ""; // if ($status ==0) echo substr($keepalive,0,25)."
'; echo ""; echo " "; echo "
".$lang_label["network_server"]." ".$lang_label["data_server"]." ".lang_string ("plugin_server")." ".lang_string ("wmi_server")." ".lang_string ("prediction_server")."
".lang_string ("export_server"). " ".lang_string ("snmp_console"). " ".lang_string ("recon_server"). " ".lang_string ("md5_checksum"). " ".lang_string ("master"). "
"; } ?>