一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

基于Sentinel實現(xiàn)歷史監(jiān)控數(shù)據(jù)回看

jf_ro2CN3Fa ? 來源:稀土掘金 ? 2023-11-27 14:34 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

眾所周知,Sentinel 對監(jiān)控數(shù)據(jù)的做法是定時落盤在客戶端,然后 Sentinel 提供接口去拉取日志文件。所以 Sentinel 在監(jiān)控數(shù)據(jù)上理論上是最少存儲 1 天以上的數(shù)據(jù);然而作為控制臺展示,則僅在內存中聚合 5 分鐘以內的統(tǒng)計數(shù)據(jù),不進行持久化。

官方鼓勵大家對 Dashboard 進行改造實現(xiàn)指標信息的持久化,并從其它的存儲中(如 RDBMS、時序數(shù)據(jù)庫等)拉取的監(jiān)控信息,包括實時的和歷史的數(shù)據(jù)。

基于此,結合公司內部的需求,我們自行改造并實現(xiàn)了監(jiān)控指標的持久化。本文把一些實現(xiàn)過程分享給大家!

Sentinel 是阿里巴巴開源的流量治理平臺,提供了 流量控制、熔斷降級、系統(tǒng)負載保護、黑白名單訪問控制 等功能。在實際的生產(chǎn)需求中,筆者進行了部分擴展:

流控規(guī)則持久化:適配 Apollo、Nacos、Zookeeper

監(jiān)控數(shù)據(jù)持久化:適配 InfluxDB、Kafka、Elasticsearch

監(jiān)控面板優(yōu)化:新增時間控件,允許在任意時刻內查詢監(jiān)控數(shù)據(jù)。

演示圖例

改造前

3ae464bc-8cc5-11ee-939d-92fbcf53809c.jpg

改造后

3af51960-8cc5-11ee-939d-92fbcf53809c.jpg

快捷時間選擇。

3b0c621e-8cc5-11ee-939d-92fbcf53809c.jpg

自定義時間選擇。

3b17bc22-8cc5-11ee-939d-92fbcf53809c.jpg

如何構建

本項目默認使用 Maven 來構建,最快的使用方式是把我給你的代碼導入的開發(fā)工具中?;蛟陧椖康母夸泩?zhí)行 mvn install -T 4C 完成本項目的構建。

如何啟動

IDEA 啟動

本項目默認不依賴外部組件,可以直接啟動運行。

在項目目錄下運行 mvn install(如果不想運行測試,可以加上 -DskipTests 參數(shù))。

進入 sentinel-dashboard 目錄,執(zhí)行 mvn spring-boot:run 或者啟動 SentinelApplication 類。運行成功的話,可以看到 Spring Boot 啟動成功的界面。

在實際的生產(chǎn)需求,Sentinel 保存的規(guī)則和監(jiān)控是需要持久化落盤的,因此,您可以在 sentinel-dashboard/src/main/resources/application.properties 接入外部組件。

規(guī)則存儲類型:memory(默認)、nacos(推薦)、apollo、zookeeper

#規(guī)則存儲類型,可選項:memory(默認)、nacos(推薦)、apollo、zookeeper
sentinel.rule.type=nacos
#Nacos存儲規(guī)則,如果您設置了sentinel.metrics.type=nacos,需要調整相關配置
sentinel.rule.nacos.server-addr=localhost:8848
sentinel.rule.nacos.namespace=demo
sentinel.rule.nacos.group-id=sentinel
sentinel.rule.nacos.username=nacos
sentinel.rule.nacos.password=nacos
#Apollo存儲規(guī)則,如果您設置了sentinel.metrics.type=apollo,需要調整相關配置
sentinel.rule.apollo.portal-url=http://localhost:10034
sentinel.rule.apollo.token=
sentinel.rule.apollo.env=
#Zookeeper存儲規(guī)則,如果您設置了sentinel.metrics.type=zookeeper,需要調整相關配置
sentinel.rule.zookeeper.connect-string=localhost:2181
sentinel.rule.zookeeper.root-path=/sentinel_rule

監(jiān)控存儲類型:memory(默認)、influxdb(推薦)、elasticsearch

