本文主要介紹使用內建Java運行時如何接入ARMS應用監控。
目前支援Java運行時中的Java8、Java11兩種版本,如果使用自訂運行時,請參見自訂運行時支援ARMS應用監控擴充。
背景資訊
Function Compute無縫對接ARMS應用監控平台後,您可以通過ARMS應用監控平台對目標函數進行監控追蹤,擷取相關資訊,例如執行個體層級的可觀測性、鏈路追蹤資訊、Java虛擬機器指標、代碼層級的剖析(Profiling)資訊和應用安全資訊等。更多資訊,請參見什麼是應用即時監控服務ARMS?。
功能 | 描述 |
執行個體層級的可觀測性 | 以函數執行個體為維度,彙總豐富的主機監控指標,例如CPU、記憶體及請求等。 |
鏈路追蹤 | ARMS探針自動擷取函數與上下遊組件的拓撲關係及相關指標,您可以在ARMS監控平台查看相關資訊,例如資料庫、Redis及MQ等。 |
Java虛擬機器指標 | ARMS探針自動擷取Java虛擬機器應用,您可以在ARMS監控平台中查看Java虛擬機器應用的相關監控資料,例如GC次數、堆資訊及線程棧資訊等。 |
代碼層級的剖析 | 您可以查看函數執行過程中代碼層級的剖析(Profiling)資訊,例如每個方法的耗時、異常等。 |
基於RASP(Runtime Application Self-Protection)技術,應用安全可以為應用在運行時提供強大的安全防護能力,並抵禦絕大部分未知漏洞所利用的攻擊手法。 |
內建Java運行時接入ARMS
ARMS 應用監控是一種內部擴充,內建Java運行時要接入ARMS應用監控主要包括以下兩部分內容。
使用公用層擷取ARMS Agent程式
Function Compute平台提供了支援Java8、Java11兩種Java版本的ARMS Agent。
運行時 | 公用層ARN |
java8 |
|
java11 |
|
設定環境變數
{
"FC_EXTENSIONS_ARMS_LICENSE_KEY": "xxx",
"JAVA_TOOL_OPTIONS": "-javaagent:/opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar"
}設定環境變數
FC_EXTENSIONS_ARMS_LICENSE_KEY,值為License Key 資訊。關於License Key資訊的擷取方式,請參見擷取License Key資訊。設定環境變數 JAVA_TOOL_OPTIONS, 官方公用層的 arms 程式均在目錄
/opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar。
Function Compute在調用結束至凍結前的等待時間長度會產生費用,收費策略與執行個體調用階段的計費邏輯相同。具體資訊,請參見產品計費。
前提條件
操作步驟
登入Function Compute控制台,在左側導覽列,選擇。
在頂部功能表列,選擇地區,然後在函數列表頁面,單擊目標函數。
在函數配置頁面,選擇配置頁簽。
找到進階配置單擊其右側編輯,在進階配置面板找到層地區進行編輯,選擇,添加與所選Java語言相容的ArmsAgent層。修改ARN中的
{region}的值,點擊部署。在進階配置面板找到環境變數地區進行編輯,添加環境變數
JAVA_TOOL_OPTIONS=-javaagent:/opt/ArmsAgent/arms-bootstrap-1.7.0-SNAPSHOT.jar和FC_EXTENSIONS_ARMS_LICENSE_KEY=yourLicensekey。具體操作,請參見設定環境變數。成功更新配置並部署代碼後,您的函數將被添加到ARMS應用監控進行高效能管理。同時,ARMS監控將對您的服務進行計費。更多資訊,請參見計費概述。
當您的函數成功接入ARMS監控平台後,如果您需要查看對應監控資訊,請確保ARMS監控平台和函數所屬地區相同。
為了函數能夠正常執行,請確保您的函數配置中,記憶體規格大於512 MB(ARMS大概佔用300 MB記憶體)。
結果驗證
當您成功將函數接入ARMS應用監控平台後,您可以在ARMS控制台查看接入的函數。