这段文字介绍了eProsima Fast DDS中的日志记录宏及其使用方法,具体如下:
日志记录宏
在该系统中,有三个专门的宏用于处理日志消息,每个宏对应一个可用的日志详细级别(Verbosity Level):
- EPROSIMA_LOG_INFO:用于记录信息级别的日志,类型为
Log::Kind::Info
。 - EPROSIMA_LOG_WARNING:用于记录警告级别的日志,类型为
Log::Kind::Warning
。 - EPROSIMA_LOG_ERROR:用于记录错误级别的日志,类型为
Log::Kind::Error
。
每个宏都需要两个参数:
- 类别(Category):表示日志条目的分类,可以帮助组织和过滤日志。
- 消息(Message):实际要记录的信息内容。
示例用法
以下是如何使用这些宏来记录不同级别的消息的示例:
EPROSIMA_LOG_INFO(DOCUMENTATION_CATEGORY, "This is an info message");
EPROSIMA_LOG_WARNING(DOCUMENTATION_CATEGORY, "This is a warning message");
EPROSIMA_LOG_ERROR(DOCUMENTATION_CATEGORY, "This is an error message");
在调用这些宏时,它们会生成包含指定消息和一些元信息(例如时间戳、类别等)的日志条目。这些元信息取决于模块的配置。
旧版日志宏
除了新的日志宏外,系统还保留了一些旧版日志宏,这些是在之前版本中使用的:
logInfo
logWarning
logError
这些旧版宏仍然可以使用,但用户如果希望禁用它们,可以通过设置 CMake 选项 ENABLE_OLD_LOG_MACROS
或在包含 Log 模块之前定义内联宏 ENABLE_OLD_LOG_MACROS_
来实现。有关更多信息,请参见“Old Log macros disable”部分。
警告提示
- 如果 CMake 中设置了选项
LOG_NO_INFO
,LOG_NO_WARNING
或LOG_NO_ERROR
为 ON,则相应的信息级别将被禁用。这意味着那些特定级别的日志将不会被输出。有关如何启用或禁用各个单独 logging 宏的信息,请参考“Disable Logging Module”部分。
总结
总结来说,这段文字说明了eProsima Fast DDS中的三种主要日志记录机制,以及如何利用这些机制进行有效地调试和监控应用程序。此外,它还提到了一些兼容性方面的信息,如支持旧版ログマクロ以及对CMake选项的配置影响。这样,开发者可以根据需求灵活选择是否使用新旧版本的宏,并能控制不同严重程度下的信息输出。
内容由零声教学AI助手提供,问题来源于学员提问