日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

ARMS企业级场景被集成场景介绍

發布時間:2024/9/3 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 ARMS企业级场景被集成场景介绍 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
簡介:ARMS企業級場景被集成場景介紹

通過本次最佳實踐內容,您可以看到ARMS OpenAPI可以靈活的被集成到客戶鏈路監控場景,并對其進行可視化圖形展示監控信息。

1. 背景信息

應用實時監控服務ARMS(Application Real-Time Monitoring Service)是一款應用性能管理產品,能幫助你實現全棧式的性能監控和端到端的全鏈路追蹤診斷,讓應用運維更加高效。

本次最佳實踐是基于調用ARMS OpenAPI的形式來實現客戶應用場景鏈路監控的可視化圖形展示,使用環境為專有云V3.10版本ASCM控制臺,調用ARMS OpenAPI接口通過工具Postman進行測試,在第二章節詳細介紹了測試環境及測試工具。第三章節通過一個查詢所有應用ARMS OpenAPI接口描述調用過程,并且包含該接口需要請求傳入的參數接口列表。最后一章節將對一個復雜應用場景,獲取鏈路監控信息使用到ARMSOpenAPI接口,對每個接口列表字段、調用過程及返回結果詳細介紹。

最佳實踐價值

通過調用ARMS OpenAPI在應用場景的使用,直觀給閱讀者了解到ARMS產品的能力,及ARMS提供一套OpenAPI可以容易的集成到客戶應用中,快速實現復雜的微服務鏈路監控能力,由ARMS監控服務能力涵蓋范圍能力比較廣,包含瀏覽器、小程序、APP、分布式應用和容器環境,因此完整的監控能力,開發過程中不需要集成多開源組件的形式,使微服務程序監控功能開發簡單,讓應用運維變得容易。

2. 環境

在使用ARMS前您需要按照以下內容對當前的系統環境進行檢查。

本次最佳實踐基于專有云企業版V3.10.0版本ARMS。

說明ARMS OpenAPI各個版本變化不大,使用方式保持一致,所以此文檔也適用于公共云產品或專有云V3.7.0以上版本。專有云V3.10.0控制臺稱為ASCM,V3.10.0之前版本為Apsara Stack。

1.登錄ASCM控制臺。

2.將鼠標指向頁面上方導航欄中的產品,單擊企業級分布式應用服務EDAS

圖1:ASCM

說明:由于ARMS監控應用數據,需要EDAS產品配合。本次測試先通過EDAS部署一個標準的Spring Boot應用,開通ARMS監控并得到監控數據。

圖 2:EDAS控制臺

圖 3:ARMS控制臺

3.測試工具檢查。

本實踐將會在專有云環境中創建win64虛擬機,然后在虛擬機中安裝Postman進行測試。

圖4:Postman測試

3. Open API使用

調用URL確認

OpenAPI接口均為REST服務,首先確認服務的URL。
每個專有云環境域名不同,會導致URL不同。請根據具體環境信息修改URL信息,前綴及端口不變。
http://arms.console.example.com:8099/

名稱接口
數據集API/dataset/GeneralQuery.json
關鍵應用性能指標/metric/Metric.json
報警信息
應用監控-應用拓撲/trace/Dependecies.json
事件集/eventset/EventList.json

調用示例-查看所有應用:

API說明

URL:http://arms.console.example.com:8099/trace/Services.json

參數列表

字段名稱字段類型字段含義是否必選備注
_userIdString用戶id用戶名稱(如arms_admin)

返回格式示例

