專家
記錄
定義於 fuchsia.logger/logger.fidl
LogListenerSafe 註冊介面,用於註冊監聽記錄。
傾印記錄檔安全
對所有快取記錄進行傾印,方法是在 log_listener
上呼叫 LogMany() 後再加上 Done()。如果 options
為空值,表示不需篩選。
要求
名稱 | 類型 |
---|---|
log_listener |
LogListenerSafe
|
options |
LogFilterOptions?
|
ListenSafe
針對每則新記錄訊息,以批次方式呼叫 LogMany() 之後,並加上 Log() 來傾印所有快取記錄。如果 options
為空值,表示不需篩選。
要求
名稱 | 類型 |
---|---|
log_listener |
LogListenerSafe
|
options |
LogFilterOptions?
|
ListenSafeWithSelectors
透過對 log_listener
呼叫 Log() 來監聽新的記錄項目。如果 options
為空值,表示不需篩選。
要求
名稱 | 類型 |
---|---|
log_listener |
LogListenerSafe
|
options |
LogFilterOptions?
|
selectors |
vector<fuchsia.diagnostics/LogInterestSelector>[64]
|
LogListenerSafe
定義於 fuchsia.logger/logger.fidl
這個事件監聽器會在收到每則訊息後通知 Log
。
完成
這個事件監聽器傳遞至 DumpLogsSafe()
且所有快取記錄均已傳送時呼叫。
要求
<空白>
記錄
呼叫單一訊息。
回傳值會用於流量控制,實作者應確認已收到每則訊息,以便繼續接收後續訊息。
要求
名稱 | 類型 |
---|---|
log |
LogMessage
|
回應
<空白>
記錄多個
在提供快取記錄時呼叫。
每次呼叫的記錄大小上限為 MAX_LOG_MANY_SIZE_BYTES
個位元組。
回傳值會用於控制流量,實作者應確認已收到每個批次,以便繼續接收後續的訊息。
要求
名稱 | 類型 |
---|---|
log |
vector<LogMessage>
|
回應
<空白>
記錄檔接收器
定義於 fuchsia.logger/logger.fidl
排除程式的記錄。
連線
將這個通訊端傳送至要清空的通訊端。
請參閱 wire_format.h,瞭解應透過通訊端接收到的內容。
要求
名稱 | 類型 |
---|---|
socket |
handle<socket>
|
ConnectStructured (連結結構化)
使用結構化記錄格式傳送要清空的通訊端。
請參閱編碼結構化記錄,瞭解預期會透過通訊端接收的內容。
要求
名稱 | 類型 |
---|---|
socket |
handle<socket>
|
等待興趣變更
當 LogSink 實作器的興趣範圍有所變更時,就會傳回這個等待擷取項目。用戶端應根據登錄的興趣發出訊息。如果收信沒有內容,用戶端應根據預設設定 (例如編譯時間設定) 發出訊息。每個用戶端一次只能輪詢一次。在第一次呼叫傳回前再次叫用 WaitForInterestChange 會導致傳回錯誤。
要求
<空白>
回應
名稱 | 類型 |
---|---|
payload |
LogSink_WaitForInterestChange_Result
|
結構
LogFilterOptions
定義於 fuchsia.logger/logger.fidl
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
filter_by_pid |
bool
|
無預設 | |
pid |
uint64
|
無預設 | |
filter_by_tid |
bool
|
無預設 | |
tid |
uint64
|
無預設 | |
verbosity |
uint8
|
如果超過零,系統就會根據詳細程度篩選記錄,並忽略 |
無預設 |
min_severity |
LogLevelFilter
|
以嚴重性做為判定記錄層級的嚴重性。 |
無預設 |
tags |
vector<string>[16]
|
如果非空白,則傳回至少含有一個指定標記的所有訊息。如果留空,系統就不會依標記篩選訊息。
傳遞的標記長度不得超過 |
無預設 |
記錄訊息
定義於 fuchsia.logger/logger.fidl
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
pid |
uint64
|
無預設 | |
tid |
uint64
|
無預設 | |
time |
zx/Time
|
無預設 | |
severity |
int32
|
無預設 | |
dropped_logs |
uint32
|
請參閱 wire_format.h。由於訊息可能會發生順序錯誤,因此只有在超過最後計數的情況下,才能記錄這個事件。 |
無預設 |
tags |
vector<string>[5]
|
無預設 | |
msg |
string[32768]
|
無預設 |
LogSink_WaitForInterestChange_Response
定義於 fuchsia.logger/logger.fidl
欄位 | 類型 | 說明 | 預設 |
---|---|---|---|
data |
fuchsia.diagnostics/Interest
|
無預設 |
表情符號
InterestChangeError 嚴格
類型:uint32
定義於 fuchsia.logger/logger.fidl
名稱 | 值 | 說明 |
---|---|---|
CALLED_TWICE |
1 |
之前呼叫了 WaitForInterestChange 兩次而沒有等待第一個呼叫傳回。 |
LogLevelFilter 嚴格
類型:int8
定義於 fuchsia.logger/logger.fidl
搭配記錄檔相關篩選功能使用的記錄檔層級。篩選作業會依據嚴重性最低的門檻 (即等於或大於可列印記錄中包含的門檻的任何記錄) 使用經驗法則。
名稱 | 值 | 說明 |
---|---|---|
追蹤 |
16 |
|
偵錯 |
32 |
|
資訊 |
48 |
|
警告 |
64 |
|
錯誤 |
80 |
|
嚴重 |
96 |
|
NONE |
127 |
聯合國
LogSink_WaitForInterestChange_Result strict
定義於 fuchsia.logger/logger.fidl
序數 | Variant | 類型 | 說明 |
---|---|---|---|
1 |
response |
LogSink_WaitForInterestChange_Response
|
|
2 |
err |
InterestChangeError
|
場景
名稱 | 值 | 類型 | 說明 |
---|---|---|---|
記錄層級預設 | 用於初始化記錄器的預設記錄層級。 |
||
LOG_SEVERITY_MAX_STEP |
6
|
uint8 |
可用記錄檔嚴重性上限。 |
LOG_SEVERITY_STEP_SIZE |
16
|
uint8 |
離散記錄嚴重性等級之間的間隔時間 |
LOG_VERBOSITY_STEP_SIZE |
1
|
uint8 |
離散記錄詳細程度等級之間的間隔 |
MAX_DATAGRAM_LEN_BYTES |
32768
|
uint32 |
訊息酬載的位元組大小上限。 |
MAX_LOG_MANY_SIZE_BYTES |
16384
|
uint64 |
每次呼叫事件監聽器的記錄位元組數上限。 |
MAX_TAGS |
16
|
uint8 |
可傳遞給事件監聽器篩選的標記數量上限。 |
MAX_TAGS_PER_LOG_MESSAGE |
5
|
uint8 |
要附加至 LogMessage 的標記數量上限。 |
MAX_TAG_LEN_BYTES |
63
|
uint8 |
可依事件監聽器篩選的標記長度上限。 |