在C编程上存储日志/错误消息

发生错误时,我希望我的C代码在退出程序之前存储错误.是否建议将stderr存储到文件(例如/home/logs.txt),或者建议使用不同的方法来保存日志/错误报告(考虑编程环境是Linux).例如,对于下面的代码,我如何应用该方法在/home/log.txt或/ home / log上存储日志/错误消息

FILE *fp1;
fp1 = fopen("/sys/class/gpio/export","w"); 
if(fp1 == NULL){
    fprintf(stderr, "errno:%s - opening GPIO136 failed - line 739\n ", strerror(errno));
    close(fp1);
    exit(1);
}

谢谢.

解决方法:

如果始终使用stderr打印出所有错误消息,则可以将输出重定向到特定文件.

$program 2>~/logs.txt

要获得更好的日志记录工具,您可以使用:

> syslog标准功能.
> log4c图书馆.

上一篇:执行命令,粘包问题


下一篇:如何更改PHP-FPM错误日志的格式?