O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Rastreador de histórico

Grava o histórico de diferentes eventos, por exemplo, mensagens RX e TX ou alterações nas informações da rede.

Resumo

Todas as entradas rastreadas têm carimbo de data/hora.

As funções deste módulo estão disponíveis quando OPENTHREAD_CONFIG_HISTOR_TRACKER_ENABLE está habilitado.

Enumerações

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
}
enumerar
Constantes que representam a prioridade da mensagem usada na estrutura otHistoryTrackerMessageInfo .
otHistoryTrackerAddressEvent {
OT_HISTORY_TRACKER_ADDRESS_EVENT_ADDED = 0,
OT_HISTORY_TRACKER_ADDRESS_EVENT_REMOVED = 1
}
enumerar
Essa enumeração define os eventos para uma informação de endereço IPv6 (unicast ou multicast) (ou seja, se o endereço é adicionado ou removido).
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
}
enumerar
Esta enumeração define os eventos em uma informação vizinha (ou seja,
otHistoryTrackerNetDataEvent {
OT_HISTORY_TRACKER_NET_DATA_ENTRY_ADDED = 0,
OT_HISTORY_TRACKER_NET_DATA_ENTRY_REMOVED = 1
}
enumerar
Essa enumeração define os eventos para uma entrada de dados de rede (ou seja, se uma entrada é adicionada ou removida).

Typedefs

otHistoryTrackerExternalRouteInfo typedef
Essa estrutura representa uma informação de rota externa de dados de rede.
otHistoryTrackerIterator typedef
Esse tipo representa um iterador para iterar em uma lista de histórico.
otHistoryTrackerMessageInfo typedef
Esta estrutura representa uma informação de mensagem RX/TX IPv6.
otHistoryTrackerMulticastAddressInfo typedef
Essa estrutura representa uma informação de endereço multicast IPv6.
otHistoryTrackerNeighborInfo typedef
Esta estrutura representa uma informação de vizinho.
otHistoryTrackerNetworkInfo typedef
Essa estrutura representa as informações da rede de threads.
otHistoryTrackerOnMeshPrefixInfo typedef
Essa estrutura representa uma informação de prefixo de dados de rede em malha.
otHistoryTrackerUnicastAddressInfo typedef
Essa estrutura representa uma informação de endereço IPv6 unicast.

Funções

otHistoryTrackerEntryAgeToString (uint32_t aEntryAge, char *aBuffer, uint16_t aSize)
void
Essa função converte uma determinada idade de entrada em uma string legível.
otHistoryTrackerInitIterator ( otHistoryTrackerIterator *aIterator)
void
Essa função inicializa um otHistoryTrackerIterator .
otHistoryTrackerIterateExternalRouteHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Esta função itera sobre as entradas na lista de histórico de entrada de rota externa de dados de rede.
otHistoryTrackerIterateMulticastAddressHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Esta função itera sobre as entradas na lista de histórico de endereços multicast.
otHistoryTrackerIterateNeighborHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Esta função itera sobre as entradas na lista de histórico de vizinhos.
otHistoryTrackerIterateNetInfoHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Esta função itera sobre as entradas na lista do histórico de informações da rede.
otHistoryTrackerIterateOnMeshPrefixHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Esta função itera sobre as entradas na lista de histórico de entrada de prefixo de dados de rede na malha.
otHistoryTrackerIterateRxHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Esta função itera sobre as entradas na lista de histórico de mensagens RX.
otHistoryTrackerIterateTxHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Esta função itera sobre as entradas na lista de histórico de mensagens TX.
otHistoryTrackerIterateUnicastAddressHistory ( otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Esta função itera sobre as entradas na lista de histórico de endereços unicast.

Estruturas

otHistoryTrackerExternalRouteInfo

Essa estrutura representa uma informação de rota externa de dados de rede.

otHistoryTrackerIterator

Esse tipo representa um iterador para iterar em uma lista de histórico.

otHistoryTrackerMessageInfo

Esta estrutura representa uma informação de mensagem RX/TX IPv6.

otHistoryTrackerMulticastAddressInfo

Essa estrutura representa uma informação de endereço multicast IPv6.

otHistoryTrackerNeighborInfo

Esta estrutura representa uma informação de vizinho.

otHistoryTrackerNetworkInfo

Essa estrutura representa as informações da rede de threads.

otHistoryTrackerOnMeshPrefixInfo

Essa estrutura representa uma informação de prefixo de dados de rede em malha.

otHistoryTrackerUnicastAddressInfo

Essa estrutura representa uma informação de endereço IPv6 unicast.

Enumerações

enumeração anônima

 anonymous enum

Constantes que representam a prioridade da mensagem usada na estrutura otHistoryTrackerMessageInfo .

Propriedades
OT_HISTORY_TRACKER_MSG_PRIORITY_HIGH

Alto nível de prioridade.

OT_HISTORY_TRACKER_MSG_PRIORITY_LOW

Nível de prioridade baixo.

OT_HISTORY_TRACKER_MSG_PRIORITY_NET

Nível de prioridade de controle de rede.

OT_HISTORY_TRACKER_MSG_PRIORITY_NORMAL

Nível de prioridade normal.

otHistoryTrackerAddressEvent

 otHistoryTrackerAddressEvent

Essa enumeração define os eventos para uma informação de endereço IPv6 (unicast ou multicast) (ou seja, se o endereço é adicionado ou removido).

Propriedades
OT_HISTORY_TRACKER_ADDRESS_EVENT_ADDED

O endereço é adicionado.

OT_HISTORY_TRACKER_ADDRESS_EVENT_REMOVED

O endereço é removido.

otHistoryTrackerNeighborEvent

 otHistoryTrackerNeighborEvent

Esta enumeração define os eventos em uma informação vizinha (ou seja,

se o vizinho é adicionado, removido ou alterado).

O evento OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING é aplicável apenas a vizinhos filhos. Ele é acionado após o dispositivo (re)iniciar e quando a lista de filhos anteriores é recuperada de configurações não voláteis e o dispositivo tenta restaurar a conexão com eles.

Propriedades
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_ADDED

O vizinho é adicionado.

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_CHANGED

Vizinho alterado (por exemplo, sinalizadores de modo de dispositivo alterados).

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_REMOVED

O vizinho é removido.

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING

O vizinho está sendo restaurado (aplicável apenas a crianças).

otHistoryTrackerNetDataEvent

 otHistoryTrackerNetDataEvent

Essa enumeração define os eventos para uma entrada de dados de rede (ou seja, se uma entrada é adicionada ou removida).

Propriedades
OT_HISTORY_TRACKER_NET_DATA_ENTRY_ADDED

A entrada de dados de rede é adicionada.

OT_HISTORY_TRACKER_NET_DATA_ENTRY_REMOVED

A entrada de dados de rede é removida.

Typedefs

otHistoryTrackerExternalRouteInfo

struct otHistoryTrackerExternalRouteInfo otHistoryTrackerExternalRouteInfo

Essa estrutura representa uma informação de rota externa de dados de rede.

otHistoryTrackerIterator

struct otHistoryTrackerIterator otHistoryTrackerIterator

Esse tipo representa um iterador para iterar em uma lista de histórico.

Os campos neste tipo são opacos (destinados ao uso pelo núcleo OpenThread) e, portanto, não devem ser acessados/usados ​​pelo chamador.

Antes de usar um iterador, ele DEVE ser inicializado usando otHistoryTrackerInitIterator() ,

otHistoryTrackerMessageInfo

struct otHistoryTrackerMessageInfo otHistoryTrackerMessageInfo

Esta estrutura representa uma informação de mensagem RX/TX IPv6.

Alguns dos campos nesta estrutura são aplicáveis ​​a uma mensagem RX ou apenas a uma mensagem TX, por exemplo, mAveRxRss é o RSS médio de todos os quadros de fragmento que formam uma mensagem recebida e é aplicável apenas a uma mensagem RX.

otHistoryTrackerMulticastAddressInfo

struct otHistoryTrackerMulticastAddressInfo otHistoryTrackerMulticastAddressInfo

Essa estrutura representa uma informação de endereço multicast IPv6.

otHistoryTrackerNeighborInfo

struct otHistoryTrackerNeighborInfo otHistoryTrackerNeighborInfo

Esta estrutura representa uma informação de vizinho.

otHistoryTrackerNetworkInfo

struct otHistoryTrackerNetworkInfo otHistoryTrackerNetworkInfo

Essa estrutura representa as informações da rede de threads.

otHistoryTrackerOnMeshPrefixInfo

struct otHistoryTrackerOnMeshPrefixInfo otHistoryTrackerOnMeshPrefixInfo

Essa estrutura representa uma informação de prefixo de dados de rede em malha.

otHistoryTrackerUnicastAddressInfo

struct otHistoryTrackerUnicastAddressInfo otHistoryTrackerUnicastAddressInfo

Essa estrutura representa uma informação de endereço IPv6 unicast.

Funções

otHistoryTrackerEntryAgeToString

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

Essa função converte uma determinada idade de entrada em uma string legível.

A string de idade de entrada segue o formato " : : . " para horas, minutos, segundos e milissegundos (se for menor que um dia) ou "

dias : : . " (se mais de um dia).

Se a string resultante não couber em aBuffer (dentro de seus caracteres aSize ), a string será truncada, mas a string de saída será sempre terminada em nulo.

Detalhes
Parâmetros
[in] aEntryAge
A idade de entrada (duração em ms).
[out] aBuffer
Um ponteiro para um array char para a saída da string (NÃO DEVE ser NULL).
[in] aSize
O tamanho de um aBuffer . Recomendado para usar OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE .

otHistoryTrackerInitIterator

void otHistoryTrackerInitIterator(
  otHistoryTrackerIterator *aIterator
)

Essa função inicializa um otHistoryTrackerIterator .

Um iterador DEVE ser inicializado antes de ser usado.

Um iterador pode ser inicializado novamente para iniciar do início da lista.

Ao iterar sobre entradas em uma lista, para garantir que as idades da entrada sejam consistentes, a idade é fornecida em relação à hora em que o iterador foi inicializado, ou seja, a idade da entrada é fornecida como a duração (em milissegundos) do evento (quando a entrada foi gravado) para o tempo de inicialização do iterador.

Detalhes
Parâmetros
[in] aIterator
Um ponteiro para o iterador para inicializar (NÃO DEVE ser NULL).

otHistoryTrackerIterateExternalRouteHistory

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

Esta função itera sobre as entradas na lista de histórico de entrada de rota externa de dados de rede.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para a instância OpenThread.
[in,out] aIterator
Um ponteiro para um iterador. DEVE ser inicializado ou o comportamento é indefinido.
[out] aEntryAge
Um ponteiro para uma variável para gerar a idade da entrada. Não deve ser nulo. A idade é fornecida como a duração (em milissegundos) de quando a entrada foi registrada até o tempo de inicialização de um aIterator . Ele é definido como OT_HISTORY_TRACKER_MAX_AGE para entradas anteriores à idade máxima.
Devoluções
A entrada otHistoryTrackerExternalRouteInfo ou NULL se não houver mais entradas na lista.

otHistoryTrackerIterateMulticastEndereçoHistórico

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

Esta função itera sobre as entradas na lista de histórico de endereços multicast.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para a instância OpenThread.
[in,out] aIterator
Um ponteiro para um iterador. DEVE ser inicializado ou o comportamento é indefinido.
[out] aEntryAge
Um ponteiro para uma variável para gerar a idade da entrada. Não deve ser nulo. A idade é fornecida como a duração (em milissegundos) de quando a entrada foi registrada até o tempo de inicialização de um aIterator . Ele é definido como OT_HISTORY_TRACKER_MAX_AGE para entradas anteriores à idade máxima.
Devoluções
Um ponteiro para a entrada otHistoryTrackerMulticastAddressInfo ou NULL se não houver mais entradas na lista.

otHistoryTrackerIterateVizinhoHistória

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

Esta função itera sobre as entradas na lista de histórico de vizinhos.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para a instância OpenThread.
[in,out] aIterator
Um ponteiro para um iterador. DEVE ser inicializado ou o comportamento é indefinido.
[out] aEntryAge
Um ponteiro para uma variável para gerar a idade da entrada. Não deve ser nulo. A idade é fornecida como a duração (em milissegundos) de quando a entrada foi registrada até o tempo de inicialização de um aIterator . Ele é definido como OT_HISTORY_TRACKER_MAX_AGE para entradas anteriores à idade máxima.
Devoluções
A entrada otHistoryTrackerNeighborInfo ou NULL se não houver mais entradas na lista.

otHistoryTrackerIterateNetInfoHistory

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

Esta função itera sobre as entradas na lista do histórico de informações da rede.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para a instância OpenThread.
[in,out] aIterator
Um ponteiro para um iterador. DEVE ser inicializado ou o comportamento é indefinido.
[out] aEntryAge
Um ponteiro para uma variável para gerar a idade da entrada. Não deve ser nulo. A idade é fornecida como a duração (em milissegundos) de quando a entrada foi registrada até o tempo de inicialização de um aIterator . Ele é definido como OT_HISTORY_TRACKER_MAX_AGE para entradas anteriores à idade máxima.
Devoluções
Um ponteiro para a entrada otHistoryTrackerNetworkInfo ou NULL se não houver mais entradas na lista.

otHistoryTrackerIterateOnMeshPrefixHistory

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

Esta função itera sobre as entradas na lista de histórico de entrada de prefixo de dados de rede na malha.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para a instância OpenThread.
[in,out] aIterator
Um ponteiro para um iterador. DEVE ser inicializado ou o comportamento é indefinido.
[out] aEntryAge
Um ponteiro para uma variável para gerar a idade da entrada. Não deve ser nulo. A idade é fornecida como a duração (em milissegundos) de quando a entrada foi registrada até o tempo de inicialização de um aIterator . Ele é definido como OT_HISTORY_TRACKER_MAX_AGE para entradas anteriores à idade máxima.
Devoluções
A entrada otHistoryTrackerOnMeshPrefixInfo ou NULL se não houver mais entradas na lista.

otHistoryTrackerIterateRxHistory

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

Esta função itera sobre as entradas na lista de histórico de mensagens RX.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para a instância OpenThread.
[in,out] aIterator
Um ponteiro para um iterador. DEVE ser inicializado ou o comportamento é indefinido.
[out] aEntryAge
Um ponteiro para uma variável para gerar a idade da entrada. Não deve ser nulo. A idade é fornecida como a duração (em milissegundos) de quando a entrada foi registrada até o tempo de inicialização de um aIterator . Ele é definido como OT_HISTORY_TRACKER_MAX_AGE para entradas anteriores à idade máxima.
Devoluções
A entrada otHistoryTrackerMessageInfo ou NULL se não houver mais entradas na lista.

otHistoryTrackerIterateTxHistory

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

Esta função itera sobre as entradas na lista de histórico de mensagens TX.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para a instância OpenThread.
[in,out] aIterator
Um ponteiro para um iterador. DEVE ser inicializado ou o comportamento é indefinido.
[out] aEntryAge
Um ponteiro para uma variável para gerar a idade da entrada. Não deve ser nulo. A idade é fornecida como a duração (em milissegundos) de quando a entrada foi registrada até o tempo de inicialização de um aIterator . Ele é definido como OT_HISTORY_TRACKER_MAX_AGE para entradas anteriores à idade máxima.
Devoluções
A entrada otHistoryTrackerMessageInfo ou NULL se não houver mais entradas na lista.

otHistoryTrackerIterateUnicastEndereçoHistórico

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

Esta função itera sobre as entradas na lista de histórico de endereços unicast.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para a instância OpenThread.
[in,out] aIterator
Um ponteiro para um iterador. DEVE ser inicializado ou o comportamento é indefinido.
[out] aEntryAge
Um ponteiro para uma variável para gerar a idade da entrada. Não deve ser nulo. A idade é fornecida como a duração (em milissegundos) de quando a entrada foi registrada até o tempo de inicialização de um aIterator . Ele é definido como OT_HISTORY_TRACKER_MAX_AGE para entradas anteriores à idade máxima.
Devoluções
Um ponteiro para a entrada otHistoryTrackerUnicastAddressInfo ou NULL se não houver mais entradas na lista.

Macros

OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE

 OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE 21

Tamanho recomendado para representação de string de uma idade de entrada.

OT_HISTORY_TRACKER_MAX_AGE

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

Esta constante especifica a idade máxima das entradas que é de 49 dias (em ms).

As entradas mais antigas que a idade máxima fornecerão esse valor como idade.

Recursos

Os tópicos de referência da API OpenThread se originam do código-fonte, disponível no GitHub . Para obter mais informações ou contribuir com nossa documentação, consulte Recursos .