".__('SLA view').""; $id_agent = get_parameter ("id_agente", "0"); $intervalo = get_agent_interval ($id_agent); // Get all module from agent $sql_t='SELECT * FROM tagente_estado, tagente_modulo WHERE tagente_modulo.disabled = 0 AND tagente_estado.id_agente_modulo = tagente_modulo.id_agente_modulo AND tagente_modulo.id_agente='.$id_agent.' AND tagente_estado.estado != 100 AND tagente_estado.utimestamp != 0 ORDER BY tagente_modulo.nombre'; $result_t=mysql_query($sql_t); if (mysql_num_rows ($result_t)) { echo "

".__('Automatic SLA for monitors')."

"; echo ""; echo ""; echo ""; $color=0; while ($module_data=mysql_fetch_array($result_t)){ # For evey module in the status table $est_modulo = substr($module_data["nombre"],0,25); $est_tipo = get_moduletype_name ($module_data["id_tipo_modulo"]); $est_description = $module_data["descripcion"]; $est_timestamp = $module_data["timestamp"]; $est_estado = $module_data["estado"]; $est_datos = $module_data["datos"]; $est_cambio = $module_data["cambio"]; $est_interval = $module_data["module_interval"]; if ($intervalo != $est_interval && $est_interval > 0) { $temp_interval = $est_interval; } else { $temp_interval = $intervalo; } if ($est_estado <>100){ # si no es un modulo de tipo datos # Determinamos si se ha caido el agente (tiempo de intervalo * 2 superado) if ($color == 1){ $tdcolor = "datos"; $color = 0; } else { $tdcolor = "datos2"; $color = 1; } $seconds = get_system_time () - $module_data["utimestamp"]; if ($seconds >= ($temp_interval*2)) // If every interval x 2 secs. we get nothing, there's and alert $agent_down = 1; else $agent_down = 0; echo ""; echo "";; } echo ""; else echo "--"; echo ""; } } echo '
X".__('Type')." ".__('Module name')." ".__('S.L.A.')." ".__('Status')." ".__('Interval')." ".__('Last contact')."
"; if (($module_data["id_modulo"] != 1) AND ($module_data["id_tipo_modulo"] < 100)) { if ($module_data["flag"] == 0){ echo ""; } else { echo ""; } } echo ""; echo ""; echo "".$est_modulo.""; $temp = get_agent_module_sla ($module_data["id_agente_modulo"], $config["sla_period"], 1); if ($temp === false) echo __('N/A'); else { echo format_numeric ($temp)." %"; if ($est_estado == 1){ if ($est_cambio == 1) echo ""; else echo ""; } else echo ""; echo ""; if ($temp_interval != $intervalo) echo $temp_interval.""; if ($agent_down == 1) { // If agent down, it's shown red and bold echo ""; } else { echo ""; } if ($module_data["timestamp"] == '0000-00-00 00:00:00') { echo __('Never'); } else { echo human_time_comparation($module_data["timestamp"]); } echo "
'; } // Get all SLA report components $sql = "SELECT tagente_modulo.id_agente_modulo, sla_max, sla_min, sla_limit, tagente_modulo.id_tipo_modulo, tagente_modulo.nombre, tagente_modulo.descripcion FROM treport_content_sla_combined, tagente_modulo WHERE tagente_modulo.id_agente = $id_agent AND tagente_modulo.id_agente_modulo = treport_content_sla_combined.id_agent_module AND tagente_modulo.id_tipo_modulo IN (1,4,7,8,11,15,16,22,24)"; $result_t = mysql_query ($sql); if (mysql_num_rows ($result_t)) { $color=0; echo "

".__('User-defined SLA items')." - "; echo human_time_description_raw($config["sla_period"]). "

"; echo ""; echo ""; echo ""; echo ""; echo ""; echo ""; while ($module_data = mysql_fetch_array($result_t)){ if ($color == 1){ $tdcolor = "datos"; $color = 0; } else { $tdcolor = "datos2"; $color = 1; } # For evey module in the status table $id_agent_module = $module_data[0]; $sla_max = $module_data[1]; $sla_min = $module_data[2]; $sla_limit = $module_data[3]; $id_tipo_modulo = $module_data[4]; $name = $module_data[5]; $description = $module_data[6]; $est_tipo = get_moduletype_name ($id_tipo_modulo); echo ""; echo ""; echo ""; echo "
" . __('Type') . "" . __('Module name') . "" . __('S.L.A.') . "" . __('Status') . "
"; echo ""; echo "" . $name; echo " ($sla_min / $sla_max / $sla_limit) "; $temp = get_agent_module_sla ($id_agent_module, $config["sla_period"], $sla_min, $sla_max); if ($temp === false){ echo __('N/A'); echo ""; } else { echo format_numeric($temp)." %"; if ($temp > $sla_limit) echo ""; else echo ""; } } echo '
'; } ?>