前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >zabbix监控常见系统报错

zabbix监控常见系统报错

作者头像
拓荒者
发布2019-08-29 17:06:02
1.8K0
发布2019-08-29 17:06:02
举报
文章被收录于专栏:运维经验分享运维经验分享

zabbix监控常见系统报错

CPU触发器: 1)Processor load is too high on {HOST.NAME} {HOST.NAME}上处理器负载太高 触发器表达式:{Zabbix server:system.cpu.load[percpu,avg1].avg(5m)}>5 告警等级:警告 2)Disk I/O is overloaded on {HOST.NAME} 磁盘I/O在{HOST.NAME}上重载 触发器表达式:{Zabbix server:system.cpu.util[,iowait].avg(1h)}>30 告警等级:警告 3){HOST.NAME} [CPU Idle]-[< 10%] CPU空闲小于百分之10 触发器表达式:{Zabbix server:system.cpu.util[,idle].count(#5,10,"lt")}=5 告警等级:一般严重 General触发器: 1)Hostname was changed on {HOST.NAME} 主机名被更改 触发器表达式:{Zabbix server:system.hostname.diff(0)}>0 告警等级:信息 2)Host information was changed on {HOST.NAME} 主机信息给更改 触发器表达式:{Zabbix server:system.uname.diff(0)}>0 告警等级:信息 3)HOST.NAME} has just been restarted 重新启动主机 触发器表达式:{Zabbix server:system.uptime.change(0)}<0 告警等级:信息 Keepalived触发器 1){HOST.NAME}keepalived进程宕机,请运维人员确认 触发器表达式:({TRIGGER.VALUE}=0 and {Zabbix server:proc.num[keepalived,,,keepalived].change(0)}<0 and {Zabbix server:proc.num[keepalived,,,keepalived].last(0)}=0) or ({TRIGGER.VALUE}=1 and {Zabbix server:proc.num[keepalived,,,keepalived].last(0)}<>3) 告警等级:严重 Memory触发器 1)Lack of free swap space on {HOST.NAME} 主机上缺少自由交换空间 触发器表达式:{Zabbix server:system.swap.size[,pfree].last(0)}<10 告警等级:警告 2)Lack of available memory on server {HOST.NAME} 主机服务器上缺少可用的内存 触发器表达式:{Zabbix server:vm.memory.size[available].last(0)}<20M 告警等级:一般严重 Security触发器 1)/etc/passwd has been changed on {HOST.NAME} 主机密码文件被更改 触发器表达式:{Zabbix server:vfs.file.cksum[/etc/passwd].diff(0)}>0 告警等级:警告 Processes触发器 1)Too many processes running on {HOST.NAME} 在主机上运行的进程太多 触发器表达式:{Zabbix server:proc.num[,,run].avg(5m)}>30 告警等级:警告 2)Too many processes on {HOST.NAME} 在主机上进程太多 触发器表达式:{Zabbix server:proc.num[].avg(5m)}>1000 告警等级:警告 Performace触发器 1)Processor load is too high on {HOST.NAME} 在主机上处理器负载过高(1分钟) 触发器表达式:{Zabbix server:system.cpu.load[percpu,avg1].avg(5m)}>5 告警等级:警告 OS触发器 1)Configured max number of processes is too low on {HOST.NAME} 主机上配置的最大进程数太低 触发器表达式:{Zabbix server:kernel.maxproc.last(0)}<256 告警等级:信息 2)Configured max number of opened files is too low on {HOST.NAME} 在主机上配置的最大打开文件数太低 触发器表达式:{Zabbix server:kernel.maxfiles.last(0)}<1024 告警等级:信息

出现报警首先看 内存瓶颈 free 查看内存使用情况 vmstat 10(间隔时间)100(监控次数) 查看swap in/out 详细定位是否存在性能瓶颈 sar -r 3 查看内存使用情况不包括swap情况 CPU瓶颈 top -H 按照CPU消耗高低排序 ps -Lp 进程号CU 查看某个进程的CPU消耗排序 cat /proc/cpuinfo|grep 'processor'|wc -l 查看cpu核数 top 查看cpu总体消耗,包括分项消耗如user,system,idle,nice等消耗 sar -u 3(间隔时间) 查看cpu总体消耗占比 top -b -n 1 | awk ‘{if (NR<=7)print;else if($8==”D”){print;count++}}END{print “Total status D:”count}’ 计算在cpu load里面的uninterruptedsleep的任务数量

网络瓶颈 cat /var/log/messages 查看内核日志,查看是否丢包 watch more /proc/net/dev 用于定位丢包,错包情况,以便看网络瓶颈 netstat -na|grep ESTABLISHED|wc -l 查看tcp连接成功状态的数量 netstat -na|awk’{print $6}’|sort |uniq -c |sort -nr 看tcp各个状态数量 netstat -i 查看网络错误 ss state ESTABLISHED| wc -l 更高效地统计tcp连接状态为ESTABLISHED的数量 cat /proc/net/snmp 查看和分析240秒内网络包量,流量,错包,丢包 用于计算重传率tcpetr=RetransSegs/OutSegs ping ip 测试网络性能 traceroute ip 查看路由经过的地址 常用于定位网络在各个路由区段的耗时 dig 域名 查看域名解析地址 dmesg 查看系统内核日志

磁盘瓶颈 iostat -x -k -d 1 详细列出磁盘的读写情况 当看到I/O等待时间所占CPU时间的比重很高的时候,首先要检查的就是机器是否正在大量使用交换空间,同时关注iowait占比cpu的消耗是否很大,如果大说明磁盘存在大的瓶颈,同时关注await,表示磁盘的响应时间以便小于5ms

代码语言:javascript
复制
                  iotop                                       查看哪个进程在大量读取IO 一般先通过iostat查看是否存在io瓶颈,再定位哪个进程在大量读取IO    
                  df -hl                                       查看磁盘剩余空间
                  du -sh                                       查看磁盘使用了多少空间

应用瓶颈 ps -ef | grep java 查看某个进程的id号  ps -ef | grep httpd| wc -l 查看特定进程的数量 cat .log | grep Exception | wc -l 统计日志文件中包含特定异常数量 jstack -l pid 用于查看线程是否存在死锁  awk’{print $8}’ 2017-05-22-access_log|egrep ’301|302′| wc -l 统计log中301、302状态码的行数,$8表示第八列是状态码,可以根据实际情况更改 常用于应用故障定位 grep ‘wholesaleProductDetailNew’ cookie_log | awk ‘{if($10==”200″)}’print}’ | awk ‘print $12′ | more 打印包含特定数据的12列数据  grep “2017:05:22″ cookielog | awk ‘($12>0.3){print $12 “–” $8}’ | sort > 目录地址 对apache或者nginx访问log进行响应时间排序,$12表示cookie log中的12列表示响应时间  grep -v ‘HTTP/1.1″ 200′ 取出非200响应码的URL pgm -A -f 应用集群名称 “grep “’301 ‘ log文件地址 | wc -l 查看整个集群的log中301状态码的数量 ps -efL | grep [PID] | wc -l 查看某个进程创建的线程数 find / -type f -name “*.log” | xargs grep “ERROR” 统计所有的log文件中,包含Error字符的行 这个在排查问题过程中比较有用 -XX:HeapDumpPath=/home/logs -Xloggc:/home/log/gc.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps 在Java启动参数中加入,打印gc日志 -server -Xms4000m -Xmx4000m -Xmn1500m -Xss256k -XX:PermSize=340m -XX:MaxPermSize=340m -XX:+UseConcMarkSweepGC 调整JVM堆大小 xss是栈大小

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • zabbix监控常见系统报错
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档