{ "code": 200, "data": { "details": [ { "pid": "string", //應用對應的pid "regionId": "string", "serviceName": "string" //應用名稱 } ], "services":[ //應用名稱列表 "string", "string" ] }, "success": true }

Postman調用結果

參數設置:_userId= 121827433423****

圖5:Postman調用結果

4. 應用描述

從ARMS中取得應用拓撲數據、曲線圖、應用監控指標數據,將通過大屏DataV展示。

圖6:DataV展示

5. 查詢接口調用次數

通過/metric/Metric.json接口獲得應用相關性能數據,查詢接口調用次數。

API說明

  • URL :http://arms.console.example.com:8099/metric/Metric.json
  • 接口說明:
字段名稱字段類型字段含義是否必選備注
startTimeLong查詢數據的起始時間
endTimeLong查詢數據的截止時間
intervalInSecInteger時間間隔建議填寫
metricStringmetric字段詳細填寫參考參數填寫示范
filtersList[String]過濾字段詳細填寫參考參數填寫示范
measuresList[String]指標詳細填寫參考參數填寫示范
dimensionsList[String]維度詳細填寫參考參數填寫示范
orderByString排序字段
sortOrderString排序默認不排序(ASC或者DESC)
limitInteger返回條數
_userIdString用戶id用戶名稱(如arms_admin)

調用示例

查詢指定應用過往7天的接口調用次數

參數填寫示范:

字段名稱字段類型字段含義必選示例值值來源
startTimeLong查詢數據的起始時間1578199319898系統時間
endTimeLong查詢數據的截止時間1578804119898系統時間
intervalInSecInteger時間間隔默認3600秒,即1小時人工設置
metricStringmetric字段,查詢的指標APPSTAT.DETAIL人工設置
filtersList[String]過濾字段,嚴格按照格式,否則調用出錯[{key=pid,value=1218274334230390@db61f75c2f******},{key=regionId,value=cn-******-d01}]Pid、regionid來自于專有云環境
measuresList[String]指標[rt,count,error,errrate]API文檔
dimensionsList[String]維度[pid,rpcType,rootIp]API文檔
orderByString排序字段
sortOrderString排序默認不排序(ASC或者DESC)
limitInteger返回條數
_userIdString用戶id121827433423****

查詢結果

參數設置:

圖7:參數設置

結果說明:

  • 返回結果為JSON數據集。
  • 數據集會標示查詢狀態,成功返回200,如果失敗會返回相應的錯誤碼和錯誤原因。典型錯誤例如缺少必要參數、身份認證錯誤等(是因為filters參數沒按格式要求寫好)。
  • OpenAPI返回的結果集組織形式與查詢數據的開始時間、結束時間、數據間隔時間有關。本次查詢是查詢了過往7天,數據間隔時間設置成了24小時,所以這個結果集里返回了7個”data”的集合。
  • 每個data里包括在“measure”和”dimension”里指定的查詢,以本結果集為例,就包括:Count:0.0
    PID:
    rpcDesc: HTTP入口
    rpcType:0(HTTP調用)
  • 調整查詢的開始、結束、間隔時間,會影響data數據的條數,調整接口查詢參數會影響每條data里的數據。
  • 如果需要計算一些聚合值,比如過往7天總的HTTP調用次數,需要自行把多條data數據進行計算相加后得出結果。

6. 查詢異常數量

通過/metric/Metric.json 接口獲得應用相關性能數據,查詢異常數量。

API說明

  • URL :http://arms.console.example.com:8099/metric/Metric.json
  • 接口說明:
字段名稱字段類型字段含義是否必選備注
startTimeLong查詢數據的起始時間
endTimeLong查詢數據的截止時間
intervalInSecInteger時間間隔建議填寫
metricStringmetric字段詳細填寫參考下文
filtersList[String]過濾字段詳細填寫參考下文
measuresList[String]指標詳細填寫參考下文
dimensionsList[String]維度詳細填寫參考下文
orderByString排序字段
sortOrderString排序默認不排序(ASC或者DESC)
limitInteger返回條數
_userIdString用戶id用戶名稱(如arms_admin)

調用示例

查詢指定應用過往7天的接口調用次數。

參數填寫示范:

字段名稱字段類型字段含義必選示例值值來源
startTimeLong查詢數據的起始時間1577980826988系統時間
endTimeLong查詢數據的截止時間1578585626989系統時間
intervalInSecInteger時間間隔默認3600秒,即1小時人工設置
metricStringmetric字段,查詢的指標APPSTAT.EXCEPTION人工設置
filtersList[String]過濾字段,嚴格按照格式,否則調用出錯。[{key=pid,value=1218274334230390@db61f75c2f******},{key=regionId,value=cn-******-d01}]Pid、regionid來自于專有云環境
measuresList[String]指標[count]API 文檔
dimensionsList[String]維度[pid,rpc,endpoint,exceptionInfo]API文檔
orderByString排序字段
sortOrderString排序默認不排序(ASC或者DESC)
limitInteger返回條數
_userIdString用戶id1218274334230390

查詢結果

參數設置:

圖8:參數設置

查詢結果:

圖9:查詢結果

結果說明:

  • 返回結果為JSON數據集。
  • 數據集會標示查詢狀態,成功返回200,如果失敗會返回相應的錯誤碼和錯誤原因。典型錯誤例如缺少必要參數、身份認證錯誤等(是因為filters參數沒按格式要求寫好)。
  • 本次查詢未查到相關數據,所以exception數量為0。

7. 查詢當前應用實例數量

通過/metric/Metric.json接口獲得應用相關性能數據,查詢當前應用實例數量。

API說明

  • URL :http://arms.console.example.com:8099/metric/Metric.json
  • 接口說明:
字段名稱字段類型字段含義是否必選備注
startTimeLong查詢數據的起始時間
endTimeLong查詢數據的截止時間
intervalInSecInteger時間間隔建議填寫
metricStringmetric字段詳細填寫參考下文
filtersList[String]過濾字段詳細填寫參考下文
measuresList[String]指標詳細填寫參考下文
dimensionsList[String]維度詳細填寫參考下文
orderByString排序字段
sortOrderString排序默認不排序(ASC或者DESC)
limitInteger返回條數
_userIdString用戶id用戶名稱(如arms_admin)

調用示例

查詢指定應用過往7天的接口調用次數。

參數填寫示范:

字段名稱字段類型字段含義必選示例值值來源
startTimeLong查詢數據的起始時間1577980826988系統時間
endTimeLong查詢數據的截止時間1578585626989系統時間
intervalInSecInteger時間間隔默認3600秒,即1小時人工設置
metricStringmetric字段,查詢的指標APPSTAT.DETAIL人工設置
filtersList[String]過濾字段,嚴格按照格式,否則調用出錯。[{key=pid,value=1218274334230390@db61f75c2f28609},{key=regionId,value=******}]Pid、regionid來自于專有云環境
measuresList[String]指標[count]API 文檔
dimensionsList[String]維度[pid,rootIp]API文檔
orderByString排序字段
sortOrderString排序默認不排序(ASC或者DESC)
limitInteger返回條數
_userIdString用戶id12182743342******

查詢結果

參數設置:

圖10:參數設置

查詢結果:

圖11:查詢結果

結果說明:

  • 返回結果為JSON數據集。
  • 數據集會標示查詢狀態,成功返回200,如果失敗會返回相應的錯誤碼和錯誤原因。典型錯誤例如缺少必要參數、身份認證錯誤等(是因為filters參數沒按格式要求寫好)。
  • Openapi返回的結果集組織形式與查詢數據的開始時間、結束時間、數據間隔時間有關。本次查詢是查詢了過往7天,數據間隔時間設置成了24小時,所以這個結果集里返回了7個”data”的集合。
  • 每個data里包括在measuredimension里指定的查詢,以本結果集為例,就包括:Count:0.0
    RootIP
  • 本次查詢需求是要看此應用一共部署了多少實例,所以對結果中不同IP進行計算,即可以算出共有多少實例數量。另外一個方法是設置intervalInSec的值,讓它等查詢區間,這樣出來的data集合的條數就是實例數量值,因為每個IP都會有條數據。

8. 查詢當前應用拓撲圖

通過/trace/Dependecies.json接口獲得應用拓撲相關數據。

API說明

  • URL :http://arms.console.example.com:8099/trace/Dependecies.json
  • 接口說明:
字段名稱字段類型字段含義是否必選備注
startTimeLong查詢數據的起始時間
endTimeLong查詢數據的截止時間
_userIdString用戶id用戶名稱(如arms_admin)
typeString查詢類型查詢全部關系使用ALL;單個應用的關系使用APP
pidString應用對應的pid當type=APP時必須填寫

調用示例

查詢指定應用過往7天的接口調用次數。

參數填寫示范:

本測試1月12日進行,查詢過去7天的數據。

字段名稱字段類型字段含義必選示例值
startTimeLong查詢數據的起始時間1578199319898 (1月5日)
endTimeLong查詢數據的截止時間1578804119898 (1月12日)
_userIdString用戶id1218274334******
typeString查詢類型APP
pidString應用對應的pid1218274334230390@db61f75c******

查詢結果

參數設置:

圖12:參數設置

查詢結果:

{ "code": 200, "data": { "link": [{ "code": 200, "data": { "link": [ { "callCount": 26997.0, "child": "Demo-Service", "childNodeId": 731107445, "childPid": "1218274334230390@db61f75c2******", "elapsed": 16.2328, "errorCount": 16.0, "parent": "USER", "parentNodeId": 812148234, "parentPid": "1218274334230390@db61f75c2******", "protocol": "HTTP" }, { "callCount": 8.0, "child": "pdsa_lhh_rocketmq", "childNodeId": -1762019072, "childPid": "pdsa_lhh_rocketmq", "elapsed": 11190.5, "errorCount": 8.0, "parent": "Demo-Service", "parentNodeId": 731107445, "parentPid": "1218274334230390@db61f75c2******", "protocol": "AliWareMQ" } ], "nodes": [ { "elapsed": 0.0, "errorCount": 0.0, "id": 812148234, "name": "USER", "pid": "1218274334230390@db61f75c2******", "requestCount": 0.0, "type": "USER" }, { "elapsed": 0.0, "errorCount": 0.0, "id": 731107445, "name": "Demo-Service", "pid": "1218274334230390@db61f75c2******", "requestCount": 0.0, "type": "MQ_PRODUCER" }, { "elapsed": 0.0, "errorCount": 0.0, "id": -1762019072, "name": "pdsa_****_rocketmq", "pid": "pdsa_****_rocketmq", "requestCount": 0.0, "type": "METAQ" } ] }, "success": true }

實際拓撲圖效果如下:

圖13:拓撲圖

結果說明:

  • 返回結果為JSON數據集。
  • 數據集會標示查詢狀態,成功返回200,如果失敗會返回相應的錯誤碼和錯誤原因。典型錯誤例如缺少必要參數、身份認證錯誤等(是因為filters參數沒按格式要求寫好)。
  • 查詢結果是一個點線圖的節點數據和連接數據,需要使用者自行按照圖表控件組裝相應數據。


我們是阿里云智能全球技術服務-SRE團隊,我們致力成為一個以技術為基礎、面向服務、保障業務系統高可用的工程師團隊;提供專業、體系化的SRE服務,幫助廣大客戶更好地使用云、基于云構建更加穩定可靠的業務系統,提升業務穩定性。我們期望能夠分享更多幫助企業客戶上云、用好云,讓客戶云上業務運行更加穩定可靠的技術,您可用釘釘掃描下方二維碼,加入阿里云SRE技術學院釘釘圈子,和更多云上人交流關于云平臺的那些事。

原文鏈接:https://developer.aliyun.com/article/785342?

版權聲明:本文內容由阿里云實名注冊用戶自發貢獻,版權歸原作者所有,阿里云開發者社區不擁有其著作權,亦不承擔相應法律責任。具體規則請查看《阿里云開發者社區用戶服務協議》和《阿里云開發者社區知識產權保護指引》。如果您發現本社區中有涉嫌抄襲的內容,填寫侵權投訴表單進行舉報,一經查實,本社區將立刻刪除涉嫌侵權內容。

總結

以上是生活随笔為你收集整理的ARMS企业级场景被集成场景介绍的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。