如何使用log4c滚动日志?

时间:2009-03-05 10:09:26

标签: c logging

有人可以告诉我如何使用log4c API库的滚动日志功能吗?

只有它提供的功能的文档,而且有很多。

如果有人使用log4c滚动日志,那么很高兴看到如何配置并使用它。

2 个答案:

答案 0 :(得分:10)

.log4crc文件中添加以下内容:

<rollingpolicy name="myrollingpolicy" 
               type="sizewin"
               maxsize="1024"
               maxnum="10"
               />
<appender name="myrollingfileappender"
          type="rollingfile"
          logdir="."
          prefix="myprefix"
          layout="dated"
          rollingpolicy="myrollingpolicy"
          />

然后你用以下方式进行正常记录:

#include <stdio.h>
#include "log4c.h"

int main(int argc, char** argv) {
  int rc = 0;
  log4c_category_t* mycat = NULL;

  if (log4c_init()) {
    printf("log4c_init() failed");
    rc = 1;  
  } 
  else{
      mycat = log4c_category_get("log4c.examples.helloworld");

      log4c_category_log(mycat, LOG4C_PRIORITY_ERROR, "Hello World!");

    /* Explicitly call the log4c cleanup routine */
    if ( log4c_fini()){
      printf("log4c_fini() failed");
    }
  }
  return 0;
}

log4c source code

的示例中提供了这些内容

答案 1 :(得分:0)

由于这是一个3个月大的问题,只是想知道维基百科页面是否被试过 - http://en.wikipedia.org/wiki/Log4c#Development_with_Log4C