阿里巴巴 Sentinel + InfluxDB + Chronograf 實現(xiàn)監(jiān)控大屏
前言
在上一篇推文中,我們使用時序數(shù)據(jù)庫 InfluxDb
做了流控數(shù)據(jù)存儲,但是數(shù)據(jù)存儲不是目的,分析監(jiān)控預警才是最終目標,那么問題來了,如何更好的實現(xiàn)呢?用過阿里巴巴 Sentinel 控制臺的小伙伴,是不是覺得它的控制臺丑爆了,而且只有短短的五厘米,顯然不能滿足大部分人或者場景的使用。
架構(gòu)
工具
- sentinel-dashboard(控制臺,收集數(shù)據(jù))
- Influxdb(時序數(shù)據(jù)庫,存儲數(shù)據(jù))
- Chronograf (展示控制臺,顯示數(shù)據(jù)并實現(xiàn)預警)
安裝
Sentinel 控制臺 和 時序數(shù)據(jù)庫 Influxdb 的安裝方式前面已經(jīng)聊過,這里不再贅述,簡單說下 Chronograf 展示控制臺的安裝方式,這里推薦使用 Docker 安裝方式。
$ docker run -p 8888:8888 \ -v $PWD:/var/lib/chronograf \ chronograf
安裝成功以后,瀏覽器訪問 http://ip:8888
你應該看到一個歡迎頁面:
然后,自行配置數(shù)據(jù)源,根據(jù)業(yè)務場景組裝監(jiān)控大屏。
大屏
這里根據(jù) Sentinel 限流組件采集的數(shù)據(jù),組裝了一個簡單的監(jiān)控大屏,可以監(jiān)控歷史訪問總量、最近一小時的訪問量、限流數(shù)以及最近幾分鐘或者幾小時的訪問曲線等等,相比于阿里演示版是不是瞬間高大上的些許。
總訪問量
SELECT SUM("successQps") AS "總訪問量" FROM "sentinel_log"."autogen"."sentinelInfo"
最近一小時訪問量
SELECT SUM("successQps") AS "訪問量" FROM "sentinel_log"."autogen"."sentinelInfo" WHERE TIME > NOW() - 1h
最近一小時限流數(shù)
SELECT SUM("blockQps") AS "限流數(shù)" FROM "sentinel_log"."autogen"."sentinelInfo" WHERE time > now() - 1h
最近一小時異常數(shù)
SELECT SUM("exceptionQps") AS "異常數(shù)" FROM "sentinel_log"."autogen"."sentinelInfo" WHERE time > now() - 1h
最近一小時的訪問趨勢圖(秒級別)
SELECT SUM("successQps") AS "訪問量" FROM "sentinel_log"."autogen"."sentinelInfo" WHERE time > now() - 1h GROUP BY time(1s)
最近12小時資源訪問排名
SELECT SUM("successQps") AS "成功qps", SUM("blockQps") AS "限流qps" FROM "sentinel_log"."autogen"."sentinelInfo" WHERE time > now() - 12h GROUP BY resource
預警
后期我們在 Chronograf 中接入 Kapacitor ,Chronograf會自動打開該Configure Alert Endpoints部分,Kapacitor支持多個警報端點/事件處理程序。有興趣的小伙伴也可以在 Sentinel 控制臺中根據(jù)流控數(shù)據(jù)進行更智能化的設置,比如根據(jù)限流失敗數(shù)以及機器指標動態(tài)調(diào)整流控規(guī)則。
小結(jié)
有了她,小哥哥、小姐姐們再也不用擔心凌晨一點的鬧鐘了,是不是很爽?以上只是冰山一角,目前我們上線的監(jiān)控系統(tǒng)平臺,通過各種第三方組件庫(Telegraf、InfluxDB、Chronograf、Kapacitor、Grafana、Prometheus、Consul、Elasticsearch、Kibana
),接入了 1000 臺服務器實時監(jiān)控,200個監(jiān)控大屏,上千個監(jiān)控指標,每日處理成噸的數(shù)據(jù)。是不是很吊???我唧唧都佩服我自己的想象力。
源碼
https://gitee.com/52itstyle/sentinel-dashboard
參考
https://hub.docker.com/_/chronograf
總結(jié)
以上所述是小編給大家介紹的阿里巴巴 Sentinel + InfluxDB + Chronograf 實現(xiàn)監(jiān)控大屏,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!
相關(guān)文章
spring cloud gateway全局過濾器實現(xiàn)向request header中放數(shù)據(jù)
這篇文章主要介紹了spring cloud gateway全局過濾器實現(xiàn)向request header中放數(shù)據(jù)的操作,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-07-07SpringBoot加載多個配置文件實現(xiàn)dev、product多環(huán)境切換的方法
這篇文章主要介紹了SpringBoot加載多個配置文件實現(xiàn)dev、product多環(huán)境切換,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-03-03

基于java中stack與heap的區(qū)別,java中的垃圾回收機制的相關(guān)介紹