标签列表
实现C++多进程日志记录的最佳方法
c++
logging
multiprocessing
3
3
我在寻找一种实现多进程日志记录的机制(跨平台解决方案,适用于 Windows 和 Linux)。目前,我只看到一种方法 - 使用带锁定的日志文件。锁定 - 写入,解锁。
但也许有人知道更好的方法?
-
Torsten
4
需要在同一文件中记录多个进程的日志输出吗?
- Andreas Fester
能否登录到数据库?
- BigMike
首先要寻找支持此功能的框架。例如,像日志记录这样的功能应该使用现成的组件。
- Thirler
在不同的操作系统中记录一个文件是一个很困难的要求,因此您需要在网络中设置一个日志服务器。仅仅进行锁定/解锁是不够的。
- harper
2
个回答
2
2
创建一个日志应用程序,并通过TCP套接字将日志条目发送到其中。
-
kol
回答链接
2
2
好的伙伴是生产者/消费者。
每个线程都在列表中排队。一个线程消费这个列表并将其写入文件。
-
log0
2
我考虑了一下,只看到一个潜在的问题 - 内存。这应该是共享的,而且我们有限制。如果某个应用程序产生了很多日志条目,则日志应用程序没有足够的内存来消耗它,一些日志条目将会丢失或被覆盖。
- Torsten
@Torsten 是的,但无论如何您都会遇到这个问题。如果在套接字中排队,则是相同的问题。但是,您可以使用某种自适应采样策略来处理该问题。例如,如果您接近队列的边界限制,则开始仅将 x% 的日志加入队列。
- log0
回答链接
网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接
相关问题
21
来自多进程Docker容器的日志记录
3
使用多线程+多进程的 Python 日志记录
3
Python多进程中的日志记录
6
记录日志的最佳方法是什么?
4
多进程日志记录:锁定 vs 队列
82
记录多进程处理的输出日志
6
多进程Python日志记录
10
使用多进程记录日志的疯狂方式
9
温斯顿:多进程日志记录
8
Python多进程+日志记录挂起