精准进行批量站点状态监控

上次写过「一个“反人类”解析记录变更需求的实现」 ,当中实现的是一个Nginx站点状态的监控,如果线路down了,自动切换DNS解析记录。

而假如并不需要实时的线路切换,只是需要监控各个服务(或者线路)的访问状态。而利用阿里云等第三方的站点监控往往会不精准,或者说告警不敏感(毕竟免费的站点监控大部分都是5分钟的频率) 这里有几个关键点来判断站点的状态

  • http状态码
  • http连接时间

我们可以做到1s内进行多次的进行http连接并记录,分析这些状态来判定线路是否OK。

那么,这个脚本拿去用吧(仅供参考)

如何食用? 安装依赖httpie:

  • Ubuntu

    sudo apt-get install httpie

  • Centos

    pip3 install httpie

set_env函数内修改:

  1. 根据情况设定超时时间
  2. 监控工作文件夹设定,存放站点列表以及监控日志
  3. 方糖api的key
  4. 修改server.list文件,将自己需要监控的站点全部放进这个文件,一行一个站点

运行脚本

chmod +x webstatus.sh

可以直接

bash webstatus.sh

当然推荐使用pm2守护一下

pm2 start webstat

今月份的水文结束🤗