2008-07-02 Esteban Sanchez <estebans@artica.es>

* godmode/reporting/reporting_builder.php: Removed extra "#" in
        javascript.

        * godmode/reporting/map_builder.php: Changes to try working in
        Internet Explorer (not completed yet, it's really hard).

        * include/functions_db.php: Changed sever_status() It won't longer 
        return all the modules in pandora, since it's not need in this 
        function, also replaced a strange SQL which was using MAX() with a more
        logical DISTINCT(). Style correction.

        * include/styles/pandora.css: Removed #main width, so it's as wider as
        the parent. Fixed menu_tab_fram and menu_tab_frame_view divs to the
        new template, aligned to the right. Tab and blankspaces correction.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@930 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
This commit is contained in:
esanchezm 2008-07-03 11:47:53 +00:00
parent 7a08e65047
commit 48be85fac4
7 changed files with 399 additions and 441 deletions

View File

@ -1,4 +1,19 @@
2008-07-02 Esteban Sanchez <estebans@artica.es>
* godmode/reporting/reporting_builder.php: Removed extra "#" in
javascript.
* godmode/reporting/map_builder.php: Changes to try working in
Internet Explorer (not completed yet, it's really hard).
* include/functions_db.php: Changed sever_status() It won't longer
return all the modules in pandora, since it's not need in this
function, also replaced a strange SQL which was using MAX() with a more
logical DISTINCT(). Style correction.
* include/styles/pandora.css: Removed #main width, so it's as wider as
the parent. Fixed menu_tab_fram and menu_tab_frame_view divs to the
new template, aligned to the right. Tab and blankspaces correction.
2008-07-01 Sancho Lerena <slerena@gmail.com>

View File

@ -444,7 +444,7 @@ function agent_changed (event, id_agent, selected) {
id_agent = this.value;
$('#form_layout_data_editor #module').attr ('disabled', 1);
$('#form_layout_data_editor #module').empty ();
$('#form_layout_data_editor #module').append ($('<option></option>').attr ('value', 0).text ("<?=lang_string ('Loading')?>..."));
$('#form_layout_data_editor #module').append (new Option ("<?=lang_string ('Loading')?>...", 0));
jQuery.post ('ajax.php',
{page: "operation/agentes/ver_agente",
get_agent_modules_json: 1,
@ -452,14 +452,14 @@ function agent_changed (event, id_agent, selected) {
},
function (data) {
$('#form_layout_data_editor #module').empty ();
$('#form_layout_data_editor #module').append ($('<option></option>').attr ('value', 0).text ("--"));
$('#form_layout_data_editor #module').append (new Option ("--", 0));
jQuery.each (data, function (i, val) {
if (val['descripcion'] == "") {
s = html_entity_decode (val['nombre']);
} else {
s = html_entity_decode (val['descripcion']);
}
$('#form_layout_data_editor #module').append ($('<option></option>').attr ('value', val['id_agente_modulo']).text (s));
$('#form_layout_data_editor #module').append (new Option (s, val['id_agente_modulo']));
$('#form_layout_data_editor #module').fadeIn ('normal');
});
if (selected != undefined)

View File

@ -525,8 +525,8 @@ if ($edit_sla_report_content) {
<script language="javascript" type="text/javascript">
function refresh_table () {
$('##table-add-item > tbody > tr:odd td').removeClass('datos2').addClass('datos');
$('##table-add-item > tbody > tr:even td').removeClass('datos').addClass('datos2');
$('#table-add-item > tbody > tr:odd td').removeClass('datos2').addClass('datos');
$('#table-add-item > tbody > tr:even td').removeClass('datos').addClass('datos2');
}
function agent_changed () {

View File

@ -1886,9 +1886,8 @@ function smal_event_table ($filter = "", $limit = 10, $width = 440) {
*
* @return : Serverifo array with following keys:
type - Type of server (descriptive)
modules_total - Total of modules for this kind of servers
modules - Modules running on this server
module_lag - of modules of time
module_lag - Number of modules of time
lag - Lag time in sec
*/
function server_status ($id_server) {
@ -1910,21 +1909,43 @@ function server_status ($id_server) {
elseif ($server["prediction_server"] == 1)
$serverinfo["type"] = "prediction";
// Get type of modules that runs this server
$moduletype = get_db_sql ("SELECT MAX(id_modulo) FROM tagente_estado, tagente_modulo WHERE tagente_modulo.id_agente_modulo = tagente_estado.id_agente_modulo AND tagente_modulo.disabled = 0 AND tagente_estado.running_by = $id_server ORDER BY tagente_modulo.id_agente_modulo ");
$sql = sprintf ("SELECT DISTINCT(id_modulo)
FROM tagente_estado, tagente_modulo
WHERE tagente_modulo.id_agente_modulo = tagente_estado.id_agente_modulo
AND tagente_modulo.disabled = 0
AND tagente_estado.running_by = %d
ORDER BY tagente_modulo.id_agente_modulo",
$id_server);
$moduletype = get_db_all_rows_sql ($sql);
if ($moduletype) {
$serverinfo["modules"] = get_db_sql ("SELECT COUNT(*)
FROM tagente_estado, tagente_modulo
WHERE tagente_modulo.id_agente_modulo = tagente_estado.id_agente_modulo
AND tagente_modulo.disabled = 0
AND tagente_estado.running_by = $id_server");
if ($moduletype != ""){
$serverinfo["module_lag"] = get_db_sql ("SELECT COUNT(*)
FROM tagente_estado, tagente_modulo, tagente
WHERE tagente_estado.last_execution_try > 0
AND tagente_estado.running_by = $id_server
AND tagente_modulo.id_agente = tagente.id_agente
AND tagente.disabled = 0
AND tagente_modulo.disabled = 0
AND tagente_estado.id_agente_modulo = tagente_modulo.id_agente_modulo
AND (UNIX_TIMESTAMP() - tagente_estado.last_execution_try - tagente_estado.current_interval < 1200)");
$serverinfo["modules_total"] = get_db_sql ("SELECT COUNT(id_agente_modulo) FROM tagente_modulo WHERE tagente_modulo.disabled = 0 AND tagente_modulo.id_modulo = $moduletype");
$serverinfo["modules"] = get_db_sql ("SELECT COUNT(tagente_estado.running_by) FROM tagente_estado, tagente_modulo WHERE tagente_modulo.id_agente_modulo = tagente_estado.id_agente_modulo AND tagente_modulo.disabled = 0 AND tagente_modulo.id_modulo = $moduletype AND tagente_estado.running_by = $id_server");
$serverinfo["module_lag"] = get_db_sql ("SELECT COUNT(tagente_estado.last_execution_try) FROM tagente_estado, tagente_modulo, tagente WHERE tagente_estado.last_execution_try > 0 AND tagente_estado.running_by=$id_server AND tagente_modulo.id_agente = tagente.id_agente AND tagente.disabled = 0 AND tagente_modulo.id_modulo = $moduletype AND tagente_modulo.disabled = 0 AND tagente_estado.id_agente_modulo = tagente_modulo.id_agente_modulo AND (UNIX_TIMESTAMP() - tagente_estado.last_execution_try - tagente_estado.current_interval < 1200) ");
// Lag over 1200 secons is not lag, is module without contacting data in several time.or with a
// Lag over 1200 seconds is not lag, is module without contacting data in several time.or with a
// 1200 sec is 20 min
$serverinfo["lag"] = get_db_sql ("SELECT MAX(tagente_estado.last_execution_try - tagente_estado.current_interval) FROM tagente_estado, tagente_modulo, tagente WHERE tagente_estado.last_execution_try > 0 AND tagente_estado.running_by=$id_server AND tagente_modulo.id_agente = tagente.id_agente AND tagente.disabled = 0 AND tagente_modulo.id_modulo = $moduletype AND tagente_modulo.disabled = 0 AND tagente_estado.id_agente_modulo = tagente_modulo.id_agente_modulo AND (UNIX_TIMESTAMP() - tagente_estado.last_execution_try - tagente_estado.current_interval < 1200) ");
$serverinfo["lag"] = get_db_sql ("SELECT MAX(tagente_estado.last_execution_try - tagente_estado.current_interval)
FROM tagente_estado, tagente_modulo, tagente
WHERE tagente_estado.last_execution_try > 0
AND tagente_estado.running_by = $id_server
AND tagente_modulo.id_agente = tagente.id_agente
AND tagente.disabled = 0
AND tagente_modulo.disabled = 0
AND tagente_estado.id_agente_modulo = tagente_modulo.id_agente_modulo
AND (UNIX_TIMESTAMP() - tagente_estado.last_execution_try - tagente_estado.current_interval < 1200)");
if ($serverinfo["lag"] == "")
$serverinfo["lag"] = 0;

View File

@ -191,7 +191,6 @@ div#page {
background: #FFF;
}
div#main {
width: 80%;
min-height: 500px;
float: both;
padding-left: 0px;
@ -443,20 +442,20 @@ div.title_line {
}
#menu_tab_frame {
background: #D84437;
width: 805px;
width: 100%;
min-height: 22px;
padding-left: 0x;
margin-left: -25px;
float:left;
float:right;
border-bottom: 1px solid #778866;
}
#menu_tab_frame_view {
background: #66AA44;
width: 805px;
width: 100%;
min-height: 22px;
padding-left: 0x;
margin-left: -25px;
float:left;
float:right;
border-bottom: 1px solid #778866;
}

View File

@ -30,8 +30,8 @@
require ("general/noaccess.php");
exit;
}
echo "<h2>".$lang_label["ag_title"]." &gt; ";
echo $lang_label["tactical_view"]."</h2>";
echo "<h2>".lang_string ("ag_title")." &gt; ";
echo lang_string ("tactical_view")."</h2>";
$data = general_stats ($id_user,-1);
$monitor_checks = $data[0];
@ -104,7 +104,7 @@
echo "<tr>";
echo "<th colspan=2>".$lang_label["monitor_checks"]."</th>";
echo "<th colspan=2>".lang_string ("monitor_checks")."</th>";
echo "<tr><td class=datos2><b>"."Monitor checks"."</b></td>";
echo "<td class=datos2 style='font: bold 2em Arial, Sans-serif; color: #000;'>".$monitor_checks."</td>";
echo "<tr><td class=datos><b>"."Monitor OK"."</b></td>";
@ -147,7 +147,7 @@
// Data checks
// ~~~~~~~~~~~~~~~
echo "<tr><th colspan=2>".$lang_label["data_checks"]."</th>";
echo "<tr><th colspan=2>".lang_string ("data_checks")."</th>";
echo "<tr><td class=datos2><b>"."Data checks"."</b></td>";
echo "<td class=datos2 style='font: bold 2em Arial, Sans-serif; color: #000000;'>".$data_checks;
echo "<tr><td class=datos><b>"."Data Unknown"."</b></td>";
@ -175,7 +175,7 @@
// Summary
// ~~~~~~~~~~~~~~~
echo "<tr><th colspan='2'>".$lang_label["summary"]."</th>";
echo "<tr><th colspan='2'>".lang_string ("summary")."</th>";
echo "<tr><td class='datos2'><b>"."Total agents"."</b></td>";
echo "<td class='datos2' style='font: bold 2em Arial, Sans-serif; color: #000;'>".$total_agents;
echo "<tr><td class='datos'><b>"."Total checks"."</b></td>";
@ -192,6 +192,9 @@
// Server information
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
$total_modules = (int) get_db_sql ("SELECT COUNT(*)
FROM tagente_modulo
WHERE tagente_modulo.disabled = 0");
$sql='SELECT * FROM tserver';
$result=mysql_query($sql);
@ -199,11 +202,11 @@
echo "<table cellpadding='4' cellspacing='4' witdh='440' class='databox'>";
echo "<tr><th colspan=5>";
echo lang_string("tactical_server_information");
echo "<tr><td class='datos3'>".$lang_label["name"]."</th>";
echo "<td class='datos3'>".$lang_label['status']."</th>";
echo "<td class='datos3'>".$lang_label['load']."</th>";
echo "<td class='datos3'>".$lang_label['modules']."</th>";
echo "<td class='datos3'>".$lang_label['lag']."</th>";
echo "<tr><td class='datos3'>".lang_string ("name")."</th>";
echo "<td class='datos3'>".lang_string ('status')."</th>";
echo "<td class='datos3'>".lang_string ('load')."</th>";
echo "<td class='datos3'>".lang_string ('modules')."</th>";
echo "<td class='datos3'>".lang_string ('lag')."</th>";
$color=1;
while ($row=mysql_fetch_array($result)){
if ($color == 1){
@ -230,8 +233,6 @@
$version = $row["version"];
$modules_server = 0;
$serverinfo = server_status ($id_server);
// Name of server
@ -248,8 +249,8 @@
// Load
echo "<td class='$tdcolor' align='middle'>";
if ($serverinfo["modules_total"] > 0)
$percentil = $serverinfo["modules"] / ( $serverinfo["modules_total"]/ 100);
if ($total_modules > 0)
$percentil = $serverinfo["modules"] / ($total_modules / 100);
else
$percentil = 0;
if ($percentil > 100)
@ -260,18 +261,16 @@
// Modules
echo "<td class='$tdcolor' align='middle'>";
echo $serverinfo["modules"] . " ".lang_string("of")." ". $serverinfo["modules_total"];
echo $serverinfo["modules"] . " ".lang_string("of")." ". $total_modules;
// Lag
echo "<td class='$tdcolor' align='middle'>";
echo human_time_description_raw ($serverinfo["lag"]) . " / ". $serverinfo["module_lag"];
}
echo '</table>';
// Event information
smal_event_table ("", 10, 440);
}
echo "</table>";

View File

@ -33,167 +33,91 @@ if ((give_acl($id_user, 0, "AR")==0) AND (give_acl($id_user,0,"AW") == 0) AND (d
require ($config["homeurl"]."/general/noaccess.php");
}
echo "<h2>".$lang_label["view_servers"]." &gt; ";
echo $lang_label["server_detail"]."</h2>";
echo "<h2>".lang_string ("view_servers")." &gt; ";
echo lang_string ("server_detail")."</h2>";
$sql='SELECT * FROM tserver';
$result=mysql_query($sql);
if (mysql_num_rows($result)){
echo "<table cellpadding='4' cellspacing='4' witdh='720' class='databox'>";
echo "<tr><th class='datos'>".$lang_label["name"]."</th>";
echo "<th class='datos'>".$lang_label['status']."</th>";
echo "<th class='datos'>".$lang_label['load']."</th>";
echo "<th class='datos'>".$lang_label['modules']."</th>";
echo "<th class='datos'>".$lang_label['lag']."</th>";
echo "<th class='datos'>".$lang_label['description']."</th>";
echo "<th class='datos' width=80>".$lang_label['type']."</th>";
echo "<th class='datos'>".$lang_label['version']."</th>";
echo "<th class='datos'>".$lang_label['lastupdate']."</th>";
$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"];
$total_modules = (int) get_db_sql ("SELECT COUNT(*)
FROM tagente_modulo
WHERE tagente_modulo.disabled = 0");
$servers = get_db_all_rows_in_table ('tserver');
if (sizeof ($servers) == 0)
return;
$wmi_server = $row["wmi_server"];
$plugin_server = $row["plugin_server"];
$prediction_server = $row["prediction_server"];
$export_server = $row["export_server"];
$table->width = '90%';
$table->size = array ();
$table->size[6] = '60';
$table->align = array ();
$table->align[1] = 'center';
$table->align[6] = 'center';
$table->head = array ();
$table->head[0] = lang_string ("name");
$table->head[1] = lang_string ('status');
$table->head[2] = lang_string ('load');
$table->head[3] = lang_string ('modules');
$table->head[4] = lang_string ('lag');
$table->head[5] = lang_string ('description');
$table->head[6] = lang_string ('type');
$table->head[7] = lang_string ('version');
$table->head[8] = lang_string ('lastupdate');
$table->data = array ();
$master = $row["master"];
$checksum = $row["checksum"];
$description = $row["description"];
$version = $row["version"];
foreach ($servers as $server) {
$data = array ();
$serverinfo = server_status ($server['id_server']);
$serverinfo = server_status ($id_server);
// Name of server
echo "<tr><td class='$tdcolor'>";
echo $name;
// Status
echo "<td class='$tdcolor' align='middle'>";
if ($status ==0){
echo "<img src='images/pixel_red.png' width=20 height=20>";
$data[0] = $server['name'];
if ($server['status'] == 0){
$data[1] = '<img src="images/pixel_red.png" width="20" height="20">';
} else {
echo "<img src='images/pixel_green.png' width=20 height=20>";
$data[1] = '<img src="images/pixel_green.png" width="20" height="20">';
}
// Load
echo "<td class='$tdcolor' align='middle'>";
if ($serverinfo["modules_total"] > 0)
$percentil = $serverinfo["modules"] / ( $serverinfo["modules_total"]/ 100);
if ($total_modules > 0)
$load_percent = $serverinfo["modules"] / ($total_modules / 100);
else
$percentil = 0;
if ($percentil > 100)
$percentil = 100;
// Progress bar render
$load_percent = 0;
if ($load_percent > 100)
$load_percent = 100;
$data[2] = '<img src="reporting/fgraph.php?tipo=progress&percent='.$load_percent.'&height=18&width=80">';
$data[3] = $serverinfo["modules"] . " ".lang_string("of")." ". $total_modules;
$data[4] = human_time_description_raw ($serverinfo["lag"]) . " / ". $serverinfo["module_lag"];
$data[5] = '<span title="'.$server['description'].'">'.substr ($server['description'], 0, 25).'</span>';
$data[6] = '';
if ($server['network_server'] == 1) {
$data[6] .= ' <img src="images/network.png" title="'.lang_string ('network_server').'">';
}
if ($server['data_server'] == 1) {
$data[6] .= ' <img src="images/data.png" title="'.lang_string ('data_server').'">';
}
if ($server['snmp_server'] == 1) {
$data[6] .= ' <img src="images/snmp.png" title="'.lang_string ('snmp_server').'">';
}
if ($server['recon_server'] == 1) {
$data[6] .= ' <img src="images/recon.png" title="'.lang_string ('recon_server').'">';
}
if ($server['export_server'] == 1) {
$data[6] .= ' <img src="images/database_refresh.png" title="'.lang_string ('export_server').'">';
}
if ($server['wmi_server'] == 1) {
$data[6] .= ' <img src="images/wmi.png" title="'.lang_string ('wmi_server').'">';
}
if ($server['prediction_server'] == 1) {
$data[6] .= ' <img src="images/chart_bar.png" title="'.lang_string ('prediction_server').'">';
}
if ($server['plugin_server'] == 1) {
$data[6] .= ' <img src="images/plugin.png" title="'.lang_string ('plugin_server').'">';
}
if ($server['master'] == 1) {
$data[6] .= ' <img src="images/master.png" title="'.lang_string ('master_server').'">';
}
if ($server['checksum'] == 1){
$data[6] .= ' <img src="images/binary.png" title="'.lang_string ('checksum').'">';
}
$data[7] = $server['version'];
$data[8] = human_date_relative ($server['keepalive'])."</td>";
echo '<img src="reporting/fgraph.php?tipo=progress&percent='.$percentil.'&height=18&width=80">';
// Modules
echo "<td class='$tdcolor' align='middle'>";
echo $serverinfo["modules"] . " ".lang_string("of")." ". $serverinfo["modules_total"];
// Lag
echo "<td class='$tdcolor' align='middle'>";
echo human_time_description_raw ($serverinfo["lag"]) . " / ". $serverinfo["module_lag"];
echo "<td class='".$tdcolor."f9'>".substr($description,0,25)."</td>";
echo "<td class='$tdcolor' align='middle'>";
if ($network_server == 1){
echo '<img src="images/network.png" title="network">';
}
if ($data_server == 1){
echo '&nbsp; <img src="images/data.png" title="data server">';
}
if ($snmp_server == 1){
echo "&nbsp; <img src='images/snmp.png' title='snmp console'>";
}
if ($recon_server == 1){
echo "&nbsp; <img src='images/recon.png' title='recon'>";
}
if ($export_server == 1){
echo "&nbsp; <img src='images/database_refresh.png' title='export'>";
}
if ($wmi_server == 1){
echo "&nbsp; <img src='images/wmi.png' title='WMI'>";
}
if ($prediction_server == 1){
echo "&nbsp; <img src='images/chart_bar.png' title='prediction'>";
}
if ($plugin_server == 1){
echo "&nbsp; <img src='images/plugin.png' title='plugin'>";
}
if ($master == 1){
echo "&nbsp; <img src='images/master.png' title='master'>";
}
if ($checksum == 1){
echo "&nbsp; <img src='images/binary.png' title='checksum'>";
}
echo "</td><td class='".$tdcolor."f9' align='middle'>";
echo $version;
echo "</td><td class='".$tdcolor."f9' align='middle'>";
// if ($status ==0)
echo human_date_relative($keepalive)."</td>";
}
echo '</tr></table>';
echo "<table cellpadding=2 cellspacing=0>";
echo "
<tr>
<td>
<span class='net'>".$lang_label["network_server"]."</span>
</td>
<td>
<span class='data'>".$lang_label["data_server"]."</span>
</td>
<td>
<span class='plugin'>".lang_string ("plugin_server")."</span>
</td>
<td>
<span class='wmi'>".lang_string ("wmi_server")."</span>
</td>
<td>
<span class='prediction'>".lang_string ("prediction_server")."</span>
</td>
</tr>
<tr>
<td>
<span class='export'>".lang_string ("export_server"). "</span>
</td>
<td>
<span class='snmp'>".lang_string ("snmp_console"). "</span>
</td>
<td>
<span class='recon'>".lang_string ("recon_server"). "</span>
</td>
<td>
<span class='binary'>".lang_string ("md5_checksum"). "</span>
</td>
<td>
<span class='master'>".lang_string ("master"). "</span>
</td>
</tr>";
echo "</table>";
array_push ($table->data, $data);
}
print_table ($table);
?>