| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 | 
							- <?php
 
- namespace Log\Lib;
 
- use Dever;
 
- class Cron extends Core
 
- {
 
- 	public function get()
 
- 	{
 
- 		# 获取所有项目
 
- 		$config = $this->config();
 
- 		$day = array();
 
- 		$day[0] = date('Y-m-d-H');
 
- 		$day[1] = date('Y-m-d-H', strtotime("-1 hour"));
 
- 		if (isset($config['project'])) {
 
- 			foreach ($config['project'] as $k => $v) {
 
- 				foreach ($day as $i => $j) {
 
- 					$data = $this->getDataByProject($j, $v['id'], $v['key']);
 
- 					$this->write($data);
 
- 				}
 
- 			}
 
- 		}
 
- 	}
 
- 	private function write($data)
 
- 	{
 
- 		//$data[0]写入到data表中,data[1]写入到es中
 
- 		
 
- 	}
 
- 	private function getDataByProject($day, $id, $key)
 
- 	{
 
- 		$data = Dever::getLog($day, $key . '/');
 
- 		$source = array();
 
- 		$source['project_id'] = $id;
 
- 		$source['time'] = $day;
 
- 		$source['pv'] = 0;
 
- 		$source['uv'] = 0;
 
- 		if ($data) {
 
- 			$result = array();
 
- 			$pv = $uv = 0;
 
- 			$user = array();
 
- 			foreach ($data as $k => $v) {
 
- 				if ($v) {
 
- 					$temp = explode('dever&', $v);
 
- 					$info = explode(' ', $temp[0]);
 
- 					$result[$k]['time'] = $info[0];
 
- 					$result[$k]['project'] = $info[1];
 
- 					$result[$k]['app'] = $info[2];
 
- 					parse_str($temp[1], $result[$k]['param']);
 
- 					$pv++;
 
- 					if (isset($result[$k]['param']['uid']) && $result[$k]['param']['uid'] > 0) {
 
- 						$user[$result[$k]['param']['uid']] = 1;
 
- 					} else {
 
- 						$user[$result[$k]['param']['ip']] = 1;
 
- 					}
 
- 				}
 
- 			}
 
- 			$source['pv'] = $pv;
 
- 			$source['uv'] = count($user);
 
- 		}
 
- 		return array($source, $result);
 
- 	}
 
- 	public function get_api(){}
 
- }
 
 
  |