快速進行服務接口監控

1. 背景

在一些業務中,可能會出現如下幾種狀況:vue

1.接口的不穩定致使APP/WEB端上的超時、拋錯,而資源級監控不能達到業務健康情況監控的目的。
2.接口衆多,服務部署後不知道是否每一個接口都正常。
3.不一樣服務同一接口的響應時間。
5.依賴的其餘接口異常致使不可用。
6.重要的接口不能等用戶觸發異常,須要在用戶請求前就發現異常並處理掉

爲了保證線上服務的穩定運行,除了線上關鍵服務的資源類監控外,各服務接口也很是重要。對於接口異常這類問題的排查每每比服務異常更耗時費力,那麼如何對線上關鍵接口進行監控呢?mysql

2. 解決思路

獲取到服務的全部接口定時對這些進行模擬請求,檢測接口返回狀態以及返回數據。git

3. JPower是什麼

JPower是一個徹底開源的微服務快速開發框架,包含用戶管理、系統管理、統一受權等基礎模塊。用戶在此框架上可快速進入業務開發。sql

這裏給你們推薦一款JPower裏的小工具jpower-log,jpower-log模塊就對此實現了對各種接口的健康狀態監控。數據庫

實現功能:json

  • 支持單個服務的全部API檢測。
  • 自動回滾接口請求產生的數據,不會在數據庫保留下任何垃圾數據;
  • 支持HTTP,請求類型能夠是GET,POST,HEADER,PUT,DELETE等全部類型
  • 支持任何形式的HTTP接口鑑權配置,只須要簡單的配置登陸接口以及登陸參數
  • 調用API能夠設置請求頭部,請求參數,並針對單個接口進行定製化配置
  • 能夠自定義檢測結果斷定,好比接口返回狀態碼爲200,返回內容包括/不包括exception等;
  • 能夠自定義監控頻率,好比30分鐘/次,1小時/次等
  • 監控日誌彙總,導出
  • 雖然這塊小工具是基於JPower開發,可是檢測對象不侷限於JPower,任何第三方服務的HTTP接口均可進行配置監控

使用文檔:tomcat

https://www.kancloud.cn/guodingzhi/jpower/2251824框架

使用技術:maven

  • 技術框架:maven、Spring Boot、Mybatis、SpringMVC
  • 技術組件:OKHttp、fastjson
  • UI技術:vue、Echarts

運行環境微服務

  • jdk8
  • tomcat
  • mysql

截圖預覽: