Exemplo n.º 1
0
<?php

error_reporting(E_ALL | E_STRICT);
require '../lib/cli.php';
require '../lib/factory.php';
F::init();
F::$dbo->setProfiling(false);
$fields = array('conn' => array('processed' => 0, 'fields' => cli::CAT_FIELDS_CONN), 'rule' => array('processed' => 0, 'fields' => cli::CAT_FIELDS_RULE));
$_l = new nCurse(0, 40, 0, 0);
$_l->reset('Process status');
$_l->refresh();
$_r = new nCurse(0, 0, 0, 40);
$_r->reset('Process log');
$_r->refresh();
$totals = F::$dbo->fetch('SELECT cat_name, count(id) AS cnt FROM raw_log WHERE cat_name IN ("' . strtoupper(implode('","', array_keys($fields))) . '") GROUP BY cat_name');
foreach ($totals as $tRow) {
    $_l->sprintf(' %s: 0 of %s', $tRow['cat_name'], number_format($tRow['cnt'], 0));
}
$_l->refresh();
foreach ($fields as $cat => $info) {
    $_r->println('Truncate table `cat_' . $cat . '`');
    $_r->refresh();
    F::$dbo->query('TRUNCATE `cat_' . $cat . '`');
    $_r->println('   Collecting RAW data');
    $_r->refresh();
    $q = F::$dbo->query('SELECT id, remote_ip, datetime, data FROM raw_log WHERE cat_name = "' . strtoupper($cat) . '" ORDER BY id ASC');
    $_r->println('   Processing');
    $_r->refresh();
    foreach ($q as $row) {
        $msgRaw = array();
        foreach (explode("\n", $row['data']) as $value) {
Exemplo n.º 2
0
     ksort($gates);
 }
 $cats[$catName]++;
 $gates[$from]++;
 $_wLeft->reset($fullDate);
 $_wLeft->println(str_pad('=[Routers]', 23, '='));
 foreach ($gates as $ip => $count) {
     $_wLeft->println(($ip == $from ? ' >' : '  ') . $ip . ': ' . $count);
 }
 $_wLeft->println(str_pad('=[Category Rating]', 23, '='));
 foreach ($cats as $cat => $count) {
     $_wLeft->println(($cat == $catName ? ' >' : '  ') . $cat . ': ' . $count);
 }
 $_wLeft->println('  ' . str_repeat('=', 21));
 $_wLeft->println('  TOTAL: ' . array_sum($cats));
 $_wRight->reset('FROM: ' . $from);
 $_wRight->println($msg);
 $data = array();
 $data['datetime'] = F::$dbo->escape($fullDate, true);
 $data['d_year'] = $date[0];
 $data['d_month'] = $date[1];
 $data['d_day'] = $date[2];
 $data['d_hour'] = $date[3];
 $data['d_minute'] = $date[4];
 $data['d_second'] = $date[5];
 $data['cat_id'] = $catId;
 $data['cat_name'] = F::$dbo->escape($catName, true);
 $data['mark'] = F::$dbo->escape($mark, true);
 $data['remote_ip'] = F::$dbo->escape($from, true);
 $data['remote_port'] = $port;
 $data['data'] = F::$dbo->escape(implode("\n", $msg), true);