所有告警都往一个群里发, P0 级的支付故障和 P3 级的日志提醒混在一起,真故障淹没在噪音里。监控分级把告警分四档四通道:P0 电话与全服公告、P1 短信、P2 邮件、P3 进日报,分级准入由来源清单控制,杜绝狼来了。分级的核心是通道与严重度匹配,让每条告警按它真正的紧急程度到达该到的人面前。上线首月告警总量降了四成,P0 的平均响应时长从 40 分钟压到 8 分钟。
告警封装按档位路由到对应通道与接收人,P0 额外全服公告让玩家知情,其余档位静默处理不打扰玩家。
local CH = {
[0] = { mail = "#故障经理", id = 920, tag = "P0" },
[1] = { mail = "#值班老张", id = 921, tag = "P1" },
[2] = { mail = "#值班老张", id = 922, tag = "P2" },
[3] = { mail = "#日报汇总员", id = 923, tag = "P3" },
}
local function raise(level, desc)
local c = CH[level]
if c == nil then return end
sendmail(c.mail, c.id, c.tag .. ":" .. desc, os.date("%Y-%m-%d %H:%M"), "")
if level == 0 then
sendcentermsg("P0 故障处理中,部分功能可能受影响")
end
end
只有三个来源允许升到 P0:主进程无响应、支付回调失败、全服掉线,其余来源一律从 P1 起步,防止告警通胀。
local P0_SRC = { ["main_down"] = true, ["pay_fail"] = true, ["all_offline"] = true }
local function raiseWith(src, desc)
local level = P0_SRC[src] and 0 or 1
raise(level, desc)
end
四档各发一条演练告警,核对通道、收件人、时间戳三要素;非 P0 来源尝试冒充 P0 被自动降档;P0 公告文案与玩家侧表述一致。分级与值班升级链对接,P0 告警直接进入 15 分钟认领倒计时,P1 起进入次日日报排队。P2 汇总里单条来源的重复次数单独计数,同一来源一天重复五次以上自动升一级处理。监控每月 P0 数量,健康基线是不超过 2 条,超了说明分级准入在漏水。
分级上线前 P0 通道一个月被拉响十一次,全是可推迟的容量提醒,来源清单把 P0 收紧到三个硬故障源后才恢复信誉。P2 邮件凌晨发了二十条,早上没人翻到第三条,P2 改为早九点汇总发送,夜间只收不发。告警描述自由填写,同一故障三种叫法,检索对不上,描述强制走来源码加参数的模板。sendmail 的标题超长被网关截断,级别标签放在标题最前面保证截断后仍可辨级。
全站技术干货持续更新:996 引擎 / Lua 实战帖,语法、参数与示例一篇讲透。进入文章地图 · 查看全部 →
实战应用:用在哪里 占领沙巴克的收益只有税收一条,城主玩起来没有治理感。城主印玺给占领行会三枚政策印玺:传送令开城内免费传送…
实战应用:用在哪里 酒馆缺一个轻量小游戏留住等朋友的玩家。斗兽棋搬进比奇酒馆:七乘九棋盘八种棋子,鼠象互克、狮虎跳河,每日挑…
实战应用:用在哪里 四服合一时排行榜串了档:137 个跨服同名玩家在榜单上互相覆盖,89 条榜单数据张冠李戴,榜三的裁决之杖…
实战应用:用在哪里 打祖玛教主时目标信息一屏全塞,打小怪时框里空得只剩名字。目标框按目标类型分两档密度:普通目标只展示名字加…
实战应用:用在哪里 榜单只显示名字和数值,玩家想知道榜一大哥的装备评分就得私聊问。排行榜详情页补上这层:点榜单条目上行排名号…
实战应用:用在哪里 读写分离上线后,玩家刚领完奖励刷新面板却查不到,主库写入还没同步到从库,延迟高峰有两秒。应对方案分两层:…