当前位置: 首页 > 网站建设 > 使用PHP Server Monitor自建网络监控

使用PHP Server Monitor自建网络监控

发布于:2017-10-17 最后更新:2021-1-3 网站建设 20条评论 16,772 views
本站提供Linux服务器运维,自动化脚本编写等服务,如有需要请联系博主微信:xiaozme

PHP Server Monitor是使用PHP开发的网络监控工具,用于检查您的网站和服务器是否已启动并正常运行,提供了友好的Web的用户界面,方便管理与查看,当服务器宕机会自动发送邮件或短信通知。

PHP Server Monitor支持Ping、Tcping、网站等监控,由于需要使用crontab等作为定时任务,推荐使用VPS进行安装。为了监测国外VPS的网络变化,小z在自己的《占美小主机》中安装了PHP Server Monitor,可以直观的看出VPS网络情况变化,非常方便。

安装

GitHub下载地址:https://github.com/phpservermon/phpservermon
访问上面的地址下载最新版本,解压至您站点根目录,访问http://youdomain.com/install.php根据提示填写数据库信息完成安装。如果不能写入配置文件,可以手动将数据库信息添加到config.php做法如下

#复制配置文件
cp config.php.sample config.php
#修改配置文件
vi config.php
#填写数据库信息
define('PSM_DB_PREFIX', 'monitor_');#表前缀,保持默认
define('PSM_DB_USER', 'status');#数据库用户
define('PSM_DB_PASS', 'xxxxxxx');#数据库密码
define('PSM_DB_NAME', 'status');#数据库用户名
define('PSM_DB_HOST', 'localhost');#数据库连接地址
define('PSM_DB_PORT', '3306');#数据库连接端口,一般默认3306
define('PSM_BASE_URL', 'http://status.xiaoz.org');#网站地址

官方安装文档:http://docs.phpservermonitor.org/en/latest/install.html

添加定时任务

网站安装好了还没有完毕,还得添加采集任务,否则无法获取数据。以Linux系统(CentOS)为例,Linux一般使用crontab作为定时任务,方法如下:

#安装crontab
yum -y install crontabs
#添加定时任务
crontab -e
#计划任务中添加如下内容,请根据实际情况修改路径
*/5 * * * * /usr/local/php/bin/php /data/wwwroot/status.xiaoz.org/cron/status.cron.php
#重载crontab
service crond reload
  • 查看PHP路径方法:which php,然后版上面的/usr/local/php/bin/php改成自己PHP路径
  • status.cron.php为PHP Server Monitor脚本地址,请填写绝对路径
  • 需要开启`exec`函数,否则ping将无法正常使用。

设置中文

是的,PHP Server Monitor支持多种语言,可以在后台设置中修改为中文,如下截图。添加监控、SMTP设置什么的就比较简单了,大家可自行研究。

后台部分截图

总结

PHP Server Monitor配置非常简单,功能也基本够用,代码是开源的,可以很方便的集成或二次开发,有兴趣的童鞋可以研究下。xiaoz安装PHP Server Monitor的目的主要是为了监控国外VPS网络变化,后期会每周或每月送出监控报告。如果您觉得这些功能还无法满足需求可以试试更加强大的Smokeping,不过配置起来就有点麻烦了。

官方地址:http://www.phpservermonitor.org/


20 条评论 “使用PHP Server Monitor自建网络监控”

  1. JQKing说道:

    用一台主机就能监控很多台服务器吗

    1. xiaoz说道:

      可以的,你可以安装试一下。

  2. 说道:

    这个邮箱怎么设置呢?

    1. xiaoz说道:

      后台邮件发送设置,配置STMP信息。

      1. asas说道:

        你好,我配置了smtp信息后还是无法发送,报错the following from address failed:***:called mail() without being connected

        1. xiaoz说道:

          你这没有设置成功或者设置了未启用吧,看报错还是提示使用的mail()函数

  3. 电脑天空说道:

    程序很好,只是暂时用不到。

  4. 套图网说道:

    不止一次的来,不止一次的去,来来去去,这就是这个博客的魅力!

  5. 挖站否说道:

    这个程序不错。。

  6. 优化狮说道:

    这东西不错,站长必备,谢谢分享,马航去试试

    1. xiaoz说道:

      用来监控国外VPS网络还是可以的

  7. Mr.Li说道:

    还在用监控宝之类的。

  8. owen说道:

    试了下,监控数据似乎有点不准,延迟没超过 1s,在离线还阔以~~

    1. xiaoz说道:

      延迟应该是准确的,不过单位是s,这个有点坑,比如0.056s,其实延迟就是56ms

    2. xiaoz说道:

      超过1s的话,延迟就是1000ms以上了,这个就吓人了。

      1. owen说道:

        原来如此,学习了

        1. asas说道:

          你的使用了邮件功能吗?

          1. xiaoz说道:

            使用了啊,后台可以设置SMTP

      2. asas说道:

        可以加你qq吗?我一直设置邮件都报错,我看他设置界面没什么太难的,但就是不成功,可以帮忙看下吗?

  9. xiaomo说道:

    感谢,受教了

发表评论

邮箱地址不会被公开。 必填项已用*标注