123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- <?php
-
- function log_debug( $msg ){
- if (!APP_DEBUG) return;
- static $time_cache = 0, $msg_cache = '';
- if (log_cache($time_cache, $msg_cache, $msg)) {
- return;
- }
- $logger = \Jiaruan\FileLogger::getInstance(SOLUTION_LOG_PATH . '/jzgl/');
- $logger->log('',\Jiaruan\FileLogger::DEBUG,$msg);
-
- }
-
-
- function log_error( $msg ){
- static $time_cache = 0, $msg_cache = '';
- if (log_cache($time_cache, $msg_cache, $msg)) {
- return;
- }
- $logger = \Jiaruan\FileLogger::getInstance(SOLUTION_LOG_PATH . '/jzgl/');
- $logger->log('',\Jiaruan\FileLogger::ERROR,$msg);
- }
-
-
- function log_info( $msg ){
- if (!APP_DEBUG) return;
- static $time_cache = 0, $msg_cache = '';
- if (log_cache($time_cache, $msg_cache, $msg)) {
- return;
- }
- $logger = \Jiaruan\FileLogger::getInstance(SOLUTION_LOG_PATH . '/jzgl/');
- $logger->log('',\Jiaruan\FileLogger::INFO,$msg);
- }
-
-
- function createProtoClass( $type ){
- static $instances = array();
- if($instances[$type])
- return $instances[$type];
- if($type == C('协议类型_基站开机登陆')){
- $instances[$type] = new \Jiaruan\ProtoLogin;
- }
- else if($type == C('协议类型_基站定时心跳')){
- $instances[$type] = new \Jiaruan\ProtoHeartbeat;
- }
- else if($type == C('协议类型_用户布控车辆')){
- $instances[$type] = new \Jiaruan\ProtoMonit;
- }
- else if($type == C('协议类型_用户撤控车辆')){
- $instances[$type] = new \Jiaruan\ProtoUnmonit;
- }
- else if($type == C('协议类型_用户重启基站')){
- $instances[$type] = new \Jiaruan\ProtoReboot;
- }
- else if($type == C('协议类型_用户升级基站')){
- $instances[$type] = new \Jiaruan\ProtoUpgrade;
- }
- else if($type == C('协议类型_用户检查基站')){
- $instances[$type] = new \Jiaruan\ProtoCheck;
- }
- else if($type == C('协议类型_用户下发命令行')){
- $instances[$type] = new \Jiaruan\ProtoCmdLine;
- }
- else{
- $instances[$type] = null;
- }
- return $instances[$type];
- }
-
-
- function get_station_cityid( $mac ){
- $ret = MM("jms_station",'fdv2')->where(array("DeviceNumber" => $mac))->getField('CityId');
- return $ret == null ? 0 : $ret;
- }
-
-
- function get_vehicle_cityid( $vehicle_number ){
- $ret = MM("jms_vehicle",'fdv2')->where(array("DeviceNumber" => $vehicle_number))->getField('CityId');
- return $ret == null ? 0 : $ret;
- }
-
-
- function log_cache( &$time_cache, &$msg_cache, &$msg ){
- if ($time_cache == 0) {
- $time_cache = time();
- }
- if ($msg_cache == '') {
- $msg_cache = "\n";
- }
- $msg_cache .= "[" .date("H:i:s", time()) . "]" . $msg . "\n";
- //关闭主进程 或 日志大于15k 或 时间大于2秒 写日志到磁盘
- if (strpos($msg, "stop:") !== 0
- && strlen($msg_cache) < 1024 * 15
- && time() - $time_cache < 2) {
- return true;
- }
- $msg = $msg_cache;
- $msg_cache = '';
- $time_cache = time();
- return false;
- }
-
|