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

Rastreador de histórico

Registra o histórico de diferentes eventos, como mensagens RX e TX ou mudanças nas informações de rede.

Resumo

Todas as entradas rastreadas são registradas.

As funções neste módulo estão disponíveis quando OPENTHREAD_CONFIG_HISTORY_TRACKER_ENABLE está ativado.

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
}
tipo enumerado
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
}
tipo enumerado
Define os eventos para as informações de endereço IPv6 (unicast ou multicast) (por exemplo, se o endereço foi 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
}
tipo enumerado
Define os eventos nas informações de um vizinho (ou seja,
otHistoryTrackerNetDataEvent{
  OT_HISTORY_TRACKER_NET_DATA_ENTRY_ADDED = 0,
  OT_HISTORY_TRACKER_NET_DATA_ENTRY_REMOVED = 1
}
tipo enumerado
Define os eventos para uma entrada de dados de rede (ou seja, se uma entrada é adicionada ou removida).
otHistoryTrackerRouterEvent{
  OT_HISTORY_TRACKER_ROUTER_EVENT_ADDED = 0,
  OT_HISTORY_TRACKER_ROUTER_EVENT_REMOVED = 1,
  OT_HISTORY_TRACKER_ROUTER_EVENT_NEXT_HOP_CHANGED = 2,
  OT_HISTORY_TRACKER_ROUTER_EVENT_COST_CHANGED = 3
}
tipo enumerado
Define os eventos nas informações de um roteador (ou seja,

Typedefs

otHistoryTrackerExternalRouteInfo typedef
Representa um trajeto de dados externos da rede.
otHistoryTrackerIterator typedef
Representa um iterador a iterar por uma lista de histórico.
otHistoryTrackerMessageInfo typedef
Representa uma mensagem R6/TX IPv6.
otHistoryTrackerMulticastAddressInfo typedef
Representam as informações de endereço de multicast IPv6.
otHistoryTrackerNeighborInfo typedef
Representa um vizinho.
otHistoryTrackerNetworkInfo typedef
Representa informações da rede Thread.
otHistoryTrackerOnMeshPrefixInfo typedef
Representar um dado de rede nas informações do prefixo da malha.
otHistoryTrackerRouterInfo typedef
Representa um evento de entrada da tabela do roteador.
otHistoryTrackerUnicastAddressInfo typedef
Representa informações de endereço IPv6 unicast.

Funções

otHistoryTrackerEntryAgeToString(uint32_t aEntryAge, char *aBuffer, uint16_t aSize)
void
Converte uma determinada idade de entrada em uma string legível.
otHistoryTrackerInitIterator(otHistoryTrackerIterator *aIterator)
void
Inicializa um otHistoryTrackerIterator.
otHistoryTrackerIterateExternalRouteHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Itera sobre as entradas na lista do histórico de entradas da rota externa dos dados de rede.
otHistoryTrackerIterateMulticastAddressHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Itera sobre as entradas na lista do histórico de endereços multicast.
otHistoryTrackerIterateNeighborHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Itera sobre as entradas na lista do histórico do vizinho.
otHistoryTrackerIterateNetInfoHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Itera sobre as entradas na lista do histórico de informações da rede.
otHistoryTrackerIterateOnMeshPrefixHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Itera as entradas na lista de histórico de entrada dos dados da rede no prefixo da rede.
otHistoryTrackerIterateRouterHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Itera sobre as entradas na lista do histórico do roteador.
otHistoryTrackerIterateRxHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Itera sobre as entradas na lista do histórico de mensagens do RX.
otHistoryTrackerIterateTxHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Itera as entradas na lista do histórico de mensagens do TX.
otHistoryTrackerIterateUnicastAddressHistory(otInstance *aInstance, otHistoryTrackerIterator *aIterator, uint32_t *aEntryAge)
Itera sobre as entradas na lista do histórico de endereços unicast.

Estruturas

otHistoryTrackerExternalRouteInfo.

Representa um trajeto de dados externos da rede.

otHistoryTrackerIterator

Representa um iterador a iterar por uma lista de histórico.

otHistoryTrackerMessageInfo.

Representa uma mensagem R6/TX IPv6.

otHistoryTrackerMulticastAddressInfo

Representam as informações de endereço de multicast IPv6.

otHistoryTrackerNeighborInfo

Representa um vizinho.

OtHistoryTrackerNetworkInfo.

Representa informações da rede Thread.

otHistoryTrackerOnMeshPrefixInfo.

Representar um dado de rede nas informações do prefixo da malha.

otHistoryTrackerRouterInfo.

Representa um evento de entrada da tabela do roteador.

otHistoryTrackerUnicastAddressInfo.

Representa informações 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

Nível de prioridade alto.

OT_HISTORY_TRACKER_MSG_PRIORITY_LOW

Nível de prioridade baixo.

OT_HISTORY_TRACKER_MSG_PRIORITY_NET

Nível de prioridade do controle de rede.

OT_HISTORY_TRACKER_MSG_PRIORITY_NORMAL

Nível de prioridade normal.

OtHistoryTrackerAddressEvent

 otHistoryTrackerAddressEvent

Define os eventos para as informações de endereço IPv6 (unicast ou multicast) (por exemplo, se o endereço foi adicionado ou removido).

Propriedades
OT_HISTORY_TRACKER_ADDRESS_EVENT_ADDED

O endereço foi adicionado.

OT_HISTORY_TRACKER_ADDRESS_EVENT_REMOVED

Endereço removido.

otHistoryTrackerNeighborEvent

 otHistoryTrackerNeighborEvent

Define os eventos nas informações de um vizinho (ou seja,

se o vizinho foi adicionado, removido ou alterado).

O evento OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING é aplicável somente a vizinhos filhos. Ela será acionada após o dispositivo (re)iniciar e quando a lista de crianças anterior for recuperada de configurações não voláteis e o dispositivo tentar restaurar a conexão com elas.

Propriedades
OT_HISTORY_TRACKER_NEIGHBOR_EVENT_ADDED

O vizinho foi adicionado.

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_CHANGED

Vizinho alterado (por exemplo, sinalizações do modo dispositivo alteradas).

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_REMOVED

O vizinho foi removido.

OT_HISTORY_TRACKER_NEIGHBOR_EVENT_RESTORING

O vizinho está sendo restaurado (aplicável somente para crianças).

otHistoryTrackerNetDataEvent

 otHistoryTrackerNetDataEvent

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 foi adicionada.

OT_HISTORY_TRACKER_NET_DATA_ENTRY_REMOVED

A entrada de dados de rede foi removida.

otHistoryTrackerRouterEvent

 otHistoryTrackerRouterEvent

Define os eventos nas informações de um roteador (ou seja,

se o roteador foi adicionado, removido ou alterado.

Propriedades
OT_HISTORY_TRACKER_ROUTER_EVENT_ADDED

O roteador foi adicionado (ID do roteador alocado).

OT_HISTORY_TRACKER_ROUTER_EVENT_COST_CHANGED

O custo do caminho de entrada do roteador foi alterado (próximo salto como antes).

OT_HISTORY_TRACKER_ROUTER_EVENT_NEXT_HOP_CHANGED

O próximo salto e o custo da entrada do roteador foram alterados.

OT_HISTORY_TRACKER_ROUTER_EVENT_REMOVED

A entrada do roteador é removida (código do roteador liberado).

Typedefs

otHistoryTrackerExternalRouteInfo

struct otHistoryTrackerExternalRouteInfo otHistoryTrackerExternalRouteInfo

Representa um trajeto de dados externos da rede.

otTrackerTrackerIterator

struct otHistoryTrackerIterator otHistoryTrackerIterator

Representa um iterador a iterar por uma lista de histórico.

Os campos desse tipo são opacos (destinados para uso pelo núcleo do OpenThread) e, portanto, não devem ser acessados/usados pelo autor da chamada.

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

OtHistoryTrackerMessageInfo

struct otHistoryTrackerMessageInfo otHistoryTrackerMessageInfo

Representa uma mensagem R6/TX IPv6.

Alguns dos campos dessa estrutura são aplicáveis a uma mensagem RX ou somente a uma mensagem TX, por exemplo, mAveRxRss é o RSS médio de todos os frames de fragmento que formam uma mensagem recebida e só se aplica a uma mensagem RX.

otHistoryTrackerMulticastAddressInfo

struct otHistoryTrackerMulticastAddressInfo otHistoryTrackerMulticastAddressInfo

Representam as informações de endereço de multicast IPv6.

OtHistoryTrackerNeighborInfo

struct otHistoryTrackerNeighborInfo otHistoryTrackerNeighborInfo

Representa um vizinho.

otHistoryTrackerNetworkInfo

struct otHistoryTrackerNetworkInfo otHistoryTrackerNetworkInfo

Representa informações da rede Thread.

otHistoryTrackerOnMeshPrefixInfo

struct otHistoryTrackerOnMeshPrefixInfo otHistoryTrackerOnMeshPrefixInfo

Representar um dado de rede nas informações do prefixo da malha.

otHistoryTrackerRouterInfo

struct otHistoryTrackerRouterInfo otHistoryTrackerRouterInfo

Representa um evento de entrada da tabela do roteador.

otHistoryTrackerUnicastAddressInfo

struct otHistoryTrackerUnicastAddressInfo otHistoryTrackerUnicastAddressInfo

Representa informações de endereço IPv6 unicast.

Funções

OtHistoryTrackerEntryAgeToString

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

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 milissegundo (se for menor que um dia) ou "

dias ::." (se maior que um dia).

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

Detalhes
Parâmetros
[in] aEntryAge
A idade de entrada (duração em ms).
[out] aBuffer
Um ponteiro para uma matriz de caracteres para gerar a string (NÃO DEVE ser NULL).
[in] aSize
O tamanho de aBuffer. Recomenda-se o uso de OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE.

otHistoryTrackerInitIterator

void otHistoryTrackerInitIterator(
  otHistoryTrackerIterator *aIterator
)

Inicializa um otHistoryTrackerIterator.

Um iterador PRECISA ser inicializado antes de ser usado.

Um iterador pode ser inicializado novamente para começar do início da lista.

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

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

otHistoryTrackerIterateExternalRouteHistory

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

Itera sobre as entradas na lista do histórico de entradas da rota externa dos dados de rede.

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

otHistoryTrackerIterateMulticastAddressHistory

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

Itera sobre as entradas na lista do histórico de endereços multicast.

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

Históricodemonitores

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

Itera sobre as entradas na lista do histórico do vizinho.

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

HistóricodeInformaçõesdeHistórico

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

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 do OpenThread.
[in,out] aIterator
Um ponteiro para um iterador. PRECISA ser inicializado ou o comportamento é indefinido.
[out] aEntryAge
Um ponteiro para uma variável para gerar a idade da entrada. NÃO DEVE ser NULL. A idade é fornecida como a duração (em milissegundos) de quando a entrada foi registrada no tempo de inicialização aIterator. Ela é definida como OT_HISTORY_TRACKER_MAX_AGE para entradas anteriores à idade máxima.
Retorna
Um ponteiro para entrada otHistoryTrackerNetworkInfo ou NULL se não houver mais entradas na lista.

otHistoryTrackerIterateOnMeshPrefixHistory

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

Itera as entradas na lista de histórico de entrada dos dados da rede no prefixo da rede.

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

otHistoryTrackerIterateRouterHistory

const otHistoryTrackerRouterInfo * otHistoryTrackerIterateRouterHistory(
  otInstance *aInstance,
  otHistoryTrackerIterator *aIterator,
  uint32_t *aEntryAge
)

Itera sobre as entradas na lista do histórico do roteador.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para a instância do OpenThread.
[in,out] aIterator
Um ponteiro para um iterador. PRECISA ser inicializado ou o comportamento é indefinido.
[out] aEntryAge
Um ponteiro para uma variável para gerar a idade da entrada. NÃO DEVE ser NULL. A idade é fornecida como a duração (em milissegundos) de quando a entrada foi registrada no tempo de inicialização aIterator. Ela é definida como OT_HISTORY_TRACKER_MAX_AGE para entradas anteriores à idade máxima.
Retorna
A entrada otHistoryTrackerRouterInfo ou NULL se não houver mais entradas na lista.

Históricodemonitores

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

Itera sobre as entradas na lista do histórico de mensagens do RX.

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

Históricodemonitores

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

Itera as entradas na lista do histórico de mensagens do TX.

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

OtHistoryTrackerIterateUnicastAddressHistory

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

Itera sobre as entradas na lista do histórico de endereços unicast.

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

Macros

PRO_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE

 OT_HISTORY_TRACKER_ENTRY_AGE_STRING_SIZE 21

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

PRO_HISTORY_TRACKER_INFINITE_PATH_COST

 OT_HISTORY_TRACKER_INFINITE_PATH_COST 0

Custo do caminho infinito: usado em otHistoryTrackerRouterInfo.

PR_HISTORY_TRACKER_MAX_AGE

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

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

Entradas anteriores à idade máxima definirão esse valor como idade.

PRO_HISTORY_TRACKER_NO_NEXT_HOP

 OT_HISTORY_TRACKER_NO_NEXT_HOP 63

Nenhum salto (próximo salto) - para mNextHop em otHistoryTrackerRouterInfo.

Recursos

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