成人免费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數據庫監控

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驗證業務

2022-02-15 10:43:51

數據庫Druid連接池

2021-02-03 12:47:09

Spring Boot應用監控

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

2018-05-04 15:27:22

Spring Boo Web開發
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 99在线国产 | 国产精品久久午夜夜伦鲁鲁 | 伊人免费在线观看高清 | 91中文字幕在线观看 | 精品国产乱码久久久久久图片 | 亚洲国产精品视频一区 | 国产欧美日韩精品一区二区三区 | 亚洲精品精品 | 亚洲一区国产 | 99久久久久久 | 精品少妇一区二区三区日产乱码 | 精品视频一区二区 | 久久夜视频 | 中文字幕第二十页 | 久草资源在线视频 | 成人h动漫精品一区二区器材 | 久久国产精品免费视频 | 国产精品99久久免费观看 | 夜夜骑av| 一区二区三区久久 | 国产综合区 | 久久久久久成人 | 国产高清毛片 | 亚洲精品久久区二区三区蜜桃臀 | 日韩欧美国产成人一区二区 | 欧美成视频在线观看 | 欧美在线视频网 | 九九精品影院 | a级黄色片在线观看 | 亚洲日韩中文字幕一区 | 久久久久久国产 | 久久精品视频一区二区三区 | 午夜国产一级 | 国产成人精品久久二区二区 | 亚洲人人| www.av在线| 国产特黄一级 | 久久久久久久久久影视 | 超碰免费在线观看 | 午夜免费精品视频 | 日韩靠逼|