gpt4 book ai didi

c - 为什么 syslog.h 会跳过我的 C 程序中的日志消息?

转载 作者:行者123 更新时间:2023-11-30 15:44:47 25 4
gpt4 key购买 nike

我有一个由 libev 事件循环组成的 C 程序。对于其中一个观察者来说,有一个内部循环会产生 100 多条日志消息(每条消息约 200 个字符长)。由于某种原因,只有三分之一的消息会写入日志文件。程序不退出。我可以通过数据看出观察者成功完成了内部循环,它不会默默地失败。

作为一个有趣的变化,如果我在每个 syslog 调用之后插入一个 printf 语句,所有日志消息都会很好地保存到日志文件中。

如何解决这种奇怪的行为?当然,我希望所有系统日志调用都会在日志文件中产生等效的条目。

我不能随意提供示例代码,但所有调用都是完全普通的系统日志调用。在程序的其他地方,它们工作得很好。

如果重要的话,我在 OSX 10.7.5 中的 VirtualBox VM 中通过 OSX 终端中的 ssh 使用 Debian 7 (gcc 4.7.2-5)。

最佳答案

所以这就是 rsyslog 启动的消息速率限制。按照 here 更改默认值使问题消失。

关于c - 为什么 syslog.h 会跳过我的 C 程序中的日志消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19333069/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com