From 76325333ad124fe2ae009569ded96418df7e703e Mon Sep 17 00:00:00 2001 From: hxp <ale99527@vip.qq.com> Date: 星期三, 03 一月 2024 16:06:57 +0800 Subject: [PATCH] 10061 python代码在线重读(批量重读pymongo支持) --- Tool/RemoteTool/RemoteServer/control.py | 40 +++++++++++++++++++++++++++++++++++++++- 1 files changed, 39 insertions(+), 1 deletions(-) diff --git a/Tool/RemoteTool/RemoteServer/control.py b/Tool/RemoteTool/RemoteServer/control.py index d44d7d6..4ee303a 100644 --- a/Tool/RemoteTool/RemoteServer/control.py +++ b/Tool/RemoteTool/RemoteServer/control.py @@ -92,7 +92,42 @@ except Exception, e: WriteResult( pushurl+ " 重读失败" + str(e)) return False + +# 重读Pymongo,对应GMkey +def ReloadPymongo(pushurl): + # 默认端口80,有需要直接改地址 + try: + # GM推送地址 + gmurl = "http://%s/Server/Tool.php"%(pushurl) + gmkey = "2" # 高级key + if not gmkey or not gmurl: + return + + pack_data = {}; + pack_data["pack_type"] = "GMT_ReloadPymongo" + + pack_data["key"] = gmkey; + pack_data['coding'] = "utf8"; + #使用key加密 + pack_data_dict = json.dumps(pack_data) + sign = md5.md5(pack_data_dict+gmkey).hexdigest() + post = {} + post['pack'] = pack_data_dict; + post['sign'] = sign; + result = urllib2.urlopen(gmurl, urllib.urlencode(post), 10) + + content = result.read() + result.close() + resultDict = json.loads( content) + if resultDict.get("ResultType") == 0: + WriteResult( pushurl + " 重读成功!!!") + return True + WriteResult( pushurl+ " 重读失败! ret:%s" % content) + return False + except Exception, e: + WriteResult( pushurl+ " 重读失败! e:" + str(e)) + return False def WriteResult(msg): global g_fileLog @@ -109,7 +144,7 @@ # 服务器列表 f = open(r'.\qufu.txt','r') - result = raw_input("请输入字母 k.开服 g.关服 c.查看地图运行情况(首开服) r.重读配置") + result = raw_input("请输入字母 k.开服 g.关服 c.查看地图运行情况(首开服) r.重读配置 rpym.重读pymongo") result = result.strip() WriteResult("==开始执行命令:%s"%result) if result == 'k': @@ -124,6 +159,9 @@ elif result == 'r': for line in f.readlines(): ReloadConfig(line.strip()) + elif result == 'rpym': + for line in f.readlines(): + ReloadPymongo(line.strip()) else: WriteResult("==执行错误的命令:%s"%result) f.close() -- Gitblit v1.8.0