如何在C中写日志文件

时间:2010-07-01 08:34:45

标签: c logging

我想在C程序中编写logfile。我还希望它每天添加带有tempstamp的新日志文件。

你有想法,还是有图书馆?

3 个答案:

答案 0 :(得分:1)

有C的日志记录库,例如log4c

答案 1 :(得分:0)

试试这个log4cpp。 这是用C编写的简单日志文件创建。

/*Write your won logfile in c.*/
#include <stdio.h>
#define LOG(X, Y) fprintf (fp, #X ": Time:%s, File:%s(%d) " #Y  "\n", __TIMESTAMP__, __FILE__, __LINE__)

int main(int args, char **argv)
{
    FILE *fp= fopen("logfile.txt", "w"); //("c:\\temp\\logfile.txt")

    LOG(INFO, "File open success.");
    LOG(WARN, "File path missing.");
    LOG(ERROR, "File close faild.");

    fclose(fp);
return 0;
}

答案 2 :(得分:-1)

您是否要将程序的输出写入日志文件? 这是在编写大型应用程序时完成的,您需要分析日志以了解软件的确切行为。 在这种情况下,您可能希望将输出重定向到日志文件,然后再进行读取和分析。 如果你不想使用任何标准的日志库,你可能必须编写一个守护进程来捕获输出并创建一个日志文件。

我引用假设您要创建文件日志实用程序。