Zabbix监控记录linux服务器近期的登陆状况

    经过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

wKiom1i2K1LQHgZLAACcqX9XnIU360.png


二、建立完全部的item,以下rest

wKiom1i2I5KDGO0sAABTSrydfW4809.png


三、建立Graphs图形显示项
blog

wKioL1i2JAfjcl2kAAC_ypIMnjs274.png


四、主机Hosts中添加监控项目,完成zabbix WEB端的配置
ip

wKioL1i2JcDgDbVHAADssNTbDtI687.png


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

wKiom1i2K9-BuqHNAADsyEi1jVU449.png

相关文章
相关标签/搜索