sar数据在线图表化实战指南
sar数据在线图表化实战指南
如果历史上曾经发生过性能问题,但是却没有监控系统采集过数据,那么很可能就剩下sar这一条路了。sar就像是系统的"体检报告",能告诉你CPU、内存、磁盘、网络在过去一段时间里到底发生了什么。
sar到底是个什么东西?
sar的全称是System Activity Reporter,系统活动报告器。简单说,它每隔几分钟就会把系统的各种性能指标记录下来。不像top或htop只能看当前状态,sar能让你回到过去,看看昨天晚上2点系统到底发生了什么。
但是使用sar有一个很大成本,就是没有比较好的可视化工具来显示sar的数据,大多数情况下,只能人肉去翻看,定位问题的成本很高。
使用ctbots.com让sar数据"活"起来
后来我开发了ctbots.com的sar在线分析工具
工具地址:https://ctbots.com/zh/linux/graph/sar.html
它支持如下特性:
- 支持单日的sar的数据的绘制
- 支持多日的sar的数据的拼接后绘制
- 支持时间区间缩放,选中一个时间缩放区间后,所有的图标时间区间同步缩放
- 展示的指标项配置了对应的帮助说明
性能问题的常见可疑点
根据我的经验,这几个地方最容易暴露问题:
CPU相关问题
%user
超过80%:应用程序CPU密集型操作%system
超过30%:可能有大量系统调用%iowait
超过10%:磁盘I/O成为瓶颈%steal
超过5%:虚拟化环境资源竞争
内存相关问题
%memused
超过90%:内存不足kbcommit
持续增长:可能有内存泄漏
磁盘I/O问题
%util
接近100%:磁盘满负荷运行await
超过20ms:磁盘响应慢avgqu-sz
超过2:磁盘队列积压
网络相关问题
- 流量突然下降到0:网络断开
- 包数量和流量不匹配:可能有小包攻击