全部產品
Search
文件中心

Alibaba Cloud Linux:InvokeDiagnosis

更新時間:Sep 11, 2026

發起診斷。

介面說明

對目標 ECS 執行個體進行診斷有如下要求:

  • 目標 ECS 執行個體狀態必須為執行中(Running);

  • 目標 ECS 執行個體必須已經安裝雲端助手,如果未安裝,請參考 安裝雲端助手 Agent 進行安裝;

  • 必須呼叫 AuthDiagnosis 介面授權 SysOM 對目標 ECS 進行診斷,如果未授權,本介面會直接失敗;

  • 本介面依賴於 SysOM 服務關聯角色(AliyunServiceRoleForSysom)已經建立,本介面不會主動建立服務角色,如果服務角色不存在,需要首先呼叫 AuthDiagnosis 進行授權,該介面會建立前述服務角色。

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

調試

授權資訊

下表是API對應的授權資訊,可以在RAM權限原則語句的Action元素中使用,用來給RAM使用者或RAM角色授予調用此API的許可權。具體說明如下:

  • 操作:是指具體的許可權點。

  • 存取層級:是指每個操作的存取層級,取值為寫入(Write)、讀取(Read)或列出(List)。

  • 資源類型:是指操作中支援授權的資源類型。具體說明如下:

    • 對於必選的資源類型,用前面加 * 表示。

    • 對於不支援資源級授權的操作,用全部資源表示。

  • 條件關鍵字:是指雲產品自身定義的條件關鍵字。

  • 關聯操作:是指成功執行操作所需要的其他許可權。操作者必須同時具備關聯操作的許可權,操作才能成功。

操作

存取層級

資源類型

條件關鍵字

關聯操作

sysom:InvokeDiagnosis

create

*Diagnosis

