c - 从 err(3) 函数创建日志文件

标签 c logging error-handling

我有一个程序,它使用 err、errx、warn 和 warnx 来警告用户一些意外事件。现在我必须将此程序变成守护程序,因此这些警报应该发送到格式良好的日志中。

我已使用 freopen(3) 将 stdout 和 stderr 重定向到一个文件,但这在日志中没有提供足够的信息。例如,我需要错误的日期和时间。

有没有一种方便的方法可以使用 err(3) 函数来做到这一点,或者我应该放弃使用这些函数吗?

最佳答案

您可能想为相关函数编写包装器。这些包装器将必要的信息添加到日志消息中,然后在内部调用原始函数。

关于如何编写包装器,请阅读 another answer of mine here并根据您的需求采用该概念。

关于c - 从 err(3) 函数创建日志文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17988886/

相关文章:

c - 为什么需要在 Visual Studio 2010 中将 FILE 指针声明为 main()?

c - ioctl 和执行时间

c# - 在 C# 中捕获 MySQL 触发信号

python - “urllib.error.HTTPError: HTTP Error 404: Not Found” Python

hadoop - 使用 Apache Pig Latin 对数据进行条件求和

vba - 出错时退出子程序并将错误返回给调用错误子程序的子程序

c - "return i++, i, i++;"在 C 中是未定义的行为吗?

c - 微软 Visual Studio 2010

logging - 如何在SAS中记录当前步骤?

c# - 对于 C# 日志记录,如何以最小的开销获取调用堆栈深度?