歷史追蹤器
記錄不同事件的記錄,例如 RX 和 TX 訊息或網路資訊變更。
摘要
所有追蹤的項目都有時間戳記。
啟用 OPENTHREAD_CONFIG_HISTORY_TRACKER_ENABLE
時,即可使用這個模組中的函式。
Typedefs |
|
---|---|
otHistoryTrackerExternalRouteInfo
|
typedef 代表網路資料外部路徑資訊。 |
otHistoryTrackerIterator
|
typedefstruct otHistoryTrackerIterator
代表疊代瀏覽記錄清單的疊代器。 |
otHistoryTrackerMessageInfo
|
typedefstruct otHistoryTrackerMessageInfo
代表 RX/TX IPv6 訊息資訊。 |
otHistoryTrackerMulticastAddressInfo
|
typedef 代表 IPv6 多點傳播位址資訊。 |
otHistoryTrackerNeighborInfo
|
typedefstruct otHistoryTrackerNeighborInfo
代表鄰點資訊。 |
otHistoryTrackerNetworkInfo
|
typedefstruct otHistoryTrackerNetworkInfo
代表 Thread 網路資訊。 |
otHistoryTrackerOnMeshPrefixInfo
|
typedef 代表網格前置字串資訊的網路資料。 |
otHistoryTrackerRouterInfo
|
typedefstruct otHistoryTrackerRouterInfo
代表路由器表格進入事件。 |
otHistoryTrackerUnicastAddressInfo
|
typedef 代表單點傳播 IPv6 位址資訊。 |
結構 |
|
---|---|
otHistoryTrackerExternalRouteInfo |
代表網路資料外部路徑資訊。 |
otHistoryTrackerIterator |
代表疊代瀏覽記錄清單的疊代器。 |
otHistoryTrackerMessageInfo |
代表 RX/TX IPv6 訊息資訊。 |
otHistoryTrackerMulticastAddressInfo |
代表 IPv6 多點傳播位址資訊。 |
otHistoryTrackerNeighborInfo |
代表鄰點資訊。 |
otHistoryTrackerNetworkInfo |
代表 Thread 網路資訊。 |
otHistoryTrackerOnMeshPrefixInfo |
代表網格前置字串資訊的網路資料。 |
otHistoryTrackerRouterInfo |
代表路由器表格進入事件。 |
otHistoryTrackerUnicastAddressInfo |
代表單點傳播 IPv6 位址資訊。 |
列舉
匿名列舉
anonymous enum
代表 otHistoryTrackerMessageInfo
結構中使用訊息優先順序的常數。
屬性 | |
---|---|
OT_HISTORY_TRACKER_MSG_PRIORITY_HIGH
|
高優先順序等級。 |
OT_HISTORY_TRACKER_MSG_PRIORITY_LOW
|
低優先順序等級。 |
OT_HISTORY_TRACKER_MSG_PRIORITY_NET
|
網路控制優先順序等級。 |
OT_HISTORY_TRACKER_MSG_PRIORITY_NORMAL
|
一般優先順序等級。 |
otHistoryTrackerAddressEvent
otHistoryTrackerAddressEvent
定義 IPv6 (單點傳播或多點傳送) 位址資訊 (即是否新增或移除地址) 的事件。
屬性 | |
---|---|
OT_HISTORY_TRACKER_ADDRESS_EVENT_ADDED
|
已新增地址。 |
OT_HISTORY_TRACKER_ADDRESS_EVENT_REMOVED
|
地址已移除。 |
otHistoryTrackerNeighborEvent
otHistoryTrackerNeighborEvent
定義相鄰資訊中的事件 (即
是否新增、移除或變更鄰近裝置)。
事件「OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING
」僅適用於子項鄰居。當裝置重新啟動 (重新啟動),以及從非揮發性設定擷取先前的子項清單,且裝置嘗試恢復連線時,就會觸發這項規則。
屬性 | |
---|---|
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_ADDED
|
已新增鄰點。 |
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_CHANGED
|
鄰點已變更 (例如:裝置模式旗標有所變更)。 |
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_REMOVED
|
已移除鄰點。 |
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING
|
鄰居正在恢復 (僅適用於兒童)。 |
otHistoryTrackerNetDataEvent
otHistoryTrackerNetDataEvent
定義網路資料項目 (例如要新增或移除項目) 的事件。
屬性 | |
---|---|
OT_HISTORY_TRACKER_NET_DATA_ENTRY_ADDED
|
已新增網路資料項目。 |
OT_HISTORY_TRACKER_NET_DATA_ENTRY_REMOVED
|
已移除網路資料項目。 |
otHistoryTrackerRouterEvent
otHistoryTrackerRouterEvent
定義路由器資訊 (即
是否已新增、移除或變更路由器)。
屬性 | |
---|---|
OT_HISTORY_TRACKER_ROUTER_EVENT_ADDED
|
已新增路由器 (已分配路由器 ID)。 |
OT_HISTORY_TRACKER_ROUTER_EVENT_COST_CHANGED
|
路由器進入路徑費用已變更 (與之前一樣的下一個躍點)。 |
OT_HISTORY_TRACKER_ROUTER_EVENT_NEXT_HOP_CHANGED
|
路由器項目的下一個躍點和費用已變更。 |
OT_HISTORY_TRACKER_ROUTER_EVENT_REMOVED
|
移除路由器項目 (已釋出路由器 ID)。 |
Typedefs
otHistoryTrackerExternalRouteInfo
struct otHistoryTrackerExternalRouteInfo otHistoryTrackerExternalRouteInfo
代表網路資料外部路徑資訊。
otHistoryTrackerIterator
struct otHistoryTrackerIterator otHistoryTrackerIterator
代表疊代瀏覽記錄清單的疊代器。
這個類型的欄位不透明 (供 OpenThread 核心使用),因此呼叫端不應存取/使用。
使用疊代器之前,必須先使用 otHistoryTrackerInitIterator()
進行初始化。
otHistoryTrackerMessageInfo
struct otHistoryTrackerMessageInfo otHistoryTrackerMessageInfo
代表 RX/TX IPv6 訊息資訊。
這個結構中的部分欄位僅適用於 RX 訊息或 TX 訊息,例如mAveRxRss
是構成所收到訊息的所有片段頁框平均 RSS,僅適用於 RX 訊息。
otHistoryTrackerMulticastAddressInfo
struct otHistoryTrackerMulticastAddressInfo otHistoryTrackerMulticastAddressInfo
代表 IPv6 多點傳播位址資訊。
otHistoryTrackerNeighborInfo
struct otHistoryTrackerNeighborInfo otHistoryTrackerNeighborInfo
代表鄰點資訊。
otHistoryTrackerNetworkInfo
struct otHistoryTrackerNetworkInfo otHistoryTrackerNetworkInfo
代表 Thread 網路資訊。
otHistoryTrackerOnMeshPrefixInfo
struct otHistoryTrackerOnMeshPrefixInfo otHistoryTrackerOnMeshPrefixInfo
代表網格前置字串資訊的網路資料。
otHistoryTrackerRouterInfo
struct otHistoryTrackerRouterInfo otHistoryTrackerRouterInfo
代表路由器表格進入事件。
otHistoryTrackerUnicastAddressInfo
struct otHistoryTrackerUnicastAddressInfo otHistoryTrackerUnicastAddressInfo
代表單點傳播 IPv6 位址資訊。
函式
otHistoryTrackerEntryAgeToString
void otHistoryTrackerEntryAgeToString( uint32_t aEntryAge, char *aBuffer, uint16_t aSize )
將指定項目存在時間轉換成使用者可理解的字串。
項目年齡字串的格式為「
如果產生的字串不符合 aBuffer
(在其 aSize
字元之內) 的大小,系統將截斷字串,但輸出的字串一律會是空值。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
otHistoryTrackerInitIterator
void otHistoryTrackerInitIterator( otHistoryTrackerIterator *aIterator )
疊代器「必須」初始化才能使用。
您可以再次初始化疊代器,從清單的開頭開始。
疊代清單中的項目時,為了確保項目存在時間一致,存在時間是相對於疊代器初始化的時間;也就是說,提供的項目存在時間是從事件 (記錄項目時) 到疊代器初始化時間的期間 (以毫秒為單位)。
詳細說明 | |||
---|---|---|---|
參數 |
|
otHistoryTrackerIterateExternalRouteHistory
const otHistoryTrackerExternalRouteInfo * otHistoryTrackerIterateExternalRouteHistory( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge )
疊代處理網路資料外部路徑項目記錄清單中的項目。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回 |
如果清單中沒有其他項目,
otHistoryTrackerExternalRouteInfo 項目或 NULL 項目。 |
otHistoryTrackerIterateMulticastAddressHistory
const otHistoryTrackerMulticastAddressInfo * otHistoryTrackerIterateMulticastAddressHistory( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge )
逐一查看多點傳播位址記錄清單中的項目。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回 |
otHistoryTrackerMulticastAddressInfo 項目的指標,如果清單中沒有其他項目,則指向 NULL 的指標。 |
otHistoryTrackerIterateNeighborHistory
const otHistoryTrackerNeighborInfo * otHistoryTrackerIterateNeighborHistory( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge )
疊代鄰近記錄清單中的項目。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回 |
如果清單中沒有其他項目,
otHistoryTrackerNeighborInfo 項目或 NULL 項目。 |
otHistoryTrackerIterateNetInfoHistory
const otHistoryTrackerNetworkInfo * otHistoryTrackerIterateNetInfoHistory( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge )
疊代網路資訊記錄清單中的項目。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回 |
otHistoryTrackerNetworkInfo 項目的指標,如果清單中沒有其他項目,則指向 NULL 的指標。 |
otHistoryTrackerIterateOnMeshPrefixHistory
const otHistoryTrackerOnMeshPrefixInfo * otHistoryTrackerIterateOnMeshPrefixHistory( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge )
疊代處理網格前置字串項目記錄清單中的「網路資料」項目。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回 |
如果清單中沒有其他項目,
otHistoryTrackerOnMeshPrefixInfo 項目或 NULL 項目。 |
otHistoryTrackerIterateRouterHistory
const otHistoryTrackerRouterInfo * otHistoryTrackerIterateRouterHistory( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge )
疊代路由器記錄清單中的項目。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回 |
如果清單中沒有其他項目,
otHistoryTrackerRouterInfo 項目或 NULL 項目。 |
otHistoryTrackerIterateRxHistory
const otHistoryTrackerMessageInfo * otHistoryTrackerIterateRxHistory( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge )
疊代 RX 訊息記錄清單中的項目。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回 |
如果清單中沒有其他項目,
otHistoryTrackerMessageInfo 項目或 NULL 項目。 |
otHistoryTrackerIterateTxHistory
const otHistoryTrackerMessageInfo * otHistoryTrackerIterateTxHistory( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge )
疊代 TX 訊息記錄清單中的項目。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回 |
如果清單中沒有其他項目,
otHistoryTrackerMessageInfo 項目或 NULL 項目。 |
otHistoryTrackerIterateUnicastAddressHistory
const otHistoryTrackerUnicastAddressInfo * otHistoryTrackerIterateUnicastAddressHistory( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge )
對單點傳播地址記錄清單中的項目進行疊代。
詳細說明 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回 |
otHistoryTrackerUnicastAddressInfo 項目的指標,如果清單中沒有其他項目,則指向 NULL 的指標。 |
巨集
OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE
OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE 21
用於表示項目年齡的字串大小。
OT_HISTORY_TRACKER_INFINITE_PATH_COST
OT_HISTORY_TRACKER_INFINITE_PATH_COST 0
無限路徑費用 - 用於 otHistoryTrackerRouterInfo
。
OT_HISTORY_TRACKER_MAX_AGE
OT_HISTORY_TRACKER_MAX_AGE (49 * 24 * 60 * 60 * 1000u)
這個常數指定 49 天 (毫秒) 的項目年齡上限。
早於存在時間長度上限的項目會採用這個值做為年齡。
OT_HISTORY_TRACKER_NO_NEXT_HOP
OT_HISTORY_TRACKER_NO_NEXT_HOP 63
沒有下一個躍點 - 適用於 otHistoryTrackerRouterInfo
中的 mNextHop
。
資源
OpenThread API 參考資料主題源自原始碼,請前往 GitHub 取得。如要瞭解詳情或對說明文件做出貢獻,請參閱資源。