acs:sysom::{#accountId}:diagnosis/*

無 無

請求文法

POST /api/v1/openapi/diagnosis/invoke_diagnosis HTTP/1.1

請求參數

名稱

類型

必填

描述

樣本值

body

object

否

請求主體參數。

channel

string

是

診斷通道(目前固定為 ecs 通道)

枚舉值:

  • ecs :

    ECS 通道。

ecs

params

string

是

診斷參數,不同類型的診斷要求傳遞不同的診斷參數,每種診斷所需的參數請參閱下方的請求參數補充說明。

重要 請傳遞 JSON 格式的字串

{ "instance": "i-wz9gdv7qmdhusamc4dl01", "uid": "xxxxxxxxxxxxxx", "region": "cn-shenzhen" }

service_name

string

是

診斷類型,用於區分不同類型的診斷。

枚舉值:

  • iofsstat :

    IO 流量分析。

  • iodiagnose :

    IO 一鍵診斷。

  • oomcheck :

    OOM 診斷。

  • diskanalysis :

    磁碟分析診斷。

  • javamem :

    Java 記憶體診斷。

  • iolatency :

    IO 延遲分析。

  • netjitter :

    網路抖動診斷。

  • loadtask :

    系統負載診斷。

  • vmcore :

    當機診斷。

  • packetdrop :

    網路封包遺失診斷。

  • memgraph :

    記憶體儀表板診斷。

memgraph

診斷參數說明。

記憶體大盤診斷(memgraph)參數

memgraph(記憶體全景分析)工具:記憶體全景分析適用於記憶體佔用較高但無法明確認別具體記憶體佔用情況的場景。透過使用記憶體全景分析診斷功能,可以掃描目前系統的記憶體佔用狀態,詳細拆解記憶體使用情況。系統記憶體與應用程式記憶體的分布,並列出目前 Top 30 的應用程式記憶體使用、檔案快取、共用記憶體快取佔用情況的排序。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID, 我們將會在這台機器內部發起診斷
podstringPod 名稱否Pod 名稱

Java 記憶體診斷(javamem)參數

javamem(Java 記憶體診斷)工具,主要用於診斷 Java 應用程式的記憶體使用情況,協助使用者了解 Java 堆積記憶體和非堆積記憶體的分布和組成,識別潛在的記憶體洩漏和記憶體溢位問題,實現 Java 記憶體的可維可測可追蹤。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID, 我們將會在這台機器內部發起診斷
PidstringJava 處理程序 Pid否Java 處理程序 Pid,pid 和 pod 至少提供一個
podstringPod 名稱否Pod 名稱,pid 和 pod 至少提供一個
durationstringJNI 記憶體分配 profiling 時長否JNI 記憶體分配 profiling 時長,執行 JNI 診斷需要填寫一個非 0 的值,否則預設不執行 JNI 診斷

記憶體 OOM 診斷(oomcheck)參數

oomcheck(OOM 診斷)工具,主要用於分析和界定 OOM(Out of memory)問題,找出導致 OOM 的主要原因,並給出相應的處理建議,協助使用者解決 OOM 問題,提高系統的可用性和效能。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID, 我們將會在這台機器內部發起診斷
podstringPod 名稱否Pod 名稱
timestring診斷時間否請輸入需要診斷 OOM 的時間點,預設為最近一次

系統負載診斷(loadtask)參數

loadtask(系統負載診斷)工具主要分析系統在一分鐘內的平均負載(load1 指標)異常原因機器詳細資訊。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID, 我們將會在這台機器內部發起診斷

排程抖動診斷(delay)參數

delay(排程抖動診斷)工具主要分析 CPU 長時間不進行任務切換導致使用者態業務處理程序長期得不到排程引發的問題(例如記憶體回收等場景)。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID, 我們將會在這台機器內部發起診斷
durationstring診斷持續的時長否20診斷持續的時長(s)(可選),預設為 20 秒
thresholdstring診斷閾值否20延遲的閾值,超過這個閾值就記錄,預設 20ms

IO 流量分析診斷(iofsstat)參數

iofsstat(IO 流量分析)工具主要分析系統中 IO 流量的歸屬,結果包含每個磁碟/分割區的 IO 流量統計清單以及每個處理程序的 IO 流量統計清單。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID,我們將會在這台機器內部發起 IO 流量統計
timeoutstring診斷時長否15診斷時長,也是 IO 流量統計週期,單位秒,建議不超過 60 秒
diskstring目標磁碟否""請輸入您要診斷的磁碟,如 vda、sda,預設為所有磁碟

IO 一鍵診斷(iodiagnose)參數

iodiagnose(IO 一鍵診斷)工具專注於高頻出現的 IO 高延遲、IO Burst 及 IO Wait 等問題,支援對各種 IO 問題類型的識別,並呼叫相應的子工具對 IO 資料進行分析,從而提供結論和建議。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID,我們將會在這台機器內部發起 IO HANG 診斷
timeoutstring診斷時長否30診斷時長(可選),預設為 30 秒,不建議低於 30 秒,單位秒

網路丟包診斷(packetdrop)參數

packetdrop(網路丟包診斷)工具主要分析資料封包透過網路傳輸過程中,由於多種原因在作業系統核心層面發生的遺失問題。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID, 我們將會在這台機器內部發起診斷

網路抖動診斷(netjitter)參數

netjitter(網路抖動診斷)工具主要分析資料封包在網路傳輸過程中,由於多種因素引起的作業系統核心層面的不穩定現象。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID, 我們將會在這台機器內部發起診斷
durationstring診斷持續的時長否20診斷持續的時長(s)(可選),預設為 20 秒
thresholdstring判定出現抖動的閾值否10判定出現抖動的閾值(ms)(可選),預設為 10ms

當機診斷(vmcore)參數

vmcore(當機診斷)工具主要分析作業系統崩潰的原因,透過分析核心 panic 產生的 core dump 檔案,結合 dmesg 日誌,分析作業系統崩潰的原因。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID, 我們將會在這台機器內部發起診斷

磁碟分析診斷(diskanalysis)參數

diskanalysis(磁碟分析診斷)工具主要分析系統中磁碟的使用情況。

參數名稱參數類型參數說明是否必填預設值備註
uidstring使用者 UID是使用者 UID
regionstring執行個體所在地區是執行個體所在地區
instancestring執行個體 ID是請輸入您要診斷的執行個體 ID, 我們將會在這台機器內部發起診斷

返回參數

名稱

類型

描述

樣本值

object

Schema of Response

code

string

狀態碼

  • code == Success 則代表授權成功;

  • 其他狀態碼代表授權失敗,授權失敗時檢視 message 欄位以獲取詳細的錯誤資訊;

Success

data

object

傳回結果。

task_id

string

診斷任務 ID,可憑藉此 ID 呼叫 GetDiagnosisResult 介面查詢診斷結果。

ihqhAcrt

message

string

錯誤資訊

  • 如果 code == Success,則本欄位為空;

  • 否則本欄位包含請求錯誤資訊。

SysomOpenAPIAssumeRoleException: EntityNotExist.Role The role not exists: acs:ram::xxxxx:role/aliyunserviceroleforsysom

request_id

string

請求 RequestId。

43A910E9-A739-525E-855D-A32C257F1826

樣本

正常返回樣本

JSON格式

{
  "code": "Success",
  "data": {
    "task_id": "ihqhAcrt"
  },
  "message": "SysomOpenAPIAssumeRoleException: EntityNotExist.Role The role not exists: acs:ram::xxxxx:role/aliyunserviceroleforsysom",
  "request_id": "43A910E9-A739-525E-855D-A32C257F1826"
}

錯誤碼

訪問錯誤中心查看更多錯誤碼。

變更歷史

更多資訊,參考變更詳情。