出任何线上事故,先不说其他地方有问题,监控部分是有问题的。听着很甩锅的一句话,仔细思考好像有道理。
这里,我对常用的监控对象以及监控指标分类整理,供大家参考:
①硬件监控
包括:电源状态、CPU 状态、机器温度、风扇状态、物理磁盘、raid 状态、内存状态、网卡状态。
②服务器基础监控
包括:
CPU:单个 CPU 以及整体的使用情况。
内存:已用内存、可用内存。
磁盘:磁盘使用率、磁盘读写的吞吐量。
网络:出口流量、入口流量、TCP 连接状态。
④中间件监控
包括:
Nginx:活跃连接数、等待连接数、丢弃连接数、请求量、耗时、5XX 错误率。
Tomcat:线程数、当前线程数、请求量、耗时、错误量、堆内存使用情况、GC 次数和耗时。
缓存:成功连接数、阻塞连接数、已使用内存、内存碎片率、请求量、耗时、缓存命中率。
消息队列:连接数、队列数、生产速率、消费速率、消息堆积量。
⑤应用监控系统
包括:
HTTP 接口:URL 存活、请求量、耗时、异常量。
RPC 接口:请求量、耗时、超时量、拒绝量。
JVM:GC 次数、GC 耗时、各个内存区域的大小、当前线程数、死锁线程数。
线程池:活跃线程数、任务队列大小、任务执行耗时、拒绝任务数。
连接池:总连接数、活跃连接数。
日志监控:访问日志、错误日志。
业务指标:视业务来定,比如 PV、订单量等。
小编此次分享就此结束,咱们下期再见。