Esempio n. 1
0
 public function startAction()
 {
     $config = Yaf_Registry::get('monitor_config');
     $dataName = $config['loghandle'][$this->logType]['data'];
     $stepTime = intval($config['loghandle'][$this->logType]['step']);
     $logPersistentService = new Service_Log_Persistent();
     $logApp = $logPersistentService->getAppId();
     foreach ($logApp as $table => $appId) {
         $pid = pcntl_fork();
         if (!$pid) {
             $logDataService = new Service_Log_Data($this->logType, $dataName);
             $dataResult = $logDataService->getWeblog($table, $stepTime);
             if (!$dataResult) {
                 return false;
             }
             $etlModel = Model_Loghandle_Etl_Factory::create($this->logType, 'key');
             $extraData = array('logapp' => $logApp, 'data' => $dataResult, 'table' => $table);
             $transData = $etlModel->transform($extraData);
             $firstData = current($dataResult);
             $time = $firstData['time']->sec;
             $etlModel->load($transData, $time);
             exit;
         }
     }
     return false;
 }
Esempio n. 2
0
 /**
  * 
  * 检测脚本钩子程序,每次执行该检测脚本均会执行
  */
 public function plugins($var = array())
 {
     $accessModel = new Service_Log_Persistent();
     $record = $accessModel->getRecordTime('accesslog', 1);
     return $record - 60;
     /*if ($record AND $var['currentTime']>$dataTime) {
     			Ym_Logger::info('check time: '.$var['currentTime'].' grant and equal than data time: '.$dataTime);
     		}*/
 }