V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cs5117155
V2EX  ›  PHP

实现一个简易的接口预警系统有什么好方式

  •  
  •   cs5117155 · 129 天前 · 2116 次点击
    这是一个创建于 129 天前的主题,其中的信息可能已经有所发展或是发生改变。

    我是一个 web 方。硬件会每隔 30s 就发送一次心跳(curl ) GET 的方式到我 web 网站。 目前我想记录每个设备编号发送的心跳是否稳定,是否有时候长达两分钟也没有发送心跳。 或者请求我系统某些系统 api 出错了。 然后我 web 系统发出一个预警,有什么好的方式实现吗

    16 条回复    2021-10-17 22:49:11 +08:00
    xuanbg
        1
    xuanbg   129 天前
    发邮件,发短信,发钉钉消息
    Views
        2
    Views   129 天前
    可以加一个消息中间件,由消息中间件判断,如果请求正常就转发到 web,如果不正常就发邮件
    gouki
        3
    gouki   129 天前
    曾经偷懒过,分了两部走
    1 、API (硬件请求的网址)里用 redis 的 incr 。一个 API 一个 KEY:HINCRBY key date 1
    2 、你可以 crontab 来每 10 秒运行一下看每个 KEY,每个 DATE 是否正常( 今天的秒数 / 30 是否 = 你的值)

    这个是比较偷懒的方法了
    ccde8259
        4
    ccde8259   129 天前 via iPhone
    Prometheus
    ericgui
        5
    ericgui   129 天前
    时序数据库?
    siweipancc
        6
    siweipancc   129 天前 via iPhone
    redis 有个过期通知,订阅单个 key 的 2 分钟过期通知即可,但是需要在配置文件修改,默认是不开启的。
    wellsc
        7
    wellsc   129 天前
    prometheus alertmanager
    lniwn
        8
    lniwn   129 天前
    @gouki 3 、检测到异常后通知开发人员,推荐 Bark 、Server 酱、钉钉
    kekxv
        9
    kekxv   129 天前 via iPhone
    把手机号码放在页面显眼的地方🐶
    shiny
        10
    shiny   129 天前
    量少的话,直接用现成的云监控
    009694
        11
    009694   129 天前 via Android
    (单纯只依赖语言自带库的话 py 我会选择用 asyncio
    ForkNMB
        12
    ForkNMB   127 天前
    redis 过期时间不靠谱 还不如 zset+定时器
    securityCoding
        13
    securityCoding   127 天前 via Android
    消息队列延时消息
    cs5117155
        14
    cs5117155   127 天前
    @wellsc 这个觉得用起来比较复杂吧,维护成本大
    Aluhao
        15
    Aluhao   116 天前
    整个 Telegram 机器人,给自己推送消息。
    win7pro
        16
    win7pro   44 天前
    整个 喵提醒
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   1313 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 23:40 · PVG 07:40 · LAX 15:40 · JFK 18:40
    ♥ Do have faith in what you're doing.