暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

linux网卡流量告警排查

老柴杂货铺 2023-02-13
468

最近给监控平台加上了网卡流量监控net_bytes_sent,发现有一台机子每分钟发送的流量(increase(net_bytes_sent{yw='bjyw',ident='bjyw-sv006'}[1m]))在1G左右,但其他机子正常流量在10M以上,可以肯定的是,这台机子肯定有问题

按秦总(@快猫-秦晓辉)的建议不定时查看 /proc/net/dev数据,发现eth0数据增长值和监控显示增长幅度相近,可以确定是服务器本身存在占用流量较多的进程

接下来的问题就是怎么查询各进程和网卡流量间的关系,使用nethogs查看,可以发现有一个java进程流量使用较高,使用ps aux |grep pid确认进程,查看程序日志发现有报错:该程序在写数据库时因为没有建立当月记录表,导致写库异常,然后程序检测到报错后重复执行写库操作。。。。

至此,问题原因已经很清楚,程序重复连接数据库写入数据时异常(该程序计划下线,巡检时未关注相关日志,当月新的记录表未及时生成)导致网卡流量显示异常。

使用create table like命令生成新的记录表,数据写入正常后结束循环,之后网卡流量监控显示正常

总结如下:

  1. 要更深入的了解各监控项的数据来源,在对监控数据存疑时要学会使用其他方法验证。

  2. 要学会使用更多的工具从异常监控项定位问题原因,如在此例中,可以使用nethogs来定位是哪个进程占用网卡流量更多。

  3. 从进程日志中判断错误原因,找出解决问题的方法。

  4. 对问题进行整体分析,多问几个为什么,从问题表象找到问题发生原因、分析解决问题的方法,避免类似问题再次发生(增加相关日志监控等)

  5. 从系统、日志、业务数据等各方面进行监控,保持对异常数据的敏感性

文章转载自老柴杂货铺,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论