成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Spring Boot快速接入Prometheus監控

開發 前端
對于常見 Java 應用程序基本都是基于 Spring 開發,而 Spring 本身就是封裝和繼承做到特別好,而對于 Sring 監控也是一樣的,也是非常簡單,下面我以 SpringBoot 2.x 為例演示下對系統中所有接口以及中間件的監控。

最近跟幾個粉絲聊天吹水,說最近公司裁員嚴重,不僅裁掉了大部分的人,也裁掉了大部分的業務;之前公司有錢賺,什么產品都愿意做,無論行不行都會試一試,一堆沒有什么流量的系統都在線上跑著,但是沒有上級發話,一個也不敢停掉。站著資源不說,關鍵還得保證活著,基本就是運維人員要和系統同在,搞得我們這些運維苦不堪言。

公司高層領導突然變得雷厲風行,貌似是撐不下去了,不賺錢的業務開發人員全部裁掉,一個不留,對應的系統直接下線;運維人員只留下一部分,內部活水幾個開發人員過來,部門從此改名為 DevOps 團隊,大多數系統已經沒有了,云上資源迅速收縮了一半。日常瑣事基本沒了,以前 KPI 寫保證 xx 個系統穩定運行,現在沒得寫了,基本是多個人保證 1 個系統運行。沒什么辦法,領導發話,要精細化運營,不清楚有沒有用,先活下去再說。

但是他們大多數人都是運維,語言層面 python、golang、sql 運用還算可以,日常云原生常見組件一些 Prometheus 語法之類的東西都能夠熟練使用,但是有些服務壓根就沒有提供指標.... 對于抽象和封裝太完美 Java 應用系統真是不清楚怎么上手,更不知道如何添加監控,問一些開發人員,多數對于 Prometheus 指標沒有特別清晰的概念,侵入太多,就不愿意改,說來說去,只能看看 CPU、內存以及 nginx 上的 qps 和延遲。

如何為應用程序添加監控

之所以造成如上局面,主要是運維人員對于一些開發生態不了解導致的,其實對于常見 Java 應用程序基本都是基于 Spring 開發,而 Spring 本身就是封裝和繼承做到特別好,好到你根本不用了解他就可以在他的基礎上做開發,這就是 Crud 程序員盛行的原因。而對于 Sring 監控也是一樣的,也是非常簡單,下面我以 SpringBoot 2.x 為例演示下對系統中所有接口以及中間件的監控。

第一步添加一個 jar 依賴到應用程序中:

 <dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
</dependency>

添加配置項:

management.endpoints.web.exposure.include=prometheus
spring.application.name=spring-petclinic-compose
management.server.port=8091
management.metrics.tags.application=${spring.application.name}

啟動應用程序,訪問:http://127.0.0.1:8091/actuator/prometheus

圖片

所有指標都有了,只要有了指標,其它一切都好說了,只要采集到指標,計算好展示出來,超過閾值進行告警。

運行 Prometheus,并添加抓取配置:

scrape_configs:
- job_name: 'application'
metrics_path: '/actuator/prometheus'
static_configs:
- targets: ['application:8091']

添加查詢:

rate(http_server_requests_seconds_count[5m])

圖片圖片

其實到這里也就差不多了,我上次在群里也是跟網友這么說的,但是反饋說根本不行,服務跑不起來,為了防止出現類似問題,我這里給出了我的一個源碼 Demo 鏈接,只要 Java 開發環境配置好,導入到本地,就可以運行https://github.com/strictnerd/spring-petclinic-compose

目的達到了,運維人員到這里就可以止步了;如果是開發人員還可以繼續了解下如何自定義指標收集,具體代碼也已經上傳到 github 具體可以參考https://github.com/strictnerd/spring-petclinic-compose。

自定義指標

集成之后大家反饋的第一個問題就是指標太多,目前 io.micrometer?  基本進行常見 http、tomcat、jetty、kafka、cache、redis、JVM CPU MEM、GC、logback...等等監控,具體自行查看 Spring 官網介紹 https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#actuator.metrics

