与多线程一起登录多进程应用程序

Logging in a multiprocess application along with multithreading

本文关键字:多进程 应用程序 登录 一起 多线程      更新时间:2023-10-16

我正在为一个多进程应用程序寻找日志记录功能,该应用程序在每个进程中也包含多个线程。

我当前的应用程序仅是多线程的,并使用ACE_Message_Queue向记录器线程发送日志事件(实际的日志消息通过全局数组在应用程序线程和记录器线程之间共享)。

我的新应用程序包含多个进程,每个进程中都有多个线程。在这种情况下,我如何实现良好的日志记录功能?还希望摆脱ACE,转而支持Boost。我的新应用程序应该在Linux、Mac和Windows上运行。

提前谢谢。

Boost.Log(v2)非常容易设置,而且非常全面。它还没有出现在boost库中,但很快就会出现。您可以将其用作一个简单的记录器,或者编写过滤器并自定义日志记录过程和输出。我正在把它用于一个项目,非常非常满意。看看这个问题。

尝试使用log4cplus。它是一个最新的日志库,允许从多个进程使用。

我有一个博客来展示我对这个问题的日志记录实践:http://peihanw.blogspot.com/2012/08/my-answer-to-stackoverflows-question.html