shell 脚本 监测 php脚本是否在执行!

#! /bin/bash
while [ true ] 
        do 
                pro=`ps -ef | grep ""sendEmailRedis | grep -v 'grep' | wc -l`
                #过滤出目标进程信息,如果pro为空串说明目标进程未运行 
                #反向过滤掉grep进程 和 本进程信息, 因为这两个进程信息中包含目标进程的名字 
                if [ "$pro" -eq 0 ]
                then 
                        echo "程序未启动,重新启动程序" 
                        /www/server/php/56/bin/php  /www/wwwroot/www.lovelywolf.com/public/index.php sendEmailRedis & #重新启动指定程序 
                else 
                        echo "程序正在运行..." 
                fi 
        sleep 5 
done

然后执行后台挂起 执行脚本

nohup sh monitor_email.sh &

 

### Zabbix 中使用 Shell 脚本 #### 启用自定义监控功能 为了在Zabbix中利用Shell脚本执行特定的监控任务,在Zabbix Agent的配置文件(通常位于`/etc/zabbix/zabbix_agentd.conf`)里需要开启UserParameter这一选项来支持用户自定义键值。这允许管理员向Zabbix agent添加新的检查项目,从而可以调用外部命令或脚本获取数据[^3]。 ```bash # 在zabbix_agentd.conf中加入如下行以启动自定义参数 UnsafeUserParameters=1 ``` #### 创建并测试Shell脚本 对于想要监测百度是否正常的服务可用性场景下,可以通过编写简单的PHP或者Shell脚本来完成HTTP请求,并返回状态码给Zabbix server作为健康指标的一部分。下面是一个基于curl工具的小型Shell脚本例子用于探测网站响应情况: ```bash #!/bin/bash url="http://www.baidu.com" response=$(curl -o /dev/null --silent --head --write-out '%{http_code}\n' "$url") echo $response if [ $response -eq 200 ]; then echo "Website is up and running." else echo "Error occurred, website returned HTTP status code: ${response}" fi exit $response ``` 此脚本会尝试访问指定URL并将HTTP响应代码打印出来;如果返回的状态码不是200,则认为该站点不可达[^1]。 #### 将Shell脚本集成到Zabbix Web界面 一旦创建好了上述类型的脚本,下一步就是在Zabbix前端设置相应的监控项(Item),以便定期收集由这些脚本产生的输出结果。具体操作是在Web UI中的相应位置输入之前设定好的Key名称以及路径指向本地磁盘上保存的实际可执行程序的位置。 #### 设置告警机制 除了主动轮询式的性能统计外,还可以借助于AlertScriptsPath配置项让Zabbix能够在满足某些条件时触发预设的动作——比如发送邮件通知相关人员处理问题。这里提到的例子是放置了一个名为`mail.sh`的通知脚本至`/etc/zabbix/alertscripts/`目录内,它会在接收到事件详情后负责向外发出警告信息[^2]。 #### 自动化报警流程 更进一步地讲,当某个阈值被跨越或者其他异常状况发生之时,Zabbix能够即时激活预先编写的Shell脚本来自动生成多样化的警示手段,如通过API接口对接第三方平台推送消息或是控制物理设备做出反应等行为都是可行的选择之一[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值