Verlaufstracker

Aufzeichnung des Verlaufs verschiedener Ereignisse, z. B. RX- und TX-Nachrichten oder Änderungen an Netzwerkinformationen.

Zusammenfassung

Alle erfassten Einträge werden mit einem Zeitstempel versehen.

Die Funktionen in diesem Modul sind verfügbar, wenn OPENTHREAD_CONFIG_HISTOR_TRACKER_ENABLE aktiviert ist.

Aufzählungen

anonymous enum{
  OT_HISTORY_TRACKER_MSG_PRIORITY_LOW = OT_MESSAGE_PRIORITY_LOW,
  OT_HISTORY_TRACKER_MSG_PRIORITY_NORMAL = OT_MESSAGE_PRIORITY_NORMAL,
  OT_HISTORY_TRACKER_MSG_PRIORITY_HIGH = OT_MESSAGE_PRIORITY_HIGH,
  OT_HISTORY_TRACKER_MSG_PRIORITY_NET = OT_MESSAGE_PRIORITY_HIGH + 1
}
enum
Konstanten für die Nachrichtenpriorität, die in der otHistoryTrackerMessageInfo-Struktur verwendet wird
otHistoryTrackerAddressEvent{
  OT_HISTORY_TRACKER_ADDRESS_EVENT_ADDED = 0,
  OT_HISTORY_TRACKER_ADDRESS_EVENT_REMOVED = 1
}
enum
Diese Aufzählung definiert die Ereignisse für eine IPv6-Adresse (Unicast oder Multicast), d.h., ob eine Adresse hinzugefügt oder entfernt wird.
otHistoryTrackerNeighborEvent{
  OT_HISTORY_TRACKER_NEIGHBOR_EVENT_ADDED = 0,
  OT_HISTORY_TRACKER_NEIGHBOR_EVENT_REMOVED = 1,
  OT_HISTORY_TRACKER_NEIGHBOR_EVENT_CHANGED = 2,
  OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING = 3
}
enum
Diese Aufzählung definiert die Ereignisse in einer Nachbarinfo (d.h.
otHistoryTrackerNetDataEvent{
  OT_HISTORY_TRACKER_NET_DATA_ENTRY_ADDED = 0,
  OT_HISTORY_TRACKER_NET_DATA_ENTRY_REMOVED = 1
}
enum
Diese Aufzählung definiert die Ereignisse für einen Netzwerkdateneintrag (d.h., ob ein Eintrag hinzugefügt oder entfernt wird).

Typdefekt

otHistoryTrackerExternalRouteInfo typedef
Diese Struktur stellt eine externe Routenroute dar.
otHistoryTrackerIterator typedef
Dieser Typ stellt einen Iterator dar, der durch eine Verlaufsliste iteriert wird.
otHistoryTrackerMessageInfo typedef
Diese Struktur stellt eine RX/TX-IPv6-Nachrichteninformation dar.
otHistoryTrackerMulticastAddressInfo typedef
Diese Struktur stellt eine IPv6-Multicast-Adressinformation dar.
otHistoryTrackerNeighborInfo typedef
Diese Struktur stellt eine Nachbarinfo dar.
otHistoryTrackerNetworkInfo typedef
Diese Struktur stellt Informationen zum Thread-Netzwerk dar.
otHistoryTrackerOnMeshPrefixInfo typedef
Diese Struktur stellt eine Netzwerkdaten zu Informationen zu Mesh-Präfixen dar.
otHistoryTrackerUnicastAddressInfo typedef
Diese Struktur stellt eine Unicast-IPv6-Adressinformation dar.

Funktionen

otHistoryTrackerEntryAgeToString(uint32_t aEntryAge, char *aBuffer, uint16_t aSize)
void
Diese Funktion konvertiert ein angegebenes Eingabealter in einen für Menschen lesbaren String.
otHistoryTrackerInitIterator(otHistoryTrackerIterator *aIterator)
void
Diese Funktion initialisiert eine otHistoryTrackerIterator.
otHistoryTrackerIterateExternalRouteHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Diese Funktion iteriert über die Einträge in der Liste der Einträge für den externen Routenverlauf des Netzwerkdaten.
otHistoryTrackerIterateMulticastAddressHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Diese Funktion iteriert über die Einträge in der Liste der Multicast-Adressverläufe.
otHistoryTrackerIterateNeighborHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Diese Funktion iteriert über die Einträge in der Nachbarverlaufsliste.
otHistoryTrackerIterateNetInfoHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Diese Funktion durchläuft die Einträge in der Liste mit den Netzwerkinformationen.
otHistoryTrackerIterateOnMeshPrefixHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Diese Funktion iteriert über die Einträge in der Liste der Einträge im Netzwerkdatenpräfix.
otHistoryTrackerIterateRxHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Diese Funktion iteriert über die Einträge in der RX-Nachrichtenverlaufsliste.
otHistoryTrackerIterateTxHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Diese Funktion iteriert über die Einträge in der Liste der Nachrichtenverlauf in Texas.
otHistoryTrackerIterateUnicastAddressHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Diese Funktion iteriert über die Einträge in der Liste der Unicast-Adressen.

Bauwerke

otHistoryTrackerExternalRouteInfo

Diese Struktur stellt eine externe Routenroute dar.

otHistoryTrackerIterator

Dieser Typ stellt einen Iterator dar, der durch eine Verlaufsliste iteriert wird.

otHistoryTrackerMessageInfo

Diese Struktur stellt eine RX/TX-IPv6-Nachrichteninformation dar.

otHistoryTrackerMulticastAddressInfo

Diese Struktur stellt eine IPv6-Multicast-Adressinformation dar.

otHistoryTrackerNeighborInfo

Diese Struktur stellt eine Nachbarinfo dar.

otHistoryTrackerNetworkInfo

Diese Struktur stellt Informationen zum Thread-Netzwerk dar.

otHistoryTrackerOnMeshPrefixInfo

Diese Struktur stellt eine Netzwerkdaten zu Informationen zu Mesh-Präfixen dar.

otHistoryTrackerUnicastAddressInfo

Diese Struktur stellt eine Unicast-IPv6-Adressinformation dar.

Aufzählungen

Anonyme Aufzählung

 anonymous enum

Konstanten für die Nachrichtenpriorität, die in der otHistoryTrackerMessageInfo-Struktur verwendet wird

Attribute
OT_HISTORY_TRACKER_MSG_PRIORITY_HIGH

Hohe Prioritätsstufe.

OT_HISTORY_TRACKER_MSG_PRIORITY_LOW

Niedrige Prioritätsebene.

OT_HISTORY_TRACKER_MSG_PRIORITY_NET

Prioritätsstufe der Network Control API.

OT_HISTORY_TRACKER_MSG_PRIORITY_NORMAL

Normale Prioritätsstufe.

otHistoryTrackerAddressEvent

 otHistoryTrackerAddressEvent

Diese Aufzählung definiert die Ereignisse für eine IPv6-Adresse (Unicast oder Multicast), d.h., ob eine Adresse hinzugefügt oder entfernt wird.

Attribute
OT_HISTORY_TRACKER_ADDRESS_EVENT_ADDED

Adresse wird hinzugefügt.

OT_HISTORY_TRACKER_ADDRESS_EVENT_REMOVED

Adresse wird entfernt.

otHistoryTrackerNeighborEvent

 otHistoryTrackerNeighborEvent

Diese Aufzählung definiert die Ereignisse in einer Nachbarinfo (d.h.

ob der Nachbar hinzugefügt, entfernt oder geändert wurde.

Das Ereignis OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING gilt nur für untergeordnete Nachbarn. Sie wird ausgelöst, nachdem das Gerät neu gestartet wurde und die vorherige untergeordnete Liste aus den nichtflüchtigen Einstellungen abgerufen wurde und das Gerät versucht, die Verbindung wiederherzustellen.

Attribute
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_ADDED

Der Nachbar wurde hinzugefügt.

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_CHANGED

Der Nachbar wurde geändert, z.B. die Flags für den Gerätemodus.

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_REMOVED

Der Nachbar wurde entfernt.

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING

Der Nachbar wird wiederhergestellt (nur für Kinder).

otHistoryTrackerNetDataEvent

 otHistoryTrackerNetDataEvent

Diese Aufzählung definiert die Ereignisse für einen Netzwerkdateneintrag (d.h., ob ein Eintrag hinzugefügt oder entfernt wird).

Attribute
OT_HISTORY_TRACKER_NET_DATA_ENTRY_ADDED

Netzwerkdateneingabe hinzugefügt.

OT_HISTORY_TRACKER_NET_DATA_ENTRY_REMOVED

Ein Eintrag mit Netzwerkdaten wird entfernt.

Typdefekt

otHistoryTrackerExternalRouteInfo

struct otHistoryTrackerExternalRouteInfo otHistoryTrackerExternalRouteInfo

Diese Struktur stellt eine externe Routenroute dar.

otHistoryTrackerIterator

struct otHistoryTrackerIterator otHistoryTrackerIterator

Dieser Typ stellt einen Iterator dar, der durch eine Verlaufsliste iteriert wird.

Die Felder dieses Typs sind undurchsichtig (für die Verwendung durch den OpenThread Core gedacht) und sollten daher nicht vom Aufrufer aufgerufen oder verwendet werden.

Bevor ein Iterator verwendet wird, muss er mit otHistoryTrackerInitIterator() initialisiert werden.

otHistoryTrackerMessageInfo

struct otHistoryTrackerMessageInfo otHistoryTrackerMessageInfo

Diese Struktur stellt eine RX/TX-IPv6-Nachrichteninformation dar.

Einige der Felder in dieser Struktur gelten nur für eine RX- oder eine TX-Nachricht, z.B. mAveRxRss ist der durchschnittliche RSS aller Fragment-Frames, die eine empfangene Nachricht bilden, und gilt nur für eine RX-Nachricht.

otHistoryTrackerMulticastAddressInfo

struct otHistoryTrackerMulticastAddressInfo otHistoryTrackerMulticastAddressInfo

Diese Struktur stellt eine IPv6-Multicast-Adressinformation dar.

otHistoryTrackerNeighborInfo

struct otHistoryTrackerNeighborInfo otHistoryTrackerNeighborInfo

Diese Struktur stellt eine Nachbarinfo dar.

otHistoryTrackerNetworkInfo

struct otHistoryTrackerNetworkInfo otHistoryTrackerNetworkInfo

Diese Struktur stellt Informationen zum Thread-Netzwerk dar.

otHistoryTrackerOnMeshPrefixInfo

struct otHistoryTrackerOnMeshPrefixInfo otHistoryTrackerOnMeshPrefixInfo

Diese Struktur stellt eine Netzwerkdaten zu Informationen zu Mesh-Präfixen dar.

otHistoryTrackerUnicastAddressInfo

struct otHistoryTrackerUnicastAddressInfo otHistoryTrackerUnicastAddressInfo

Diese Struktur stellt eine Unicast-IPv6-Adressinformation dar.

Funktionen

otHistoryTrackerEntryAgeToString

void otHistoryTrackerEntryAgeToString(
  uint32_t aEntryAge,
  char *aBuffer,
  uint16_t aSize
)

Diese Funktion konvertiert ein angegebenes Eingabealter in einen für Menschen lesbaren String.

Der String für das Alter des Eintrags hat das Format "::aus." für Stunden, Minuten, Sekunden und Millisekunden (wenn dies kürzer als ein Tag ist) oder "

Tage ::.“ (wenn mehr als ein Tag)

Wenn der resultierende String nicht in aBuffer passt (innerhalb der enthaltenen aSize Zeichen), wird der String gekürzt. Der ausgegebene String wird aber immer mit Nullzeichen beendet.

Details
Parameter
[in] aEntryAge
Das Eingabealter (Dauer in ms)
[out] aBuffer
Ein Zeiger auf ein char-Array, um den String auszugeben (Darf NICHT NULL sein).
[in] aSize
Die Größe von aBuffer. Empfohlen, OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE zu verwenden.

otHistoryTrackerInitIterator

void otHistoryTrackerInitIterator(
  otHistoryTrackerIterator *aIterator
)

Diese Funktion initialisiert eine otHistoryTrackerIterator.

Ein Iterator MUSS initialisiert werden, bevor er verwendet werden kann.

Ein Iterator kann wieder initialisiert werden, um vom Anfang der Liste aus zu beginnen.

Beim Iterieren über Einträge in einer Liste wird das Alter im Verhältnis zu dem Zeitpunkt angegeben, an dem der Iterator initialisiert wurde.Das heißt, das Alter des Eintrags wird als die Dauer (in Millisekunden) des Ereignisses (als der Eintrag angegeben wurde) verwendet, um sicherzustellen, dass die Eintragalter konsistent sind. aufgezeichnet) mit der Initialisierungszeit des Iterators.

Details
Parameter
[in] aIterator
Ein Zeiger zum Initialisieren des Iterators (Darf NICHT NULL sein).

otHistoryTrackerIterateExternalRouteHistory

const otHistoryTrackerExternalRouteInfo * otHistoryTrackerIterateExternalRouteHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

Diese Funktion iteriert über die Einträge in der Liste der Einträge für den externen Routenverlauf des Netzwerkdaten.

Details
Parameter
[in] aInstance
Ein Zeiger auf die OpenThread-Instanz.
[in,out] aIterator
Ein Zeiger auf einen Iterator. MUSS initialisiert werden oder das Verhalten ist nicht definiert.
[out] aEntryAge
Ein Zeiger auf eine Variable, um das Alter des Eintrags auszugeben. Darf NICHT NULL sein. Alter wird als Dauer (in Millisekunden) seit dem Eintragen des Eintrags in die Initialisierungszeit aIterator angegeben. Für Einträge, die älter als das Höchstalter sind, ist OT_HISTORY_TRACKER_MAX_AGE festgelegt.
Rückgabe
Den otHistoryTrackerExternalRouteInfo-Eintrag oder NULL, wenn keine weiteren Einträge in der Liste vorhanden sind.

otHistoryTrackerIterateMulticastAddressHistory

const otHistoryTrackerMulticastAddressInfo * otHistoryTrackerIterateMulticastAddressHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

Diese Funktion iteriert über die Einträge in der Liste der Multicast-Adressverläufe.

Details
Parameter
[in] aInstance
Ein Zeiger auf die OpenThread-Instanz.
[in,out] aIterator
Ein Zeiger auf einen Iterator. MUSS initialisiert werden oder das Verhalten ist nicht definiert.
[out] aEntryAge
Ein Zeiger auf eine Variable, um das Alter des Eintrags auszugeben. Darf NICHT NULL sein. Alter wird als Dauer (in Millisekunden) seit dem Eintragen des Eintrags in die Initialisierungszeit aIterator angegeben. Für Einträge, die älter als das Höchstalter sind, ist OT_HISTORY_TRACKER_MAX_AGE festgelegt.
Rückgabe
Ein Zeiger auf otHistoryTrackerMulticastAddressInfo-Eintrag oder NULL, wenn keine weiteren Einträge in der Liste vorhanden sind.

otHistoryTrackerIterateNeighborHistory

const otHistoryTrackerNeighborInfo * otHistoryTrackerIterateNeighborHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

Diese Funktion iteriert über die Einträge in der Nachbarverlaufsliste.

Details
Parameter
[in] aInstance
Ein Zeiger auf die OpenThread-Instanz.
[in,out] aIterator
Ein Zeiger auf einen Iterator. MUSS initialisiert werden oder das Verhalten ist nicht definiert.
[out] aEntryAge
Ein Zeiger auf eine Variable, um das Alter des Eintrags auszugeben. Darf NICHT NULL sein. Alter wird als Dauer (in Millisekunden) seit dem Eintragen des Eintrags in die Initialisierungszeit aIterator angegeben. Für Einträge, die älter als das Höchstalter sind, ist OT_HISTORY_TRACKER_MAX_AGE festgelegt.
Rückgabe
Den otHistoryTrackerNeighborInfo-Eintrag oder NULL, falls keine weiteren Einträge in der Liste vorhanden sind.

otHistoryTrackerIterateNetInfoHistory

const otHistoryTrackerNetworkInfo * otHistoryTrackerIterateNetInfoHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

Diese Funktion durchläuft die Einträge in der Liste mit den Netzwerkinformationen.

Details
Parameter
[in] aInstance
Ein Zeiger auf die OpenThread-Instanz.
[in,out] aIterator
Ein Zeiger auf einen Iterator. MUSS initialisiert werden oder das Verhalten ist nicht definiert.
[out] aEntryAge
Ein Zeiger auf eine Variable, um das Alter des Eintrags auszugeben. Darf NICHT NULL sein. Alter wird als Dauer (in Millisekunden) seit dem Eintragen des Eintrags in die Initialisierungszeit aIterator angegeben. Für Einträge, die älter als das Höchstalter sind, ist OT_HISTORY_TRACKER_MAX_AGE festgelegt.
Rückgabe
Ein Zeiger auf otHistoryTrackerNetworkInfo-Eintrag oder NULL, wenn keine weiteren Einträge in der Liste vorhanden sind.

otHistoryTrackerIterateOnMeshPrefixHistory

const otHistoryTrackerOnMeshPrefixInfo * otHistoryTrackerIterateOnMeshPrefixHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

Diese Funktion iteriert über die Einträge in der Liste der Einträge im Netzwerkdatenpräfix.

Details
Parameter
[in] aInstance
Ein Zeiger auf die OpenThread-Instanz.
[in,out] aIterator
Ein Zeiger auf einen Iterator. MUSS initialisiert werden oder das Verhalten ist nicht definiert.
[out] aEntryAge
Ein Zeiger auf eine Variable, um das Alter des Eintrags auszugeben. Darf NICHT NULL sein. Alter wird als Dauer (in Millisekunden) seit dem Eintragen des Eintrags in die Initialisierungszeit aIterator angegeben. Für Einträge, die älter als das Höchstalter sind, ist OT_HISTORY_TRACKER_MAX_AGE festgelegt.
Rückgabe
Den otHistoryTrackerOnMeshPrefixInfo-Eintrag oder NULL, wenn keine weiteren Einträge in der Liste vorhanden sind.

otHistoryTrackerIterateRxHistory

const otHistoryTrackerMessageInfo * otHistoryTrackerIterateRxHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

Diese Funktion iteriert über die Einträge in der RX-Nachrichtenverlaufsliste.

Details
Parameter
[in] aInstance
Ein Zeiger auf die OpenThread-Instanz.
[in,out] aIterator
Ein Zeiger auf einen Iterator. MUSS initialisiert werden oder das Verhalten ist nicht definiert.
[out] aEntryAge
Ein Zeiger auf eine Variable, um das Alter des Eintrags auszugeben. Darf NICHT NULL sein. Alter wird als Dauer (in Millisekunden) seit dem Eintragen des Eintrags in die Initialisierungszeit aIterator angegeben. Für Einträge, die älter als das Höchstalter sind, ist OT_HISTORY_TRACKER_MAX_AGE festgelegt.
Rückgabe
Den otHistoryTrackerMessageInfo-Eintrag oder NULL, wenn keine weiteren Einträge in der Liste vorhanden sind.

otHistoryTrackerIterateTxHistory

const otHistoryTrackerMessageInfo * otHistoryTrackerIterateTxHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

Diese Funktion iteriert über die Einträge in der Liste der Nachrichtenverlauf in Texas.

Details
Parameter
[in] aInstance
Ein Zeiger auf die OpenThread-Instanz.
[in,out] aIterator
Ein Zeiger auf einen Iterator. MUSS initialisiert werden oder das Verhalten ist nicht definiert.
[out] aEntryAge
Ein Zeiger auf eine Variable, um das Alter des Eintrags auszugeben. Darf NICHT NULL sein. Alter wird als Dauer (in Millisekunden) seit dem Eintragen des Eintrags in die Initialisierungszeit aIterator angegeben. Für Einträge, die älter als das Höchstalter sind, ist OT_HISTORY_TRACKER_MAX_AGE festgelegt.
Rückgabe
Den otHistoryTrackerMessageInfo-Eintrag oder NULL, wenn keine weiteren Einträge in der Liste vorhanden sind.

otHistoryTrackerIterateUnicastAddressHistory

const otHistoryTrackerUnicastAddressInfo * otHistoryTrackerIterateUnicastAddressHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

Diese Funktion iteriert über die Einträge in der Liste der Unicast-Adressen.

Details
Parameter
[in] aInstance
Ein Zeiger auf die OpenThread-Instanz.
[in,out] aIterator
Ein Zeiger auf einen Iterator. MUSS initialisiert werden oder das Verhalten ist nicht definiert.
[out] aEntryAge
Ein Zeiger auf eine Variable, um das Alter des Eintrags auszugeben. Darf NICHT NULL sein. Alter wird als Dauer (in Millisekunden) seit dem Eintragen des Eintrags in die Initialisierungszeit aIterator angegeben. Für Einträge, die älter als das Höchstalter sind, ist OT_HISTORY_TRACKER_MAX_AGE festgelegt.
Rückgabe
Ein Zeiger auf otHistoryTrackerUnicastAddressInfo-Eintrag oder NULL, wenn keine weiteren Einträge in der Liste vorhanden sind.

Makros

OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE

 OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE 21

Empfohlene Größe für die Stringdarstellung eines Eintragsalters.

OT_HISTORY_TRACKER_MAX_AGE

 OT_HISTORY_TRACKER_MAX_AGE (49 * 24 * 60 * 60 * 1000u)

Diese Konstante gibt das maximale Alter von Einträgen an, das 49 Tage (in ms) beträgt.

Bei Beiträgen, die älter als das Höchstalter sind, wird dieser Wert als Alter angegeben.

Ressourcen

Die OpenThread API-Referenzthemen stammen aus dem Quellcode, der auf GitHub verfügbar ist. Weitere Informationen und einen Beitrag zu unserer Dokumentation finden Sie unter Ressourcen.