經過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、配置完成後,效果以下