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

August 7, 2018 · 日常 · 技巧

上次写过「一个“反人类”解析记录变更需求的实现」 ,当中实现的是一个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

今月份的水文结束🤗

标签:状态码,监控,shell

最后编辑于:2018/08/07 15:00

有 10 个关于文章的看法啦
  1. 千里之外不离开。

    2018-11-21 11:00 回复
  2. 你那个office 365帐号还有没有?

    2018-10-15 09:22 回复
    1. Kay Kay

      有吧,我得找找,最近都没有时间

      2018-10-17 22:22 回复
      1. 发到我邮箱,可以不?

        2018-10-19 11:24 回复
        1. Kay Kay

          已发

          2018-10-19 13:30 回复
          1. 已收到,thks

            2018-10-19 15:09
  3. 阅非APP,一款每天可以分红APP,赶快加入享受每天分红吧!

    2018-10-09 19:15 回复
  4. 状态监控

    2018-08-26 21:33 回复
  5. 精准到1秒内了可还行

    2018-08-13 11:14 回复
    1. Kay Kay

      严格意义上来说,并不是一分钟,因为它同时支持很多个站点的监控,然后任务并不是并发的。⌇●﹏●⌇

      2018-08-16 20:16 回复

❤评论的人最可爱