Трекер истории
Записывает историю различных событий, например сообщений RX и TX или изменений информации о сети.
Краткое содержание
Все отслеживаемые записи имеют метку времени.
Функции этого модуля доступны, если включен OPENTHREAD_CONFIG_HISTORY_TRACKER_ENABLE
.
Определения типов | |
---|---|
otHistoryTrackerExternalRouteInfo | определение типа Представляет информацию о внешнем маршруте сетевых данных. |
otHistoryTrackerIterator | определение типаstruct otHistoryTrackerIterator Представляет итератор для перебора списка журнала. |
otHistoryTrackerMessageInfo | определение типаstruct otHistoryTrackerMessageInfo Представляет информацию о сообщении RX/TX IPv6. |
otHistoryTrackerMulticastAddressInfo | определение типа Представляет информацию об адресе многоадресной рассылки IPv6. |
otHistoryTrackerNeighborInfo | определение типаstruct otHistoryTrackerNeighborInfo Представляет информацию о соседе. |
otHistoryTrackerNetworkInfo | определение типаstruct otHistoryTrackerNetworkInfo Представляет информацию о сети потоков. |
otHistoryTrackerOnMeshPrefixInfo | определение типа Представлять сетевые данные в информации о префиксе сетки. |
otHistoryTrackerRouterInfo | определение типаstruct otHistoryTrackerRouterInfo Представляет событие записи таблицы маршрутизатора. |
otHistoryTrackerUnicastAddressInfo | определение типа Представляет информацию об одноадресном IPv6-адресе. |
Функции | |
---|---|
otHistoryTrackerEntryAgeToString (uint32_t aEntryAge, char *aBuffer, uint16_t aSize) | void Преобразует заданный возраст записи в удобочитаемую строку. |
otHistoryTrackerInitIterator ( otHistoryTrackerIterator *aIterator) | void Инициализирует otHistoryTrackerIterator . |
otHistoryTrackerIterateExternalRouteHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge) | Перебирает записи в списке истории записей внешнего маршрута сетевых данных. |
otHistoryTrackerIterateMulticastAddressHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge) | Перебирает записи в списке истории многоадресных адресов. |
otHistoryTrackerIterateNeighborHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge) | const otHistoryTrackerNeighborInfo * Перебирает записи в списке истории соседей. |
otHistoryTrackerIterateNetInfoHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge) | const otHistoryTrackerNetworkInfo * Перебирает записи в списке истории информации о сети. |
otHistoryTrackerIterateOnMeshPrefixHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge) | const otHistoryTrackerOnMeshPrefixInfo * Перебирает записи в списке истории записей сетевых данных в префиксе сетки. |
otHistoryTrackerIterateRouterHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge) | const otHistoryTrackerRouterInfo * Перебирает записи в списке истории маршрутизатора. |
otHistoryTrackerIterateRxHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge) | const otHistoryTrackerMessageInfo * Перебирает записи в списке истории сообщений RX. |
otHistoryTrackerIterateTxHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge) | const otHistoryTrackerMessageInfo * Перебирает записи в списке истории сообщений TX. |
otHistoryTrackerIterateUnicastAddressHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge) | Перебирает записи в списке истории одноадресных адресов. |
Структуры | |
---|---|
otHistoryTrackerExternalRouteInfo | Представляет информацию о внешнем маршруте сетевых данных. |
otHistoryTrackerIterator | Представляет итератор для перебора списка журнала. |
otHistoryTrackerMessageInfo | Представляет информацию о сообщении RX/TX IPv6. |
otHistoryTrackerMulticastAddressInfo | Представляет информацию об адресе многоадресной рассылки IPv6. |
otHistoryTrackerNeighborInfo | Представляет информацию о соседе. |
отИсториТрекерНетворкИнфо | Представляет информацию о сети потоков. |
отИсториТрекерОнМешПрефиксИнфо | Представлять сетевые данные в информации о префиксе сетки. |
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
Определяет события для информации об адресе 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
Определяет события для записи сетевых данных (т. е. добавляется или удаляется запись).
Характеристики | |
---|---|
OT_HISTORY_TRACKER_NET_DATA_ENTRY_ADDED | Добавлен ввод сетевых данных. |
OT_HISTORY_TRACKER_NET_DATA_ENTRY_REMOVED | Ввод сетевых данных удален. |
otHistoryTrackerRouterEvent
otHistoryTrackerRouterEvent
Определяет события в информации о маршрутизаторе (т. е.
независимо от того, добавлен ли маршрутизатор, удален или изменен).
Характеристики | |
---|---|
OT_HISTORY_TRACKER_ROUTER_EVENT_ADDED | Маршрутизатор добавлен (выделен идентификатор маршрутизатора). |
OT_HISTORY_TRACKER_ROUTER_EVENT_COST_CHANGED | Стоимость пути входа в маршрутизатор изменена (следующий переход, как и прежде). |
OT_HISTORY_TRACKER_ROUTER_EVENT_NEXT_HOP_CHANGED | Запись маршрутизатора на следующий переход и стоимость изменены. |
OT_HISTORY_TRACKER_ROUTER_EVENT_REMOVED | Запись о маршрутизаторе удалена (идентификатор маршрутизатора освобожден). |
Определения типов
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
Представляет информацию о соседе.
отИсториТрекерНетворкИнфо
struct otHistoryTrackerNetworkInfo otHistoryTrackerNetworkInfo
Представляет информацию о сети потоков.
отИсториТрекерОнМешПрефиксИнфо
struct otHistoryTrackerOnMeshPrefixInfo otHistoryTrackerOnMeshPrefixInfo
Представлять сетевые данные в информации о префиксе сетки.
otHistoryTrackerRouterInfo
struct otHistoryTrackerRouterInfo otHistoryTrackerRouterInfo
Представляет событие записи таблицы маршрутизатора.
otHistoryTrackerUnicastAddressInfo
struct otHistoryTrackerUnicastAddressInfo otHistoryTrackerUnicastAddressInfo
Представляет информацию об одноадресном IPv6-адресе.
Функции
отИсториТрекерEntryAgeToString
void otHistoryTrackerEntryAgeToString(
uint32_t aEntryAge,
char *aBuffer,
uint16_t aSize
)
Преобразует заданный возраст записи в удобочитаемую строку.
Строка возраста записи имеет формат "
Если результирующая строка не помещается в aBuffer
(в пределах символов aSize
), строка будет усечена, но выводимая строка всегда заканчивается нулем.
Подробности | |||||||
---|---|---|---|---|---|---|---|
Параметры |
|
отИсториТрекерИнититератор
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 , если в списке больше нет записей. |
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
Нет следующего перехода — для mNextHop
в otHistoryTrackerRouterInfo
.
Ресурсы
Справочные разделы API OpenThread взяты из исходного кода, доступного на GitHub . Для получения дополнительной информации или внесения вклада в нашу документацию обратитесь к Ресурсам .