def restart_im(**kwargs): username = kwargs.get('sender') sender = kwargs.get('receiver') event_key = kwargs.get('event_key') if event_key == 'restart_im': OtherUtil.restart_im() return weixin.reply(username, sender=sender, content=u'感谢关注!')
def __cal_key(self, sql, params, t="select"): key = sql + t for p in params: key = key + str(p) key = OtherUtil.md5(key) return key
def del_redis(): redis_md5 = RequestUtil.get_parameter(request, 'md5', '') rid = redisinfo_dbs.delete_redis(redis_md5) if rid: rst = {'success': 1, 'data': ''} else: rst = {'success': 0, 'data': 'del redis error'} return OtherUtil.object_2_dict(rst)
def del_redis(): redis_md5 = RequestUtil.get_parameter(request, "md5", "") rid = redisinfo_dbs.delete_redis(redis_md5) if rid: rst = {"success": 1, "data": ""} else: rst = {"success": 0, "data": "del redis error"} return OtherUtil.object_2_dict(rst)
def check_iOS(filelist): ipa_list = filelist.split(',') excel_path = iOS_private.export_excel_report(ipa_list) if not os.path.exists(excel_path): print '导出excel表失败' return OtherUtil.object_2_dict({ 'success': 0, 'message': '导出excel表失败,请重试!' }) file_name = os.path.basename(excel_path) return OtherUtil.object_2_dict({ 'success': 1, 'message': '导出excel表成功!', 'url': file_name })
def redis_ping(): try: host = RequestUtil.get_parameter(request, 'host', '') port = int(RequestUtil.get_parameter(request, 'port', '6379')) password = RequestUtil.get_parameter(request, 'password', '') rst = RedisMonitor().ping(host=host, port=port, password=password) except: rst = {'success': 0, 'data': 'ping error'} return OtherUtil.object_2_dict(rst)
def index_page(): #async task tasks.count_to_10000() #此处应该渲染首页模版 try: rst = test_dbs.get_test_by_id('1') except: rst = {} return OtherUtil.object_2_dict(rst)
def redis_ping(): try: host = RequestUtil.get_parameter(request, "host", "") port = int(RequestUtil.get_parameter(request, "port", "6379")) password = RequestUtil.get_parameter(request, "password", "") rst = RedisMonitor().ping(host=host, port=port, password=password) except: rst = {"success": 0, "data": "ping error"} return OtherUtil.object_2_dict(rst)
def redis_ping(): try: host = RequestUtil.get_parameter(request, 'host', '') port = int(RequestUtil.get_parameter(request, 'port', '6379')) password = RequestUtil.get_parameter(request, 'password', '') rst = RedisMonitor().ping(host = host, port = port, password = password) except: rst = {'success': 0, 'data': 'ping error'} return OtherUtil.object_2_dict(rst)
def get_redis_paramter(): try: redis_md5 = RequestUtil.get_parameter(request, 'md5', '') redis_info = redisinfo_dbs.get_redis(redis_md5) if redis_info: rst = RedisMonitor().get_info(host = redis_info['redis_host'], port = redis_info['redis_port'], password = redis_info['redis_pass']) else: rst = {'success': 0, 'data': 'not exist redis informations'} except: rst = {'success': 0, 'data': 'get redis realtime information error'} return OtherUtil.object_2_dict(rst)
def add_redis(): redis_host = RequestUtil.get_parameter(request, 'host', '') redis_port = int(RequestUtil.get_parameter(request, 'port', '6379')) redis_pass = RequestUtil.get_parameter(request, 'password', '') email = RequestUtil.get_parameter(request, 'email', '') rid = redisinfo_dbs.add_redis(redis_host, redis_port, redis_pass, email) if rid: rst = {'success': 1, 'data': ''} else: rst = {'success': 0, 'data': 'add redis error'} return OtherUtil.object_2_dict(rst)
def get_redis_paramter(): try: redis_md5 = RequestUtil.get_parameter(request, "md5", "") redis_info = redisinfo_dbs.get_redis(redis_md5) if redis_info: rst = RedisMonitor().get_info( host=redis_info["redis_host"], port=redis_info["redis_port"], password=redis_info["redis_pass"] ) else: rst = {"success": 0, "data": "not exist redis informations"} except: rst = {"success": 0, "data": "get redis realtime information error"} return OtherUtil.object_2_dict(rst)
def get_redis_paramter(): try: redis_md5 = RequestUtil.get_parameter(request, 'md5', '') redis_info = redisinfo_dbs.get_redis(redis_md5) if redis_info: rst = RedisMonitor().get_info(host=redis_info['redis_host'], port=redis_info['redis_port'], password=redis_info['redis_pass']) else: rst = {'success': 0, 'data': 'not exist redis informations'} except: rst = {'success': 0, 'data': 'get redis realtime information error'} return OtherUtil.object_2_dict(rst)
def add_redis(): redis_host = RequestUtil.get_parameter(request, "host", "") redis_port = int(RequestUtil.get_parameter(request, "port", "6379")) redis_pass = RequestUtil.get_parameter(request, "password", "") email = RequestUtil.get_parameter(request, "email", "") rid = redisinfo_dbs.add_redis(redis_host, redis_port, redis_pass, email) if rid: rst = {"success": 1, "data": ""} else: rst = {"success": 0, "data": "add redis error"} return OtherUtil.object_2_dict(rst)
def ipa_post(): rst = {} pid = StringUtil.get_unique_str() ipa_path = None try: upload_file = request.files['file'] fname = secure_filename(upload_file.filename) suffix_name = fname.split('.')[-1] #文件后缀名不对时,不做存储处理 if not suffix_name in allow_ext: rst['success'] = 0 rst['success'] = 'file ext is not allowed' else: #为图片名称添加时间戳,防止不同文件同名 fname = pid + '.' + suffix_name ipa_path = os.path.join(PathUtil.upload_dir(), fname) upload_file.save(ipa_path) rst['success'] = 1 rst['data'] = {} #获得ipa信息 ipa_parse = IpaParse.IpaParse(ipa_path) rst['data']['app_name'] = ipa_parse.app_name() rst['data']['version'] = ipa_parse.version() rst['data']['bundle_identifier'] = ipa_parse.bundle_identifier() rst['data']['target_os_version'] = ipa_parse.target_os_version() rst['data']['minimum_os_version'] = ipa_parse.minimum_os_version() #检查ios私有api app = iOS_private.get_executable_path(ipa_path, pid) print 'app', app methods_in_app, methods_not_in_app, private = iOS_private.check_private_api( app, pid) rst['data']['methods_in_app'] = methods_in_app rst['data']['private_framework'] = list(private) #检查ipa 64支持情况 rst['data']['arcs'] = iOS_private.check_architectures(app) except: rst['success'] = 0 rst['data'] = '检查失败,也许上传的包并非真正的ipa~' if ipa_path and os.path.exists(ipa_path): os.remove(ipa_path) #删除上传的包 cur_dir = os.getcwd() #删除检查临时目录 dest_tmp = os.path.join(cur_dir, 'tmp/' + pid) if os.path.exists(dest_tmp): shutil.rmtree(dest_tmp) #print rst return OtherUtil.object_2_dict(rst)
def get_server_paramter(): try: type = RequestUtil.get_parameter(request, "type", "") host = RequestUtil.get_parameter(request, "host", "1") port = int(RequestUtil.get_parameter(request, "port", "6379")) password = RequestUtil.get_parameter(request, "password", "") if type == "http": rst = HttpMonitor().get_info(url=host) elif type == "redis": rst = RedisMonitor().get_info(host=host, port=port, password=password) else: rst = {"success": 1, "data": 0} except: rst = {"success": 0, "data": ""} return OtherUtil.object_2_dict(rst)
def ipa_post(): rst = {} pid = StringUtil.get_unique_str() ipa_path = None try: upload_file = request.files['file'] fname = secure_filename(upload_file.filename) suffix_name = fname.split('.')[-1] #文件后缀名不对时,不做存储处理 if not suffix_name in allow_ext: rst['success'] = 0 rst['success'] = 'file ext is not allowed' else: #为图片名称添加时间戳,防止不同文件同名 fname = pid + '.' + suffix_name ipa_path = os.path.join(PathUtil.upload_dir(), fname) upload_file.save(ipa_path) rst['success'] = 1 rst['data'] = {} #获得ipa信息 ipa_parse = IpaParse.IpaParse(ipa_path) rst['data']['app_name'] = ipa_parse.app_name() rst['data']['version'] = ipa_parse.version() rst['data']['bundle_identifier'] = ipa_parse.bundle_identifier() rst['data']['target_os_version'] = ipa_parse.target_os_version() rst['data']['minimum_os_version'] = ipa_parse.minimum_os_version() #检查ios私有api app = iOS_private.get_executable_path(ipa_path, pid) print 'app', app methods_in_app, methods_not_in_app, private = iOS_private.check_private_api(app, pid) rst['data']['methods_in_app'] = methods_in_app rst['data']['private_framework'] = list(private) #检查ipa 64支持情况 rst['data']['arcs'] = iOS_private.check_architectures(app) except: rst['success'] = 0 rst['data'] = '检查失败,也许上传的包并非真正的ipa~' if ipa_path and os.path.exists(ipa_path): os.remove(ipa_path) #删除上传的包 cur_dir = os.getcwd() #删除检查临时目录 dest_tmp = os.path.join(cur_dir, 'tmp/' + pid) if os.path.exists(dest_tmp): shutil.rmtree(dest_tmp) #print rst return OtherUtil.object_2_dict(rst)
def flushall_redis(): try: redis_md5 = RequestUtil.get_parameter(request, 'md5', '') db = RequestUtil.get_parameter(request, 'db', 0) redis_info = redisinfo_dbs.get_redis(redis_md5) if redis_info: r = RedisUtil.flushall(redis_info['redis_host'], redis_info['redis_port'], redis_info['redis_pass'], db) if r: rst = {'success': 1, 'data': ''} else: rst = {'success': 0, 'data': 'flush db error!'} else: rst = {'success': 0, 'data': 'not exist redis informations'} except: rst = {'success': 0, 'data': 'connect to redis error'} return OtherUtil.object_2_dict(rst)
def get_server_paramter(): try: type = RequestUtil.get_parameter(request, 'type', '') host = RequestUtil.get_parameter(request, 'host', '1') port = int(RequestUtil.get_parameter(request, 'port', '6379')) password = RequestUtil.get_parameter(request, 'password', '') if type == 'http': rst = HttpMonitor().get_info(url=host) elif type == 'redis': rst = RedisMonitor().get_info(host=host, port=port, password=password) else: rst = {'success': 1, 'data': 0} except: rst = {'success': 0, 'data': ''} return OtherUtil.object_2_dict(rst)
rst = reviewResult except Exception, e: print e rst['success'] = 0 rst['message'] = '检查失败,也许上传的包并非真正的ipa,或者系统出现错误!' # 删除上传的包 # if ipa_path and os.path.exists(ipa_path): # os.remove(ipa_path) cur_dir = os.getcwd() #删除检查临时目录 dest_tmp = os.path.join(cur_dir, 'tmp/' + pid) if os.path.exists(dest_tmp): shutil.rmtree(dest_tmp) return OtherUtil.object_2_dict(rst) #定义404页面 @app.errorhandler(404) def page_not_found(error): return '404' @app.errorhandler(502) def server_502_error(error): return '502' @app.route('/not_allow', methods=['GET']) def deny(error):
arcs = iOS_private.check_architectures(app) rst['data']['arcs'] = arcs except Exception, e: print e rst['success'] = 0 rst['data'] = '检查失败,也许上传的包并非真正的ipa,或者系统出现错误!' if ipa_path and os.path.exists(ipa_path): os.remove(ipa_path) #删除上传的包 cur_dir = os.getcwd() #删除检查临时目录 dest_tmp = os.path.join(cur_dir, 'tmp/' + pid) if os.path.exists(dest_tmp): shutil.rmtree(dest_tmp) #print rst return OtherUtil.object_2_dict(rst) #定义404页面 @app.errorhandler(404) def page_not_found(error): return '404' @app.errorhandler(502) def server_502_error(error): return '502' @app.route('/not_allow', methods=['GET']) def deny(error): return 'You IP address is not in white list...'