历史记录跟踪器
记录不同事件的历史记录,例如 RX 和 TX 消息或网络信息更改。
摘要
所有跟踪的条目都将加上时间戳。
启用 OPENTHREAD_CONFIG_HISTOR_TRACKER_ENABLE
后,即可使用此模块中的函数。
枚举 |
|
---|---|
anonymous enum{
|
枚举 表示 otHistoryTrackerMessageInfo 结构体中使用的消息优先级的常量。 |
otHistoryTrackerAddressEvent{
|
枚举 此枚举定义了 IPv6(单播或多播)地址信息的事件,即是否添加或移除了地址。 |
otHistoryTrackerNeighborEvent{
|
枚举 此枚举定义了邻近信息中的事件(即 |
otHistoryTrackerNetDataEvent{
|
枚举 此枚举用于定义网络数据条目的事件(即,是否添加或删除某个条目)。 |
类型定义符 |
|
---|---|
otHistoryTrackerExternalRouteInfo
|
typedef 此结构表示网络数据外部路由信息。 |
otHistoryTrackerIterator
|
typedefstruct otHistoryTrackerIterator
此类型表示要遍历历史记录列表的迭代器。 |
otHistoryTrackerMessageInfo
|
typedefstruct otHistoryTrackerMessageInfo
此结构表示一条 RX/TX IPv6 消息信息。 |
otHistoryTrackerMulticastAddressInfo
|
typedef 此结构表示 IPv6 多播地址信息。 |
otHistoryTrackerNeighborInfo
|
typedefstruct otHistoryTrackerNeighborInfo
此结构表示邻域信息。 |
otHistoryTrackerNetworkInfo
|
typedefstruct otHistoryTrackerNetworkInfo
此结构表示线程网络信息。 |
otHistoryTrackerOnMeshPrefixInfo
|
typedef 此结构表示网格前缀信息中的网络数据。 |
otHistoryTrackerUnicastAddressInfo
|
typedef 此结构表示单播 IPv6 地址信息。 |
结构体 |
|
---|---|
otHistoryTrackerExternalRouteInfo |
此结构表示网络数据外部路由信息。 |
otHistoryTrackerIterator |
此类型表示要遍历历史记录列表的迭代器。 |
otHistoryTrackerMessageInfo |
此结构表示一条 RX/TX IPv6 消息信息。 |
otHistoryTrackerMulticastAddressInfo |
此结构表示 IPv6 多播地址信息。 |
otHistoryTrackerNeighborInfo |
此结构表示邻域信息。 |
otHistoryTrackerNetworkInfo |
此结构表示线程网络信息。 |
otHistoryTrackerOnMeshPrefixInfo |
此结构表示网格前缀信息中的网络数据。 |
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
|
网络数据条目已移除。 |
类型定义符
otHistoryTrackerExternalRouteInfo
struct otHistoryTrackerExternalRouteInfo otHistoryTrackerExternalRouteInfo
此结构表示网络数据外部路由信息。
otHistoryTrackerIterator
struct otHistoryTrackerIterator otHistoryTrackerIterator
此类型表示要遍历历史记录列表的迭代器。
此类型的字段不透明(仅供 OpenThread 核心使用),因此调用者不应访问/使用这些字段。
在使用迭代器之前,必须使用 otHistoryTrackerInitIterator()
对其进行初始化:
otHistoryTrackerMessageInfo
struct otHistoryTrackerMessageInfo otHistoryTrackerMessageInfo
此结构表示一条 RX/TX IPv6 消息信息。
此结构体中的某些字段仅适用于 RX 消息或 TX 消息,例如: mAveRxRss
是构成已接收消息的所有 Fragment 帧的平均 RSS,仅适用于 RX 消息。
otHistoryTrackerMulticastAddressInfo
struct otHistoryTrackerMulticastAddressInfo otHistoryTrackerMulticastAddressInfo
此结构表示 IPv6 多播地址信息。
otHistoryTrackerNeighborInfo
struct otHistoryTrackerNeighborInfo otHistoryTrackerNeighborInfo
此结构表示邻域信息。
otHistoryTrackerNetworkInfo
struct otHistoryTrackerNetworkInfo otHistoryTrackerNetworkInfo
此结构表示线程网络信息。
otHistoryTrackerOnMeshPrefixInfo
struct otHistoryTrackerOnMeshPrefixInfo otHistoryTrackerOnMeshPrefixInfo
此结构表示网格前缀信息中的网络数据。
otHistoryTrackerUnicastAddressInfo
struct otHistoryTrackerUnicastAddressInfo otHistoryTrackerUnicastAddressInfo
此结构表示单播 IPv6 地址信息。
函数
otHistoryTrackerEntryAgeToString
void otHistoryTrackerEntryAgeToString( uint32_t aEntryAge, char *aBuffer, uint16_t aSize )
此函数将给定条目存在时间转换为人类可读的字符串。
条目的“年龄”字符串遵循“
如果生成的字符串不适合 aBuffer
(包含其 aSize
字符),则该字符串将被截断,但输出的字符串始终以 null 结尾。
详情 | |||||||
---|---|---|---|---|---|---|---|
参数 |
|
otHistoryTrackerInitIterator
void otHistoryTrackerInitIterator( otHistoryTrackerIterator *aIterator )
此函数会初始化 otHistoryTrackerIterator
。
迭代器必须先初始化,然后才能使用。
可以从列表开头重新初始化迭代器。
在遍历列表中的条目时,为确保条目存在时间的一致性,其存在时间取决于迭代器的初始化时间,即条目存在时间以事件持续时间(以毫秒为单位)提供对迭代器初始化时间的记录)。
详情 | |||
---|---|---|---|
参数 |
|
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 。 |
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_MAX_AGE
OT_HISTORY_TRACKER_MAX_AGE (49 * 24 * 60 * 60 * 1000u)
此常量指定条目的最长存在时间,即 49 天(以毫秒为单位)。
超过最长存在时间的条目将作为其存在时间值。
资源
OpenThread API 参考主题源自源代码,可在 GitHub 上找到。 如需了解详情或为我们的文档做贡献,请参阅资源。