运维监控分为黑盒和白盒
黑盒:不深入代码,在系统角度看TPS,延迟等指标
白盒:深入代码分析,通过日志捕捉,以及主动上报告警等来进行监控
黑盒监控:
1. 页面功能:域名是否可访问,系统可用性(页面是否可以刷出来),按钮点击模拟,console报错日志,http请求(时延,错误,正确率),用户在线数量
2. 对外API接口:QPS/TPS 时间延迟 错误信息 成功率
白盒监控
1. 架构组件
1. VPC,ELB等
2. DNS:解析可用性,解析时延
3. LB:可用性
2. 系统OS
1. 所在系统本身:CPU,磁盘,内存,文件句柄等
2. 进程自身:查看进程DTZ状态,即使kill并重启;进程是否存在;checkHealth接口;
3. 进程
1. 第三方系统接口:QPS/TPS 时间延迟 错误信息 成功率
2. 异步任务:异步任务类似一个接口(QPS/TPS 时间延迟 错误信息 成功率) + 等待队列监控
3. 定时任务:监控是否报错
4. java进程相关日志:监控GC频率
4. 中间件
1. Kafka:可用性,集群切换,消息积压,Topic维度流量监控(关注太高和太低)
2. Redis:可用性,连接数量,QPS, 内存使用率
5. DB
1. 可用性:是否可连接
2. Sql异常:监控Sql报错
3. 慢Sql监控:监控TP90和TP99时间