Ejemplo n.º 1
0
function Logger_trends()
{
    require_once "forensics_stats.inc";
    require_once "../sem/process.inc";
    require_once 'ossim_db.inc';
    global $tz;
    $data = array();
    $db = new ossim_db();
    $dbconn = $db->connect();
    // Get remote logger servers
    list($logger_servers, $ip_to_name, $ip_list, $fcolors, $bcolors, $from_remote, $logger_colors) = get_logger_servers($dbconn);
    $db->close($dbconn);
    foreach ($logger_servers as $ip) {
        if ($ip != "127.0.0.1") {
            $cmd = "sudo /usr/share/ossim/www/sem/fetchremote_graph.pl panel {$tz} {$ip}";
            //echo $cmd;
            exec($cmd, $aux);
            foreach ($aux as $line) {
                if (preg_match("/(.*);(.*)\\=(.*)/", $line, $fnd)) {
                    // 9 12h;192.168.10.1=703
                    if (Session::sensorAllowed($fnd[2])) {
                        $data[$fnd[1]] = trim($fnd[3]);
                    }
                }
            }
        }
    }
    // local server
    $today = gmdate("j");
    $beforeyesterday = gmdate("j", strtotime("-2 day"));
    $yesterday = gmdate("j", strtotime("-1 day"));
    $tomorrow = gmdate("j", strtotime("+1 day"));
    $csy = get_day_csv(gmdate("Y", strtotime("-1 day")), gmdate("m", strtotime("-1 day")), gmdate("d", strtotime("-1 day")));
    $csv = get_day_csv(gmdate("Y"), gmdate("m"), gmdate("d"));
    //print_r($csy); print_r($csv);
    foreach ($csy as $key => $value) {
        $tzhour = $key + $tz;
        $day = $yesterday;
        if ($tzhour < 0) {
            $tzhour += 24;
            $day = $beforeyesterday;
        } elseif ($tzhour > 23) {
            $tzhour -= 24;
            $day = $today;
        }
        $data[$day . " " . $tzhour . "h"] += $value;
    }
    foreach ($csv as $key => $value) {
        $tzhour = $key + $tz;
        $day = $today;
        if ($tzhour < 0) {
            $tzhour += 24;
            $day = $yesterday;
        } elseif ($tzhour > 23) {
            $tzhour -= 24;
            $day = $tomorrow;
        }
        $data[$day . " " . $tzhour . "h"] += $value;
    }
    //print_r($data);
    return $data;
}
Ejemplo n.º 2
0
$conn_aux = $db_aux->connect();
// Solera API
$_SESSION["_solera"] = $conf->get_conf("solera_enable", FALSE) ? true : false;
// Timezone correction
$tz = Util::get_timezone();
$timetz = gmdate("U") + 3600 * $tz;
// time to generate dates with timezone correction
$param_query = GET("query") ? GET("query") : "";
$current_search = urldecode(GET("current_search"));
$param_start = GET("start") ? GET("start") : gmdate("Y-m-d H:i:s", $timetz - 24 * 60 * 60);
$param_end = GET("end") ? GET("end") : gmdate("Y-m-d H:i:s", $timetz);
// Default GRAPH RANGE [day|last_month]";
$_SESSION['graph_type'] = "day";
$_SESSION['cat'] = gmdate("M j, Y");
$database_servers = Server::get_list($conn_aux, ",server_role WHERE server.name=server_role.name AND server_role.sem=1");
list($logger_servers, $ip_to_name, $ip_list, $fcolors, $bcolors, $from_remote, $logger_colors) = get_logger_servers($conn_aux);
ossim_valid($param_query, OSS_TEXT, OSS_NULLABLE, OSS_BRACKET, 'illegal:' . _("query"));
ossim_valid($current_search, OSS_TEXT, OSS_NULLABLE, OSS_BRACKET, OSS_PUNC, '%', 'illegal:' . _("current_search"));
ossim_valid($param_start, OSS_DIGIT, OSS_COLON, OSS_SCORE, OSS_SPACE, OSS_NULLABLE, 'illegal:' . _("start date"));
ossim_valid($param_end, OSS_DIGIT, OSS_COLON, OSS_SCORE, OSS_SPACE, OSS_NULLABLE, 'illegal:' . _("end date"));
ossim_valid($num_servers, OSS_DIGIT, OSS_NULLABLE, 'illegal:' . _("num_servers"));
ossim_valid(GET('del_export'), OSS_DIGIT, OSS_ALPHA, OSS_NULLABLE, '=', 'illegal:' . _("del_export"));
if (ossim_error()) {
    die(ossim_error());
}
$config = parse_ini_file("everything.ini");
if ($config["debug"] == 1) {
    if ($config["debug_log"] == "") {
        $config["debug_log"] = "/var/log/ossim/sem.log";
    }
    //$handle = fopen($config["debug_log"], "a+");