前言
之前讲过的两种方式:
其实已经可以很好的覆盖了生产环境中产生的临时故障情况,并有助于分析流量和错误情况。 但是仅仅这样子还不够。要做到更全面的预警可观测。除了要第一时间处理生产环境中当前产生的错误信息之外。
还需要对业务数据的表现情况也要造成可观测,比如常见的:
- 登录情况,10 分钟成功率预警, 一小时成功率预警,每天成功率预警
- 支付情况,10 分钟支付成功率和数量,每天支付总数
- 核心功能的使用情况监控,比如用于短信验证码的成功率,Google验证码的成功率,两步验证的成功率,远程连接的成功率,用户核心模块的使用成功率等等
这些业务数据,一般服务端都会将使用记录写入数据库,后面再用相关平台来进行预警,比如 cacti,zabbix 等运维平台就是通过写 python 脚本去定时查下数据库对应的数据然后来建立预警值。比如之前常用的在 zabbix 写的预警脚本就是