我正在使用用 C++ 编写的实时系统。我们希望使用 boost 或 pantheios 进行日志记录。该系统有一些标准的日志记录要求,我相信任何一个框架都可以满足这些要求,但除此之外,我们还希望能够记录该系统捕获的所有输入。此输入将被多个线程捕获,包括一些具有实时约束并且无法承受低效日志记录的显着延迟的线程。这应该会导致要记录的数据的高吞吐量。
我主要想知道是否可以信任任何一个框架来管理来自多个线程的如此高吞吐量的日志记录,而不会延迟我的时间关键线程。此外,我们可能需要进行一些数据清理,这将需要添加某种钩子,该钩子能够识别具有安全数据的捕获输入,运行我们的数据清理钩子,并维护一个包含已清理值映射的缓冲区。
我相信这两个日志平台都可以做到这一点,但是快速浏览一下它们的 API 并不清楚。任何使用过这两种日志工具的人都可以给我一些反馈,说明它们在这种情况下的效率如何,实现我所描述的内容有多容易,或者他们在两个日志框架之间的偏好?真的任何信息都会有用。
谢谢