自定义监控配置

自定义监控httpd进程

[root@agent ~]# cd /usr/local/etc/
[root@agent etc]# ls
zabbix_agentd.conf  zabbix_agentd.conf.d
[root@agent etc]# vim zabbix_agentd.conf
UnsafeUserParameters=1   //搜索Parameters
# 用法: UserParameter=<key>,<shell command>


UserParameter=check_process_httpd,/bin/bash /scropts/check_process.sh  

[root@agent ~]# pkill zabbix   
[root@agent ~]# zabbix_agentd   
[root@agent ~]# ss -antl
State    Recv-Q   Send-Q     Local Address:Port      Peer Address:Port   Process   
LISTEN   0        128              0.0.0.0:22             0.0.0.0:*                
LISTEN   0        5              127.0.0.1:631            0.0.0.0:*                
LISTEN   0        128              0.0.0.0:10050          0.0.0.0:*                

 
[root@agent ~]# systemctl start httpd.service    
[root@agent ~]# systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor pr>
   Active: active (running) since Sat 2022-07-10 12:03:51 CST; 7s ago
     Docs: man:httpd.service(8)
 Main PID: 1309336 (httpd)


[root@agent ~]# ps -ef | grep httpd
root     1309336      1  0 12:03 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   1309337 1309396  0 12:03 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   1309338 1309396  0 12:03 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   1309339 1309396  0 12:03 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
apache   1309340 1309396  0 12:03 ?        00:00:00 /usr/sbin/httpd -DFOREGROUND
root     1328861 1291508  0 12:07 pts/5    00:00:00 grep --color=auto httpd

[root@agent ~]# ps -ef | grep -v grep| grep -c httpd httpd 


 编写脚本

[root@agent etc]# mkdir /scropts
[root@agent etc]# cd /scropts/
[root@agent scropts]# vim check_process.sh
[root@agent scropts]# cat check_process.sh   
#!/bin/bash

count=$(ps -ef | grep -v grep| grep -c httpd)  
if [ $count -ne 5 ];then  
    echo '1'   
fi  


[root@agent scropts]# chmod +x check_process.sh   
[root@agent scropts]# ll
总用量 4
-rwxr-xr-x. 1 root root 101 July  10 12:12 check_process.sh

[root@agent ~]# systemctl stop httpd.service   
[root@agent ~]# ps -ef | grep -v grep| grep -c httpd

0 

[root@agent scropts]# bash check_process.sh 
1   

[root@server ~]# zabbix_get -s 192.168.80.22 -k check_process_httpd
1   

为客户端添加监控项

 添加触发器

 

 

 

 

 

 

 

 

[root@agent scropts]# cat check_process.sh 
#!/bin/bash
count=$(ps -ef | grep -Ev "grep|$0" | grep -c $1)     
if  [ $count -eq 0 ];then  0
     echo '1'
else
     echo '0'   
fi


测试

[root@agent scropts]# systemctl status httpd
● httpd.service - The Apache HTTP Server
   Loaded: loaded (/usr/lib/systemd/system/httpd.service; disabled; vendor pr>
   Active: inactive (dead)
     Docs: man:httpd.service(8)

[root@agent scropts]# bash check_process.sh httpd  
1


修改文件zabbix_agentd.conf.d

[root@agent ~]# cd /usr/local/etc/
[root@agent etc]# ls
zabbix_agentd.conf  zabbix_agentd.conf.d
[root@agent etc]# vim zabbix_agentd.conf
UserParameter=check_process[*],/bin/bash /scropts/check_process.sh $1
[root@agent etc]# pkill zabbix
[root@agent etc]# zabbix_agentd   

 修改监控项

 

 

 

 

 自定义监控日志

[root@agent scropts]# chmod +x log.py    
[root@agent scropts]# ll
总用量 8
-rwxr-xr-x. 1 root root  124 July  10 13:17 check_process.sh
-rwxr-xr-x. 1 root root 1854 July  10 13:15 log.py

[root@agent httpd]# setfacl -m u:zabbix:rx /var/log//httpd   
[root@agent httpd]# getfacl /var/log/httpd/
getfacl: Removing leading '/' from absolute path names
# file: var/log/httpd/
# owner: root
# group: root
user::rwx
user:zabbix:r-x
group::---
mask::r-x
other::---


测试脚本
[root@agent ~]# yum install python3 -y   //安装python

[root@agent scropts]# python3 log.py /var/log/httpd/error_log   
0
[root@agent scropts]# echo 'Error' >> /var/log/httpd/error_log  
[root@agent scropts]# python3 log.py /var/log/httpd/error_log    
1 
[root@agent scropts]# python3 log.py /var/log/httpd/error_log  打印0
0


[root@agent scropts]# cat /tmp/logseek     
3851[root@agent scropt   
[root@agent scropts]# python3 log.py /var/log/httpd/error_log   //执行脚本
0
[root@agent scropts]# cat /tmp/logseek 
3873[root@agent scropts]#  



[root@agent scropts]# ll /tmp/logseek 
-rw-r--r--. 1 root root 4 July   10 13:07 /tmp/logseek  
[root@agent scropts]# rm -rf /tmp/logseek    

[root@agent etc]# vim zabbix_agentd.conf
UserParameter=check_logs[*],/usr/bin/python3 /scropts/log.py $1 $2 $3  

[root@agent ~]# pkill zabbix_agentd   
[root@agent ~]# zabbix_agentd   
[root@agent ~]# ss -antl
State   Recv-Q  Send-Q    Local Address:Port      Peer Address:Port  Process  
LISTEN  0       128             0.0.0.0:22             0.0.0.0:*              
LISTEN  0       5             127.0.0.1:631            0.0.0.0:*              
LISTEN  0       128             0.0.0.0:10050          0.0.0.0:*              

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值