通訊協定
AgentIterator
在 fuchsia.debugger/debug_agent.fidl 中定義
GetNext
要求
<空白>
回應
名稱 | 類型 |
---|---|
agents |
vector<Agent>
|
AttachedProcessIterator
在 fuchsia.debugger/debug_agent.fidl 中定義
GetNext
要求
<空白>
回應
名稱 | 類型 |
---|---|
process_names |
vector<string>
|
DebugAgent
在 fuchsia.debugger/debug_agent.fidl 中定義
AttachTo
使用指定的篩選器,附加至任何現有或後續建立的項目 元件。此方法會傳回 您呼叫此方法時存在的部分所有附加的程序 刪除時再卸離。
|篩選器|都會接受檢查,但會有相應的錯誤 。如果篩選器無效,就不會加入附件。
|數字比對|會包含 在沒有錯誤的情況下立即安裝篩選器,也就是 會立即生效 (若此領域以遞迴方式發出,或以遞迴方式發出) 選項) 此元件的對應工作。請注意, 篩選器可在實際解析任何元件「之前」 因此該數字可能為 0此傳回值可能安全無虞 已忽略。
無效的篩選器會傳回錯誤。詳情請參閱上方的篩選器: 如何建構篩選器
要求
名稱 | 類型 |
---|---|
pattern |
string
|
type |
FilterType
|
options |
FilterOptions
|
回應
名稱 | 類型 |
---|---|
payload |
DebugAgent_AttachTo_Result
|
連線
向 DebugAgent 提交可連線至偵錯工具的通訊端。這個 如果已存在連線,則會傳回 ZX_ERR_ALREADY_BOUND。時間 通訊端已關閉,DebugAgent 就會結束。
要求
名稱 | 類型 |
---|---|
socket |
handle<socket>
|
回應
名稱 | 類型 |
---|---|
payload |
DebugAgent_Connect_Result
|
GetAttachedProcesses
針對這個代理程式附加的所有程序進行疊代器。請注意,這是 與已安裝的篩選器組合不同,而是一組已安裝篩選器 已相符的篩選器,但稍後已成功附加。
要求
名稱 | 類型 |
---|---|
iterator |
server_end<AttachedProcessIterator>
|
GetMinidumps
收集所有附加程序的小型傾印。|options|可能包含 來減少 iterator。
要求
名稱 | 類型 |
---|---|
options |
MinidumpOptions
|
iterator |
server_end<MinidumpIterator>
|
回應
名稱 | 類型 |
---|---|
payload |
DebugAgent_GetMinidumps_Result
|
GetProcessInfo
的疊代器指定的 server_end 會疊代所有執行緒, 所有附加的程序可以將 options 參數傳遞至篩選條件 想要瞭解 來自疊代器產生的結果如果 DebugAgent 則建議加入篩選器 會附加至大量程序請注意,這個篩選器 不會導致新程序附加至,且不會在 此方法就會傳回值。主要用來減少疊代器的邊界。 這些執行緒在資訊擷取期間將暫停, 可能受到其他系統程序中斷 |ProcessInfoIterator|例如,
要求
名稱 | 類型 |
---|---|
options |
GetProcessInfoOptions
|
iterator |
server_end<ProcessInfoIterator>
|
回應
名稱 | 類型 |
---|---|
payload |
DebugAgent_GetProcessInfo_Result
|
OnFatalException
回報客戶例外狀況。如果未連線至任何 debug_ipc 用戶端, 並立即解除例外狀況,這可能會導致整個程序 當機。
回應
名稱 | 類型 |
---|---|
payload |
DebugAgentOnFatalExceptionRequest
|
啟動器
在 fuchsia.debugger/debug_agent.fidl 中定義
GetAgents
所有 DebugAgent 執行個體的疊代器。
要求
名稱 | 類型 |
---|---|
iterator |
server_end<AgentIterator>
|
啟用
啟動一個新的 DebugAgent 執行個體,監聽 |agent|。DebugAgent 則會在關閉此管道對應的 client_end 時結束。 在偵錯工作階段關閉前,用戶端不得關閉管道 已完成
要求
名稱 | 類型 |
---|---|
agent |
server_end<DebugAgent>
|
回應
名稱 | 類型 |
---|---|
payload |
Launcher_Launch_Result
|
MinidumpIterator
在 fuchsia.debugger/debug_agent.fidl 中定義
收集並傳回一組程序的簡短傾印的疊代器。一個 沒有其他程序時會傳回空白的 VMO。
GetNext
要求
<空白>
回應
名稱 | 類型 |
---|---|
payload |
MinidumpIterator_GetNext_Result
|
ProcessInfoIterator
在 fuchsia.debugger/debug_agent.fidl 中定義
從所有附加程序的所有執行緒收集詳細資料。與 從疊代器產生的詳細資料 將 ThreadDetailsInterest 傳送至 |GetProcessInfo|。疊代器會產生 此為空向量執行緒已疊代過。是 如果沒有提供給這個疊代器的程序,可能會發生錯誤 從傳遞至 |GetProcessInfo| 的篩選器限制過多或 DebugAgent 為 未附加至任何項目
此疊代本身俱有時效性,DebugAgent 無法防止 導致處理序或執行緒消失的系統實體 因此這個疊代器可能會傳回錯誤 刪除這些執行緒或程序遭到刪除時這些事件都不嚴重 但可能會在一次疊代中多次發生
例如,採用這個程序結構,並假設已附加 DebugAgent 到所有領域:
pr:「process-1」1234 人 t:「pr1234-t1」1 分 t:「pr1234-t2」2 分 pr:「process-2」2,345 次 t:「pr2345-t1」3 分
如果為「process-1」於「pr1234-t1」後終止產生的分數 「pr1234-t2」,系統就會在下一個步驟 |GetNext|呼叫。撥號中 |取得下一步|會產生「pr2345-t1」
GetNext
收集下一個附加執行緒的相關資訊。由於沒有 保證具有程序順序,但是來自特定程序的所有執行緒 會比其他程序的執行緒先疊代
要求
<空白>
回應
名稱 | 類型 |
---|---|
payload |
ProcessInfoIterator_GetNext_Result
|
結構
虛擬服務專員資源
在 fuchsia.debugger/debug_agent.fidl 中定義
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
name |
fuchsia.component/child_name
|
無預設 | |
client_end |
DebugAgent
|
無預設 |
DebugAgent_AttachTo_Response
在 fuchsia.debugger/debug_agent.fidl 中定義
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
num_matches |
uint32
|
無預設 |
DebugAgent_Connect_Response
在 fuchsia.debugger/debug_agent.fidl 中定義
<空白>
DebugAgent_GetMinidumps_Response
在 fuchsia.debugger/debug_agent.fidl 中定義
<空白>
DebugAgent_GetProcessInfo_Response
在 fuchsia.debugger/debug_agent.fidl 中定義
<空白>
篩選
在 fuchsia.debugger/debug_agent.fidl 中定義
篩選器,會套用到現在及 任何符合指定模式和類型的元件或程序 資料,以便用戶端查詢 計劃。有效的篩選器一律會包含非空白模式字串。 並使用 FilterType 來辨別各個模式比較的項目其他資訊 選項可以透過 FilterOptions 指定。
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
pattern |
string
|
要與指定 |type| 配對的字串模式。空白 模式會產生 NO_PATTERN 錯誤。 |
無預設 |
type |
FilterType
|
如何解讀 |圖案|。請參閱「FilterType」。 |
無預設 |
options |
FilterOptions
|
此篩選器的其他選項。請參閱「FilterOptions」一節。 |
無預設 |
Launcher_Launch_Response
在 fuchsia.debugger/debug_agent.fidl 中定義
<空白>
MinidumpIterator_GetNext_Response 資源
在 fuchsia.debugger/debug_agent.fidl 中定義
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
minidump |
handle<vmo>
|
無預設 |
ProcessInfo
在 fuchsia.debugger/debug_agent.fidl 中定義
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
process |
zx/Koid
|
無預設 | |
moniker |
string[4096]
|
無預設 | |
thread |
zx/Koid
|
產生 |details| 中資訊的執行緒的無尾符號。 |
無預設 |
details |
ThreadDetails
|
使用 |koid| 的執行緒詳細資料,如 提供給 |GetProcessInfo| 的 ThreadDetailsInterest。 |
無預設 |
ProcessInfoIterator_GetNext_Response
在 fuchsia.debugger/debug_agent.fidl 中定義
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
info |
vector<ProcessInfo>
|
無預設 |
ENUMS
FilterError 彈性
類型:uint32
在 fuchsia.debugger/debug_agent.fidl 中定義
名稱 | 值 | 說明 |
---|---|---|
NO_PATTERN |
1 |
表示篩選器未提供任何模式。 |
UNKNOWN_TYPE |
2 |
未指定 FilterType,或者是這個代理程式的未知類型。 |
FilterType 彈性
類型:uint8
在 fuchsia.debugger/debug_agent.fidl 中定義
名稱 | 值 | 說明 |
---|---|---|
網址 |
0 |
針對元件的網址 (Sans 雜湊值) 執行完全比對。 例如:模式 fuchsia-pkg://fuchsia.com/package#meta/component.cm 將會 對應至 fuchsia-pkg://fuchsia.com/package?hash=1234abcd#meta/component.cm。 |
馬耳他文 |
1 |
以精確比對元件的整個路徑名稱。 |
MONIKER_PREFIX |
2 |
比對任何包含模式做為前置字元的元件路徑名稱。 |
MONIKER_SUFFIX |
3 |
比對任何包含模式做為後置字串的元件路徑名稱。 |
MinidumpError 彈性
類型:uint32
在 fuchsia.debugger/debug_agent.fidl 中定義
名稱 | 值 | 說明 |
---|---|---|
NO_PROCESSES |
1 |
未對疊代器產生任何程序。這可能表示 提供的篩選器不符合任何附加程序,或者 DebugAgent 未附加至任何處理程序。 |
INTERNAL_ERROR |
2 |
產生迷你傾印時發生錯誤。這些錯誤是不透明的 並上傳至 DebugAgent |
ProcessInfoError 彈性
類型:uint32
在 fuchsia.debugger/debug_agent.fidl 中定義
名稱 | 值 | 說明 |
---|---|---|
NO_PROCESSES |
1 |
沒有任何附加程序可進行疊代。 |
PROCESS_GONE |
2 |
程序導致疊代器無效。 |
THREAD_GONE |
3 |
程序的執行緒已經變更,導致疊代器無效。 |
資料表
DebugAgentOnFatalExceptionRequest
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | 欄位 | 類型 | 說明 |
---|---|---|---|
1 |
thread |
zx/Koid
|
錯誤執行緒的 Kid。 |
2 |
backtrace |
string
|
錯誤執行緒中的堆疊追蹤 (採用符號化工具標記格式)。 |
FilterOptions
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | 欄位 | 類型 | 說明 |
---|---|---|---|
1 |
recursive |
bool
|
是否要同時比對比對項目中的所有子元件 每個元件的領域設為 true 時,相符元件的完整路徑名稱 假設為領域的根,所有子項元件 會在這個領域中啟動 |
GetProcessInfoOptions
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | 欄位 | 類型 | 說明 |
---|---|---|---|
1 |
filter |
Filter
|
篩選器可減少疊代的程序數量 。這項操作不會安裝任何新篩選器,也不會產生新的篩選器 附加程序這個篩選器會套用到 如果在附加程序上 來處理目前附加的處理程序 |
2 |
interest |
ThreadDetailsInterest
|
客戶應指定想取得的資料 透過疊代器產生系統會假設所有未指定的欄位為 false。如需可能資料的說明,請參閱 ThreadDetails 興趣。 |
MinidumpOptions
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | 欄位 | 類型 | 說明 |
---|---|---|---|
1 |
filter |
Filter
|
這項操作不會安裝任何新篩選器,也不會產生新的程序 。而是將這個篩選器套用至已附加的篩選器 作業。 |
ThreadDetails
在 fuchsia.debugger/debug_agent.fidl 中定義
特定執行緒的詳細資料。這些欄位將按照 透過以下方式建立 ProcessInfoIterator 時提供的 ThreadDetailsInterest 網路 |GetProcessInfo|。
Ordinal | 欄位 | 類型 | 說明 |
---|---|---|---|
1 |
backtrace |
string
|
目前執行緒的堆疊追蹤,採用符號化工具標記格式。 |
ThreadDetailsInterest
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | 欄位 | 類型 | 說明 |
---|---|---|---|
1 |
backtrace |
bool
|
針對每個執行緒,以符號化工具標記格式產生返回追蹤。 如果未指定,就不會在 ProcessInfoIterator 產生的 ThreadDetails。 |
聯合國
DebugAgent_AttachTo_Result 嚴格
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
DebugAgent_AttachTo_Response
|
|
2 |
err |
FilterError
|
|
3 |
framework_err |
internal
|
DebugAgent_Connect_Result 嚴格
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
DebugAgent_Connect_Response
|
|
2 |
err |
zx/Status
|
|
3 |
framework_err |
internal
|
DebugAgent_GetMinidumps_Result 嚴格
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
DebugAgent_GetMinidumps_Response
|
|
2 |
err |
FilterError
|
|
3 |
framework_err |
internal
|
DebugAgent_GetProcessInfo_Result 嚴格
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
DebugAgent_GetProcessInfo_Response
|
|
2 |
err |
FilterError
|
|
3 |
framework_err |
internal
|
Launcher_Launch_Result 嚴格
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
Launcher_Launch_Response
|
|
2 |
err |
zx/Status
|
|
3 |
framework_err |
internal
|
MinidumpIterator_GetNext_Result 嚴格 資源
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
MinidumpIterator_GetNext_Response
|
|
2 |
err |
MinidumpError
|
ProcessInfoIterator_GetNext_Result 嚴格
在 fuchsia.debugger/debug_agent.fidl 中定義
Ordinal | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
ProcessInfoIterator_GetNext_Response
|
|
2 |
err |
ProcessInfoError
|