经过zabbix自定义Items来监控服务器半年内的登陆次数信息。开始配置以前,须要编写脚本,用于获取服务器的登陆状况,脚本以下:bash
[root@hm 09:14 AM ~ 1119]# cat logon_count.sh #!/bin/bash # author: hm email: mail@huangming.org # system login count option=$1 count1=0 count3=0 count6=0 total0=$(last | grep -Ev "reboot|^$|wtmp" | wc -l) login_file=/tmp/.login who /var/log/wtmp > ${login_file} && chown zabbix. ${login_file} d1=`date -d"1 month ago" +"%s"` d3=`date -d"3 month ago" +"%s"` d6=`date -d"6 month ago" +"%s"` IFS=$'\n' for i in `cat $login_file` do riqi=`echo $i | awk '{ print $3" "$4" "$5 }' | xargs -i date -d "{}" "+%s"` if [ "$riqi" -gt "$d1" ];then count1=$[ $count1 + 1 ] fi if [ "$riqi" -gt "$d3" ];then count3=$[ $count3 + 1 ] fi if [ "$riqi" -gt "$d6" ];then count6=$[ $count6 + 1 ] fi done case $option in d1) echo ${count1} ;; d3) echo ${count3} ;; d6) echo ${count6} ;; d0) echo ${total0} ;; *) echo -e "Usage: sh $0 [d1|d3|d6|d0]" esac
运行脚本服务器
[root@hm 09:15 AM ~ 1120]# ./logon_count.sh d1 #1个月内的登陆次数 54 [root@hm 09:16 AM ~ 1121]# ./logon_count.sh d3 #3个月内的登陆次数 240 [root@hm 09:16 AM ~ 1122]# ./logon_count.sh d6 #6个月内的登陆次数 390 [root@hm 09:16 AM ~ 1123]# ./logon_count.sh d0 #全部的登陆次数 469
1、配置Itemside
1. Configuration->Items ->Create item
spa
二、建立完全部的item,以下rest
三、建立Graphs图形显示项
blog
四、主机Hosts中添加监控项目,完成zabbix WEB端的配置
ip
2、配置UserParameterget
一、在UserParameter配置文件添加一行it
UserParameter=login_count[*],/usr/local/zabbix/scripts/logon_count.sh $1
二、从新启动zabbix_zgentdio
[root@hm 09:41 AM ~ 1124]# service zabbix_agentd restart
3、配置完成后,效果以下