分类:运维技术日期:2018-06-13 - 19:34:41评论:1条作者:老谢
创建top.sh
#!/bin/sh
top -n 1 -b> /tmp/top.txt |
#!/bin/sh
top -n 1 -b> /tmp/top.txt
#注: 所有脚本请放至/usr/local/zabbix/share/scripts中
#注: 该脚本的意思是执行一次top命令并将结果重定向到top.txt
crontab -e
*/1 * * * * /usr/local/zabbix/share/scripts/top.sh > /dev/null |
crontab -e
*/1 * * * * /usr/local/zabbix/share/scripts/top.sh > /dev/null
#注: 使用crond每分钟执行一次脚本,输出最新top数据到top.txt
创建check_process.sh获取进程名
#!/bin/bash
TABLESPACE=`tail -n +8 /tmp/top.txt|awk '{a[$NF]+=$6}END{for(k in a)print a[k]/1024,k}'|sort -gr|head -10|cut -d" " -f2`
COUNT=`echo "$TABLESPACE" |wc -l`
INDEX=0
echo '{"data":['
echo "$TABLESPACE" | while read LINE; do
echo -n '{"{#PROCESSNAME}":"'$LINE'"}'
INDEX=`expr $INDEX + 1`
if [ $INDEX -lt $COUNT ]; then
echo ','
fi
done
echo ']}' |
#!/bin/bash
TABLESPACE=`tail -n +8 /tmp/top.txt|awk '{a[$NF]+=$6}END{for(k in a)print a[k]/1024,k}'|sort -gr|head -10|cut -d" " -f2`
COUNT=`echo "$TABLESPACE" |wc -l`
INDEX=0
echo '{"data":['
echo "$TABLESPACE" | while read LINE; do
echo -n '{"{#PROCESSNAME}":"'$LINE'"}'
INDEX=`expr $INDEX + 1`
if [ $INDEX -lt $COUNT ]; then
echo ','
fi
done
echo ']}'
注: 最关键的是tail -n +8 /tmp/top.txt|awk ‘{a[NF]+=6}END{for(k in a)print a[k]/1024,k}’|sort -gr|head -10|cut -d” ” -f2这条命令:这条命令的意思是从top.txt文件中取出从第八行到末尾行的数据,然后使用awk对这些数据进行累加,效果是以最后一列为关键字,每个关键字对应的第6列的数值进行累加,输出第六列数据的累加结果和最后一列数据,然后使用sort进行排序,注意这里的参数是使用-gr而不是使用-nr是因为获取到的第六列的值是以KB为单位的,假如某进程占用内存大于10G的话,将会使用科学记数法计数,sort -nr参数无法对科学记数法进行计数,需要将参数改成-gr才行,其中的-r是进行反向排序,同时为了防止zabbix获取到该值是科学记数法获取的值从而无法识别,先将该值/1024将单位变成MB,当zabbix获取到数据后再*1024*1024将该值还原成BYTE单位。head -10是取出占用内存最大的十个进程,然后使用cut对数据进行切分,获得十个进程的进程名。
继续阅读…
分类:运维技术日期:2018-06-11 - 20:58:49评论:0条作者:老谢
MySQL基础监控
通过SHOW STATUS 可以提供服务器状态信息,也可以使用mysqladmin extendedstatus 命令获得。
以下几个参数对Myisam 和Innodb 存储引擎都计数:
- Com_select 执行select 操作的次数,一次查询只累加1
- Com_insert 执行insert 操作的次数,对于批量插入的insert 操作,只累加一次
- Com_update 执行update 操作的次数
- Com_delete 执行delete 操作的次数
以下几个参数是针对Innodb 存储引擎计数的:
- Innodb_rows_read select 查询返回的行数
- Innodb_rows_inserted 执行Insert 操作插入的行数
- Innodb_rows_updated 执行update 操作更新的行数
- Innodb_rows_deleted 执行delete 操作删除的行数
通过以上几个参数,可以很容易的了解当前数据库的应用是以插入更新为主还是以查询操作为主,以及各种类型的SQL 大致的执行比例是多少。对于更新操作的计数,是对执行次数的计数,不论提交还是回滚都会累加。对于事务型的应用,通过Com_commit 和Com_rollback 可以了解事务提交和回滚的情况,对于回滚操作非常频繁的数据库,可能应用编写存在问题。
另外还有几个参数可以了解数据库的基本信息:
- Connections 试图连接Mysql 服务器的次数
- Uptime 服务器工作时间
- Slow_queries 慢查询的次数
继续阅读…
分类:乱七八糟日期:2018-06-09 - 19:30:46评论:14条作者:老谢
自h入手顶配X220以来,深深爱上了X系带来的便携性,1366*768的分辨率外出应用一下没问题,但是长时间使用分辨率太低实在影响效率,所以一直使用外接的显示器,但是最近把外接显示器搬走以后,普分的屏用着实在太难受了,于是折腾一波!
改造项目:
- 屏幕:夏普W23 IPS 1920*1080
- 网卡:BCM94360HMB (1300m 蓝牙4.0)
- 白名单BIOS屏蔽LVSD实现单屏模式
- 蓝牙接口转USB内置无线鼠标适配器
继续阅读…
最新评论
店铺起名:2399?这电池是真贵!
王光卫博客:小米生态还是比较丰富
空空裤兜:在天猫买的利维斯顿,阿里智能APP...
林羽凡:我突然发现,你也记录了很多博文了。
菊座:小米的东西还行
zwwooooo:一般电器产品都jd,就是想售后身心
zwwooooo:能随便搞个公司玩玩也算是实力选手
大D:坚持就是胜利哈哈哈
老麦:看着那一排日志存档,老前辈了啊。
大峰:这售后可以嘛~