如何關閉所有指標,并打開想要的指標?

management.metrics.enable.all=false
management.metrics.enable.http=false
management.metrics.enable.jvm=true

如上配置,我可以關閉所有的配置,但是唯獨打開 jvm 的指標,如下所示:

圖片

這個自己根據需要進行監控指標采集和展示。

如何添加自己的指標維度

有些服務是隔離的,同一份代碼但是在不同的地區部署,這個底層庫已經留好了擴展結點,舉個例子,比如我們需要在各個指標中加入一個 region 維度,添加如下代碼即可,支持多個。

  @Bean
MeterRegistryCustomizer<MeterRegistry> metricsCommonTags() {
return registry -> registry.config().commonTags("region", "us-east-1");
}

圖片

這樣每個指標中就會多出一個維度。

如何對部分沒有監控的接口添加切面

雖然 io.micrometer 覆蓋了服務中的大多數場景,但是根據業務實際情況,肯定有組件覆蓋不到的地方,怎么辦?那就使用 Timed 自定義處理。

Timed 注解不會被 Spring 框架掃描,所以需要添加如下代碼:

@Bean
TimedAspect timedAspect(MeterRegistry registry) {
return new TimedAspect(registry);
}

在需要監控的代碼片段上添加注解:

圖片

查看指標:

圖片

總結

看完上面的介紹,你會發現簡單、簡單、還是 tmd 簡單,但是公司系統為什么沒有類似指標等可用性的監控。好聽點說是公司沒人推行此類技術;難聽點說,系統不重要,可有可無或者說即便出了問題也會不了了知。

責任編輯:趙寧寧 來源: 云原生技術愛好者社區
相關推薦

2022-05-18 08:32:05

服務監控Prometheus開源

2023-12-27 18:05:13

2020-12-01 08:32:12

Spring Boot

2020-11-20 08:15:40

Grafana + P

2023-12-28 08:01:17

SpringAPI數據

2025-04-09 11:35:00

MySQL數據庫監控

2025-07-02 07:33:02

Spring倒排索引分布式

2020-07-14 11:00:12

Spring BootRedisJava

2025-05-09 07:20:02

Spring數據庫檢索

2020-09-02 17:28:26

Spring Boot Redis集成

2024-09-27 08:25:47

2018-10-22 15:34:31

Spring Boo監控視化

2022-02-09 20:39:52

Actuator應用監控

2024-01-16 08:17:29

Mybatis驗證業務

2021-02-03 12:47:09

Spring Boot應用監控

2022-02-15 10:43:51

數據庫Druid連接池

2020-11-10 09:19:23

Spring BootJava開發

2023-07-27 08:53:44

2020-12-30 08:09:46

運維Prometheus 監控

2023-09-12 07:11:33

Prometheus聚合告警GPT
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品福利一区二区三区 | 亚洲视频在线看 | 精品一区二区不卡 | 日韩在线播放网址 | 亚洲一区二区三区久久久 | 国产综合精品一区二区三区 | 日韩福利电影 | 欧美日韩免费在线 | 国产精品一区二区av | av网站在线看 | 视频一区二区国产 | 亚洲精品国产一区 | 国产欧美三区 | 亚洲精品不卡 | 国产综合欧美 | 日本视频在线播放 | 亚洲一二三区精品 | 国精产品一品二品国精在线观看 | 99看片网| www.蜜桃av | www.操com| 99av成人精品国语自产拍 | 黄色亚洲网站 | 国产视频久久久 | 在线播放国产一区二区三区 | 欧美日韩成人 | 成人深夜福利网站 | 国产免费一级片 | 亚洲精品久久久久久久久久久 | 亚洲国产精品久久久久久 | 亚洲 欧美 激情 另类 校园 | 91免费版在线 | 国产精品一区一区三区 | 美女视频一区 | 97精品超碰一区二区三区 | 久久高清 | 久久亚洲欧美日韩精品专区 | 亚洲视频在线观看 | www.久| 91精品国产乱码久久久久久 | 亚洲一区毛片 |