#監(jiān)控存儲類型,可選項:memory(默認)、influxdb(推薦)、elasticsearch
sentinel.metrics.type=memory
#InfluxDB存儲監(jiān)控數(shù)據(jù),如果您設置了sentinel.metrics.type=influxdb,需要調整相關配置
influx.url=http://localhost:8086/
influx.token=UfgaW37A93PkncmJum25G7M2QkBg6xqqjGthh-o-UIVIynC_-Q7RFWlTtEpMqhGLCuAsX64k3Isc2uN33YgElw==
influx.org=sentinel
influx.bucket=sentinel
influx.log-level=NONE
influx.read-timeout=10s
influx.write-timeout=10s
influx.connect-timeout=10s
#Elasticsearch存儲監(jiān)控數(shù)據(jù),如果您設置了sentinel.metrics.type=elasticsearch,需要調整相關配置
sentinel.metrics.elasticsearch.index-name=sentinel_metric
spring.elasticsearch.rest.uris=http://localhost:9200
spring.elasticsearch.rest.connection-timeout=3000
spring.elasticsearch.rest.read-timeout=5000
spring.elasticsearch.rest.username=
spring.elasticsearch.rest.password=
#監(jiān)控數(shù)據(jù)存儲緩沖設置,降低底層存儲組件寫入壓力。可選項:none(默認不啟用)、kafka(推薦)
sentinel.metrics.sender.type=none
#Kafka存儲監(jiān)控數(shù)據(jù),如果您設置了sentinel.metrics.sender.type=kafka,需要調整相關配置
sentinel.metrics.sender.kafka.topic=sentinel_metric
spring.kafka.producer.bootstrap-servers=localhost:9092
spring.kafka.producer.batch-size=4096
spring.kafka.producer.buffer-memory=40960
spring.kafka.producer.key-serializer=org.apache.kafka.common.serialization.StringSerializer
spring.kafka.producer.value-serializer=org.apache.kafka.common.serialization.StringSerializer

鏡像啟動

本項目已發(fā)布到 Docker Hubhttps://hub.docker.com/repository/docker/shiyindaxiaojie/sentinel-dashboard,請執(zhí)行參考命令運行。

dockerrun-p8090:8090--name=sentinel-dashboard-dshiyindaxiaojie/sentinel-dashboard

如何部署

FatJar 部署

執(zhí)行 mvn clean package 打包成一個 fat jar,參考如下命令啟動編譯后的控制臺。

java-Dserver.port=8080
-Dsentinel.rule.nacos.server-addr=localhost:8848
-Dsentinel.rule.nacos.namespace=demo
-Dsentinel.rule.nacos.group-id=sentinel
-Dsentinel.metrics.type=influxdb
-Dinflux.url=http://localhost:8086
-Dinflux.token=XXXXXX
-Dinflux.org=sentinel
-Dinflux.bucket=sentinel
-jartarget/sentinel-dashboard.jar

Docker 部署

本項目使用了 Spring Boot 的鏡像分層特性優(yōu)化了鏡像的構建效率,請確保正確安裝了 Docker 工具,然后執(zhí)行以下命令。

dockerbuild-fdocker/Dockerfile-tsentinel-dashboard:{tag}.

Helm 部署

以應用為中心,建議使用 Helm 統(tǒng)一管理所需部署的 K8s 資源描述文件,請參考以下命令完成應用的安裝和卸載。

helminstallsentinel-dashboard./helm#部署資源
helmuninstallsentinel-dashboard#卸載資源

如何接入

為了減少客戶端集成的工作,您可以使用 eden-architect 框架,只需要兩步就可以完成 Sentinel 的集成。

引入 Sentinel 依賴


io.github.shiyindaxiaojie
eden-sentinel-spring-cloud-starter

開啟 Sentinel 配置

spring:
cloud:
sentinel:#流量治理組件
enabled:false#默認關閉,請按需開啟
http-method-specify:true#兼容RESTful
eager:true#立刻刷新到Dashboard
transport:
dashboard:localhost:8090
datasource:
flow:
nacos:
server-addr:${spring.cloud.nacos.config.server-addr}
namespace:${spring.cloud.nacos.config.namespace}
groupId:sentinel
dataId:${spring.application.name}-flow-rule
rule-type:flow
data-type:json






審核編輯:劉清

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • RDBMS
    +關注

    關注

    0

    文章

    9

    瀏覽量

    5959
  • nacos
    +關注

    關注

    0

    文章

    10

    瀏覽量

    255

原文標題:基于 Sentinel 實現(xiàn)歷史監(jiān)控數(shù)據(jù)回看

