zoukankan      html  css  js  c++  java
  • zabbix监控之进程&日志监控

    一、进程监控

    1、环境说明

    环境IP要安装的应用
    服务器 192.168.56.23 lamp架构
    zabbix server
    zabbix agent
    客户端 192.168.56.20 zabbix agent

    2、项目要求

    利用zabbix对客户机192.168.56.20上的postfix进程进行监控

    3、监控配置

    1)客户端修改

    //创建脚本路径并编写脚本
    [root@20liuzhenchao ~]# mkdir /scripts
    [root@20liuzhenchao ~]# vim /scripts/check_process.sh
    #!/bin/bash
    
    process_count=$(ps -ef|grep -Ev "grep|$0" |grep -c $1)
    echo $process_count
    
    //给脚本执行权限,并改属主和属组为zabbix
    [root@20liuzhenchao ~]# chmod +x /scripts/check_process.sh
    [root@20liuzhenchao ~]# chown zabbix.zabbix /scripts/check_process.sh
    [root@20liuzhenchao ~]# ll /scripts/check_process.sh
    -rwxr-xr-x 1 zabbix zabbix 88 5月  24 17:20 /scripts/check_process.sh
    
    //测试脚本
    [root@20liuzhenchao ~]# /usr/bin/bash /scripts/check_process.sh postfix
    3
    
    //修改客户端配置文件 
    [root@20liuzhenchao ~]# vim /usr/local/etc/zabbix_agentd.conf
    #
    # Mandatory: no
    # Range: 0-1
    # Default:
    UnsafeUserParameters=1  //将此处“0”改为“1”,启用该功能
    UserParameter=check_process[*],bash /scripts/check_process.sh $1 //添加此行
    
    //重启zabbix_agentd服务,在服务端重启zabbix_server服务并在服务端验证能否获取key
    [root@zabbix ~]# zabbix_get -s 192.168.56.20 -k check_process[postfix]
    3

    2)在zabbix网页里创建监控项

    3)在zabbix网页里配置触发器动作(动作引用之前的)

    4)触发告警,测试

    [root@20liuzhenchao ~]# systemctl stop postfix

    二、日志监控

    1、环境说明

    环境IP要安装的应用
    服务器 192.168.56.23 lamp架构
    zabbix server
    zabbix agent
    客户端 192.168.56.20 zabbix agent

    2、项目要求

    利用zabbix对客户机192.168.56.20上的/tmp/zabbix_agentd.log日志进行监控

    3、监控配置

    此处脚本为python脚本,名字为log.py
    log.py说明
    作用:检查日志文件中是否有指定的关键字
    第一个参数为日志文件名(必须有,相对路径、绝对路径均可)
    第二个参数为seek position文件的路径(可选项,若不设置则默认为/tmp/logseek文件。相对路径、绝对路径均可)
    第三个参数为搜索关键字,默认为 Error
    

    1)客户端修改

    //修改配置文件
    
    [root@20liuzhenchao ~]# vim /usr/local/etc/zabbix_agentd.conf
    UserParameter=check_log[*],python /scripts/log.py $1 $2 $3 //添加此行
    
    //重启客户端zabbix_agentd
    [root@20liuzhenchao ~]# pkill zabbix
    [root@20liuzhenchao ~]# zabbix_agentd
    
    //在服务端检查验证配置
    [root@zabbix ~]# zabbix_get -s 192.168.56.20 -k check_log[/tmp/zabbix_agentd.log]
    1 //表示zabbix_agentd.log日志中有error,验证没问题
    
    [root@20liuzhenchao ~]# less /tmp/zabbix_agentd.log 
    zabbix_agentd [1990]: Error waiting for process with PID 1991: [10] No child processes4

    2)在网页上配置监控项

    3)在网页上配置触发器

    4)手动触发并测试

    [root@20liuzhenchao ~]# echo "faild" >> /tmp/zabbix_agentd.log




    
    
  • 相关阅读:
    Python if语句
    Pyhton数据类型总结
    Flask系列之自定义中间件
    Flask系列之蓝图中使用动态URL前缀
    python+Nginx+uWSGI使用说明
    python之threading.local
    python之偏函数
    Flask系列之源码分析(一)
    Python扩展之类的魔术方法
    Flask系列(十一)整合Flask中的目录结构(sqlalchemy-utils)
  • 原文地址:https://www.cnblogs.com/liuzhenchao/p/10916765.html
Copyright © 2011-2022 走看看