如果 rsyslog 填满了命名管道,它会做什么?

如果 rsyslog 填满了命名管道,它会做什么?

我正在开发一个 C 应用程序,旨在监视和处理 rsyslog 的输出。我的研究表明,实现此目的的一种方法是创建一个命名管道,然后创建一个指向该命名管道的新系统日志目标。然后我的 C 应用程序将打开这个命名管道并从中读取。

但是,假设我的 C 应用程序从命名管道读取的速度不够快,导致 syslog 填满 fifo 缓冲区。 syslog 到底有什么作用?它是否创建并维护内部缓冲区?或者它只是开始丢弃新消息?

我的应用程序并不是非常关键,因此理想情况下 syslog 只会开始丢弃消息,而不是开始用缓冲数据或其他东西堵塞系统。

相关内容