目前市面上的前端監控系統,可能是記錄資源加載時長、系統拋錯、統計埋點、UV/PV...
對開發人員來講就是嵌入監控js腳本,監控的前提是:該監控腳本能正常加載並執行
那麼問題就來了,假如某個站點CDN、DNS出現異常,監控腳本徹底沒機會加載(更不用說運行了)
站點Owner可能很長時間都不知道本身的網站掛了?!監控服務形同虛設...html
本文提到的監控改良,即是爲解決此痛點前端
Q: 假如站點DNS出現問題,請求根本打不到站點,監控腳本沒法加載,要怎麼應對這種狀況呢?A: 人肉運維啊,找我的天天盯着,5分鐘刷下頁面,看網站正不正常,不就好了嘛!
A: 咳,基本思路其實就是這樣,不過把人肉運維改爲Puppeteer,作個定時任務,每5分鐘去跑一下監控站點,若是發現站點白屏則立刻警報(短信通知),能夠算是監控的最終兜底策略git
系統具體設計思路,代碼:https://github.com/zhentaoo/h... github
開發時截圖(Atom默認主題+ZSH)mongodb
這裏爲了簡單,我直接用了ThinkJS框架生成Restful API,你們有興趣也能夠看下使用方法,簡單易上手npm
npm install -g thinkjs@2
thinkjs new hawk-eye
thinkjs controller home/monitor -r
thinkjs controller home/monitorerr -r
這裏就不進行mongodb的安裝教學了,若是不習慣命令行的同窗,推薦使用robomongo客戶端api
關於Puppeteer,也已經研究、試水了一段時間,多數應用場景也都有考慮,並在github上寫了些不成熟的項目和思路
接下來我可能會試水其餘東西,或者用它搞點事
但願各位看官能夠結合本身的需求/業務場景,充分挖掘Puppeteer功能
有興趣的話加羣討論,?restful