PHP Server Monitor是一款使用PHP开发的网络监控工具,可以从远程检测您指定的网站、VPS和服务器是否正常运行,可监控在线率,延迟等指标,同时PHP Server Monitor也提供友好的Web用户界面,方便管理与查看,并且当被监控服务器宕机时PHP Server Monitor会自动发送邮件或短信通知。PHP Server Monitor支持Ping、Tcp、网站等监控,使用crontab等作为定时任务,所以使用VPS或者服务器进行安装,部分虚拟主机也支持,比如CP面板的主机。
使用lnmp或者宝塔一键安装,安装很方便。
#复制配置文件
cp config.php.sample config.php
#修改配置文件
vi config.php
#填写数据库信息
define('PSM_DB_HOST', 'localhost'); #数据库连接地址
define('PSM_DB_PORT', '3306'); #数据库连接端口,一般默认3306
define('PSM_DB_NAME', 'status'); #数据库用户名
define('PSM_DB_USER', 'status'); #数据库用户
define('PSM_DB_PASS', 'xxxxxxx'); #数据库密码
define('PSM_DB_PREFIX', 'monitor_'); #表前缀,保持默认
define('PSM_BASE_URL', 'http://www.xxx.com');#网站地址
网站程序安装好后,还需要添加定时执行的任务,否则无法采集数据。以CentOS为例,Linux一般使用crontab作为定时任务,方法如下:
#安装crontab
yum -y install crontabs
#添加定时任务
crontab -e
#计划任务中添加如下内容,请根据实际情况修改路径
*/5 * * * * /usr/bin/php /www/wwwroot/www.xxx.com/cron/status.cron.php
#重载crontab
service crond reload
查看PHP路径方法:which php,然后版上面的/usr/local/php/bin/php改成自己PHP路径
status.cron.php为PHP Server Monitor脚本地址,请填写绝对路径
#! /bin/bash
php /www/wwwroot/www.xxx.com/cron/status.cron.php
PHP Server Monitor支持多种语言,可以在后台设置中修改为中文,如下截图。添加监控、SMTP设置什么的就比较简单了,大家可自行研究。
PHP Server Monitor配置非常简单,功能也基本够用,代码是开源的,可以很方便的集成或二次开发。
同类程序还有监控功能更为强大的Smokeping,配置稍微麻烦,可以自行研究。
如有更多同类,请大家一起分享。