應用 Spring進行介面監控

2021-10-01 19:27:46 字數 1308 閱讀 4341

我們在對api進行設計時,需要考慮對api的監控,監控內容包括:api呼叫狀態、api呼叫時間,以及時發現問題。我們說一下用spring***進行介面監控的簡單設計。

在一次請求中一些核心元件的處理步驟

1、handlerinterceptor#prehandle

2、handle

3、handlerinterceptor#posthandle:如果handle過程中丟擲異常,跳過這個步驟。

4、exceptionhandlermethodresolver#resolveexception:異常處理器,只有handle過程丟擲異常時會選擇相應的exceptionhandler進行處理。

5、handlerinterceptor#aftercompletion:能獲取到流程中任何元件丟擲的異常

關於handlerinterceptor做介面監控的設計

我們一般使用handlerinterceptor做介面監控時,需要區分成功的介面和失敗的介面,因為考慮到exceptionhandler會對異常進行處理,所以一般我們通過treadlocal變數或者request#setattribute來記錄介面的呼叫情況,下面是乙個例子:

}你可以在service層中丟擲異常時,呼叫apistatusrecord.fail()記錄失敗狀態(使用threadlocal進行狀態記錄,可以大大降低侵入性)。

nginx監控介面

stub status on access log var log nginx status.log auth basic muzihan auth basic user file htpasswd 配置含義 啟用stubstatus的工作訪問狀態 stub status on 指定stubstau...

介面監控 介面監控告警系統搭建(一)

需要用到的是訊息推送裡面的傳送應用訊息介面,我們先來看一下這個介面文件 引數說明 可以看到,只需要傳touser和agentid引數就可以傳送一條最簡單的訊息給這個使用者了 請求位址中的access token是介面呼叫的憑證,他是由另外乙個介面獲取到的,來看一下獲取access token的介面 ...

Spring介面注入

如下類 生成 package com.atguigu.crowdfunding.portal.web import org.springframework.beans.bean ception import org.springframework.stereotype.component 在持久層 ...