文章出處:【微信號:芋道源碼,微信公眾號:芋道源碼】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Sentinel擴展性設計機制分析

    Sentinel 提供多樣的 SPI 接口用于提供擴展的能力。用戶可以在用同一個 sentinel-core 的基礎上自行擴展接口實現(xiàn),從而可以方便地給 Sentinel 添加自定義的
    的頭像 發(fā)表于 10-26 10:03 ?4370次閱讀

    基于Sentinel自研組件的系統(tǒng)限流、降級、負載保護最佳實踐探索

    景 :Sentinel 承接了阿里巴巴 近 10 年的雙十一 大促流量的核心場景,例如秒殺(即突發(fā)流量控制在系統(tǒng)容量可以承受的范圍)、消息削峰填谷、集群流量控制、實時熔斷下游不可用應用等。 ? 完備的實時監(jiān)控Sentinel
    的頭像 發(fā)表于 09-25 11:19 ?2265次閱讀
    基于<b class='flag-5'>Sentinel</b>自研組件的系統(tǒng)限流、降級、負載保護最佳實踐探索

    開源分析和落地方案—Sentinel

    作者:京東物流 劉達 一、Sentinel是什么? Sentinel是從阿里技術體系內誕生并由相關社區(qū)從微服務到云原生階段持續(xù)孵化的流量治理組件,在服務熔斷限流以及秒級/分鐘級監(jiān)控方面提供了開箱即用
    的頭像 發(fā)表于 11-08 10:10 ?1512次閱讀
    開源分析和落地方案—<b class='flag-5'>Sentinel</b>篇

    求助,labview數(shù)據(jù)存儲和歷史數(shù)據(jù)查詢功能應該如何做課程設計?

    純labview小白,正在做聲卡聲音信號采集的課程設計,要求有數(shù)據(jù)存儲和歷史數(shù)據(jù)查詢功能,搞不懂如何歷史數(shù)據(jù)查詢,都將數(shù)據(jù)存儲在了文件夾,在文件夾直接
    發(fā)表于 04-15 09:32

    歷史未來SCSI接口簡介

    歷史未來 SCSI接口簡介SCSI (Small Computer System Interface/小型計算機系統(tǒng)接口)是一種通用接口,但其憑借著擴展性好、性能優(yōu)越、可靠性高等特點,被廣泛應用
    發(fā)表于 11-13 22:00

    GPRS RTU燃氣數(shù)據(jù)采集監(jiān)控方案設計分享 希望大家提供寶貴意

    燃氣數(shù)據(jù)采集監(jiān)控方案設計 關鍵字:燃氣監(jiān)控、遠程監(jiān)控、GPSR、RTU、數(shù)據(jù)采集、低功耗、自動化、一體化 案例背景燃氣遠程
    發(fā)表于 09-06 17:48

    Labview讀取ACCESS數(shù)據(jù)數(shù)據(jù)生成歷史曲線

    `現(xiàn)在想做一個“歷史數(shù)據(jù)曲線”功能:讀取ACCESS數(shù)據(jù)庫(多列數(shù)據(jù),含時間),用曲線顯示出來(X軸顯示歷史時間,Y軸顯示各列數(shù)據(jù))目前
    發(fā)表于 08-11 12:39

    求助:labview如何實現(xiàn)歷史數(shù)據(jù)檢索?

    畢設救急:labview歷史數(shù)據(jù)檢索如何實現(xiàn)?
    發(fā)表于 05-14 10:35

    基于LabWindowsCVI的數(shù)據(jù)采集與監(jiān)控系統(tǒng)的設計與實現(xiàn)

    基于LabWindowsCVI的數(shù)據(jù)采集與監(jiān)控系統(tǒng)的設計與實現(xiàn)
    發(fā)表于 05-06 08:40

    EAST低溫歷史數(shù)據(jù)可視化軟件設計與實現(xiàn)

    在EAST低溫遠程監(jiān)控系統(tǒng)中,需提供對EAST低溫控制歷史數(shù)據(jù)的分析處理和可視化。為此給出EAST低溫歷史數(shù)據(jù)可視化軟件的設計與實現(xiàn),詳細說明了基于winsock網(wǎng)絡傳輸和多線程技術的
    發(fā)表于 02-22 16:11 ?17次下載

    萊姆電子推出新一代Sentinel產(chǎn)品Sentinel 3+

    LEM萊姆電子宣布推出經(jīng)過驗證的新一代Sentinel 產(chǎn)品Sentinel 3+,可對不間斷電源(UPS) 系統(tǒng)中的后備電池健康狀態(tài)進行連續(xù)監(jiān)測
    發(fā)表于 04-08 10:10 ?1429次閱讀

    Sentinel如何通過限流實現(xiàn)服務的高可用性

    ,實現(xiàn)實時監(jiān)控,精確度達秒級。三、Sentinel 基于 Dubbo的最佳實踐Dubbo 接入 Sentinel后,可通過對Dubbo核心模塊中的服務提供方和服務消費方的限流來進一步提
    發(fā)表于 08-20 16:19 ?420次閱讀

    Sentinel 如何通過勻速請求和冷啟動來保障服務的穩(wěn)定性

    摘要:?這是圍繞 Sentinel 的使用場景、技術對比和實現(xiàn)、開發(fā)者實踐等維度推出的系列文章的第二篇。 第一篇:Dubbo 的流量防衛(wèi)兵 | Sentinel如何通過限流實現(xiàn)服務的高
    發(fā)表于 08-28 14:09 ?556次閱讀

    UltraSoC推出CAN Sentinel增強汽車的網(wǎng)絡安全性

    UltraSoC近日宣布推出CAN Sentinel,從而推動其汽車網(wǎng)絡安全產(chǎn)品實現(xiàn)重要邁進。
    發(fā)表于 02-25 11:48 ?1454次閱讀

    Sentinel高可用流量管理框架

    Sentinel.zip
    發(fā)表于 04-25 09:24 ?0次下載
    <b class='flag-5'>Sentinel</b>高可用流量管理框架