From 6ad924ae5602f3ebc89267ed6c824a2523c0f36e Mon Sep 17 00:00:00 2001 From: hch <305670599@qq.com> Date: 星期六, 13 四月 2019 16:15:21 +0800 Subject: [PATCH] 6515 【测试】【主干】新增游戏警报邮件 --- ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py | 15 ++++++++++++++- ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py | 2 ++ ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorld.py | 12 ++++++++++++ Tool/RemoteTool/RemoteServer/webapp.py | 7 +++++++ 4 files changed, 35 insertions(+), 1 deletions(-) diff --git a/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py b/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py index 34e6938..4968286 100644 --- a/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py +++ b/ServerPython/CoreServerGroup/GameServer/Script/GameWorld.py @@ -1016,4 +1016,17 @@ except: return inputText - return inputText \ No newline at end of file + return inputText + + +# 向运维发送邮件,用于需要紧急处理的信息 +# 此处不包含服务器报错的汇报 +def SendGameStateMail(msgInfo): + # 使用方式 向OpenStateUrl 发送Type为GameWarning,那么就会收到一封游戏内容警告邮件,信息为MsgInfo + getUrl = ReadChConfig.GetPyMongoConfig("EventReport", "OpenStateUrl") + groupID = ReadChConfig.GetPyMongoConfig("platform", "GroupID") + userDBName = ReadChConfig.GetPyMongoConfig("connect", "USER_DB_NAME") + getUrl = getUrl + "?Type=GameWarning&groupID=%s&userDBName=%s&MsgInfo=%s"%(groupID, userDBName, msgInfo) + + GetGameWorld().EventReport_EventReport("", "", "", "", 0, getUrl) + \ No newline at end of file diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py index 3cf2797..d01360f 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/DataRecordPack.py @@ -353,6 +353,8 @@ #发送封包 SendEventPack("CTGError", dataDict, curPlayer) GameWorld.ErrLog("%s. %s" % (errorInfo, addDict), curPlayer.GetPlayerID()) + + GameWorld.SendGameStateMail("CTGError:%s"%dataDict) return def DR_CTGOK(curPlayer, addDict): diff --git a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorld.py b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorld.py index abca8cc..126ee33 100644 --- a/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorld.py +++ b/ServerPython/ZoneServerGroup/map1_8G/MapServer/MapServerData/Script/GameWorld.py @@ -1974,3 +1974,15 @@ return +# 向运维发送邮件,用于需要紧急处理的信息 +# 此处不包含服务器报错的汇报 +def SendGameStateMail(msgInfo): + # 使用方式 向OpenStateUrl 发送Type为GameWarning,那么就会收到一封游戏内容警告邮件,信息为MsgInfo + getUrl = ReadChConfig.GetPyMongoConfig("EventReport", "OpenStateUrl") + groupID = ReadChConfig.GetPyMongoConfig("platform", "GroupID") + userDBName = ReadChConfig.GetPyMongoConfig("connect", "USER_DB_NAME") + getUrl = getUrl + "?Type=GameWarning&groupID=%s&userDBName=%s&MsgInfo=%s"%(groupID, userDBName, msgInfo) + + GetGameWorld().EventReport_EventReport("", "", "", "", 0, getUrl) + + diff --git a/Tool/RemoteTool/RemoteServer/webapp.py b/Tool/RemoteTool/RemoteServer/webapp.py index ff02492..a2e8e30 100644 --- a/Tool/RemoteTool/RemoteServer/webapp.py +++ b/Tool/RemoteTool/RemoteServer/webapp.py @@ -111,6 +111,13 @@ dataDict.get("userDBName", 0)) SendEmail(ServerInfo) return + elif stateType == "GameWarning": + # 游戏通用警告邮件使用 + ServerInfo = "游戏警报:服务器组:%s, dbname:%s, 警告信息:"%( + dataDict.get("groupID", 0), + dataDict.get("userDBName", 0), + dataDict.get("MsgInfo", 0)) + SendEmail(ServerInfo) elif stateType == "QueryMapOK": if g_AllMapCnt == 0: if not os.path.exists(".\MapCount.txt"): -- Gitblit v1.8.0