日志记录 - 线程堆栈

本模块包含与 OpenThread 日志记录相关的定义。

摘要

函数

otDumpCritPlat(const char *aText, const void *aData, uint16_t aDataLength)
void void void void void void
在关键日志级别生成内存转储。
otDumpDebgPlat(const char *aText, const void *aData, uint16_t aDataLength)
void
在调试日志级别生成内存转储。
otDumpInfoPlat(const char *aText, const void *aData, uint16_t aDataLength)
void
在信息日志级别生成内存转储。
otDumpNotePlat(const char *aText, const void *aData, uint16_t aDataLength)
void
在备注日志级别生成内存转储。
otDumpWarnPlat(const char *aText, const void *aData, uint16_t aDataLength)
void
在警告日志级别生成内存转储。
otLogCli(otLogLevel aLogLevel, const char *aFormat, ...) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(2
void
发出给定日志级别的日志消息。
otLogCritPlat(const char *aFormat, ...) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(1
void
发出关键日志级别的日志消息。
otLogDebgPlat(const char *aFormat, ...) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(1
void void void void void
在调试日志级别发出日志消息。
otLogGenerateNextHexDumpLine(otLogHexDumpInfo *aInfo)
生成下一个十六进制转储行。
otLogInfoPlat(const char *aFormat, ...) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(1
void void void void
发出信息日志级别的日志消息。
otLogNotePlat(const char *aFormat, ...) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(1
void void void
在备注日志级别发出日志消息。
otLogPlat(otLogLevel aLogLevel, const char *aPlatModuleName, const char *aFormat, ...) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(3
void
使用平台模块名称在指定的日志级别发出日志消息。
otLogPlatArgs(otLogLevel aLogLevel, const char *aPlatModuleName, const char *aFormat, va_list aArgs)
void void
使用平台模块名称在指定的日志级别发出日志消息。
otLogWarnPlat(const char *aFormat, ...) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(1
void void
发出警告日志级别的日志消息。
otLoggingGetLevel(void)
返回当前日志级别。
otLoggingSetLevel(otLogLevel aLogLevel)
设置日志级别。

结构体

otLogHexDumpInfo

表示用于生成十六进制转储输出的信息。

函数

otDumpCritPlat

void void void void void void otDumpCritPlat(
  const char *aText,
  const void *aData,
  uint16_t aDataLength
)

在关键日志级别生成内存转储。

如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORMOPENTHREAD_CONFIG_LOG_PKT_DUMP,或者当前日志级别低于“严重”,则此函数不会发出任何日志消息。

具体说明
参数
[in] aText
输出在字节前面的字符串。
[in] aData
指向数据缓冲区的指针。
[in] aDataLength
aData 中的字节数。

otDumpDebgPlat

void otDumpDebgPlat(
  const char *aText,
  const void *aData,
  uint16_t aDataLength
)

在调试日志级别生成内存转储。

如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORMOPENTHREAD_CONFIG_LOG_PKT_DUMP,或者当前日志级别低于调试,则此函数不会发出任何日志消息。

具体说明
参数
[in] aText
输出在字节前面的字符串。
[in] aData
指向数据缓冲区的指针。
[in] aDataLength
aData 中的字节数。

otDumpInfoPlat

void otDumpInfoPlat(
  const char *aText,
  const void *aData,
  uint16_t aDataLength
)

在信息日志级别生成内存转储。

如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORMOPENTHREAD_CONFIG_LOG_PKT_DUMP,或者当前日志级别低于信息,则此函数不会发出任何日志消息。

具体说明
参数
[in] aText
输出在字节前面的字符串。
[in] aData
指向数据缓冲区的指针。
[in] aDataLength
aData 中的字节数。

otDumpNotePlat

void otDumpNotePlat(
  const char *aText,
  const void *aData,
  uint16_t aDataLength
)

在备注日志级别生成内存转储。

如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORMOPENTHREAD_CONFIG_LOG_PKT_DUMP,或者当前日志级别低于,则请注意,此函数不会发出任何日志消息。

具体说明
参数
[in] aText
输出在字节前面的字符串。
[in] aData
指向数据缓冲区的指针。
[in] aDataLength
aData 中的字节数。

otDumpWarnPlat

void otDumpWarnPlat(
  const char *aText,
  const void *aData,
  uint16_t aDataLength
)

在警告日志级别生成内存转储。

如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORMOPENTHREAD_CONFIG_LOG_PKT_DUMP,或者当前日志级别低于警告,则此函数不会发出任何日志消息。

具体说明
参数
[in] aText
输出在字节前面的字符串。
[in] aData
指向数据缓冲区的指针。
[in] aDataLength
aData 中的字节数。

otLogCli

void otLogCli(
  otLogLevel aLogLevel,
  const char *aFormat,
  ...
) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(2

发出给定日志级别的日志消息。

仅适用于 CLI。如果未设置 OPENTHREAD_CONFIG_LOG_CLI,或者当前日志级别低于给定的日志级别,则此函数不会发出任何日志消息。

具体说明
参数
[in] aLogLevel
日志级别。
[in] aFormat
格式字符串。
[in] ...
表示格式规范的参数。

otLogCritPlat

void otLogCritPlat(
  const char *aFormat,
  ...
) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(1

发出关键日志级别的日志消息。

适用于特定平台。如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORM,或当前日志级别低于“临界”,则此函数不会发出任何日志消息。

具体说明
参数
[in] aFormat
格式字符串。
[in] ...
表示格式规范的参数。

otLogDebgPlat

void void void void void otLogDebgPlat(
  const char *aFormat,
  ...
) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(1

在调试日志级别发出日志消息。

适用于特定平台。如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORM,或当前日志级别低于调试级别,则此函数不会发出任何日志消息。

具体说明
参数
[in] aFormat
格式字符串。
[in] ...
表示格式规范的参数。

otLogGenerateNextHexDumpLine

otError otLogGenerateNextHexDumpLine(
  otLogHexDumpInfo *aInfo
)

生成下一个十六进制转储行。

可以连续调用此方法,以逐行生成十六进制转储输出。首次调用时,必须将 aInfo 中的 mIterator 字段设置为零。

以下是生成的十六进制转储输出的示例:

"==========================[{mTitle} len=070]============================" "| 41 D8 87 34 12 FF FF 25 | 4C 57 DA F2 FB 2F 62 7F | A..4...%LW.../b. |" "| 3B 01 F0 4D 4C 4D 4C 54 | 4F 00 15 15 00 00 00 00 | ;..MLMLTO......|" "| 00 00 00 01 80 DB 60 82 | 7E 33 72 3B CC B3 A1 84 | ......`.~3r;.... |" "| 3B E6 AD B2 0B 45 E7 45 | C5 B9 00 1A CB 2D 6D 1C | ;....E.E.......-m.|" "| 10 3E 3C F5 D3 70 | | | .><..p |" "------------------------------------------------------------------------"

具体说明
参数
[in,out] aInfo
指向用于生成十六进制转储的 otLogHexDumpInfo 的指针。
返回值
OT_ERROR_NONE
成功生成下一行,aInfo 中的 mLine 字段已更新。
OT_ERROR_NOT_FOUND
已到达末尾,没有更多代码可以生成了。

otLogInfoPlat

void void void void otLogInfoPlat(
  const char *aFormat,
  ...
) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(1

发出信息日志级别的日志消息。

适用于特定平台。如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORM,或当前日志级别低于 info,则此函数不会发出任何日志消息。

具体说明
参数
[in] aFormat
格式字符串。
[in] ...
表示格式规范的参数。

otLogNotePlat

void void void otLogNotePlat(
  const char *aFormat,
  ...
) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(1

在备注日志级别发出日志消息。

适用于特定平台。如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORM 或当前日志级别低于备注值,则此函数不会发出任何日志消息。

具体说明
参数
[in] aFormat
格式字符串。
[in] ...
表示格式规范的参数。

otLogPlat

void otLogPlat(
  otLogLevel aLogLevel,
  const char *aPlatModuleName,
  const char *aFormat,
  ...
) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(3

使用平台模块名称在指定的日志级别发出日志消息。

这是供平台使用的。如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORM 或当前日志级别低于 aLogLevel,则此函数不会发出任何日志消息。

aPlatModuleName 名称用于确定所发出的日志消息中的日志模块名称,采用 P-{PlatModuleName}--- 格式。这意味着,系统会添加前缀字符串“P-”以表明这是一个平台子模块,后跟 PlatModuleName 字符串的后续 12 个字符,并在末尾添加填充连字符 -,以确保区域名称的长度为 14 个字符。

具体说明
参数
[in] aLogLevel
日志级别。
[in] aPlatModuleName
平台子模块名称。
[in] aFormat
格式字符串。
[in] ...
表示格式规范的参数。

otLogPlatArgs

void void otLogPlatArgs(
  otLogLevel aLogLevel,
  const char *aPlatModuleName,
  const char *aFormat,
  va_list aArgs
)

使用平台模块名称在指定的日志级别发出日志消息。

这是供平台使用的。如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORM 或当前日志级别低于 aLogLevel,则此函数不会发出任何日志消息。

aPlatModuleName 名称用于确定所发出的日志消息中的日志模块名称,采用 P-{PlatModuleName}--- 格式。这意味着,系统会添加前缀字符串“P-”以表明这是一个平台子模块,后跟 PlatModuleName 字符串的后续 12 个字符,并在末尾添加填充连字符 -,以确保区域名称的长度为 14 个字符。

具体说明
参数
[in] aLogLevel
日志级别。
[in] aPlatModuleName
平台子模块名称。
[in] aFormat
格式字符串。
[in] aArgs
表示格式规范的参数。

otLogWarnPlat

void void otLogWarnPlat(
  const char *aFormat,
  ...
) OT_TOOL_PRINTF_STYLE_FORMAT_ARG_CHECK(1

发出警告日志级别的日志消息。

适用于特定平台。如果未设置 OPENTHREAD_CONFIG_LOG_PLATFORM,或当前日志级别低于警告,则此函数不会发出任何日志消息。

具体说明
参数
[in] aFormat
格式字符串。
[in] ...
表示格式规范的参数。

otLoggingGetLevel

otLogLevel otLoggingGetLevel(
  void
)

返回当前日志级别。

如果启用了动态日志级别功能 OPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE,则此函数会返回当前设置的动态日志级别。否则,此函数会返回构建时配置的日志级别。

具体说明
返回值
日志级别。

otLoggingSetLevel

otError otLoggingSetLevel(
  otLogLevel aLogLevel
)

设置日志级别。

具体说明
参数
[in] aLogLevel
日志级别。
返回值
OT_ERROR_NONE
已成功更新日志级别。
OT_ERROR_INVALID_ARGS
日志级别值无效。

OT_LOG_HEX_DUMP_LINE_SIZE

 OT_LOG_HEX_DUMP_LINE_SIZE 73

十六进制转储行字符串大小。

资源

OpenThread API 参考文档源自 GitHub 上提供的源代码。如需了解详情,或者为我们的文档做贡献,请参阅资源