+ -
当前位置:首页 → 问答吧 → 求助:log4cplus的使用中,如何消除产生的多余的重复信息?

求助:log4cplus的使用中,如何消除产生的多余的重复信息?

时间:2011-12-13

来源:互联网

下面是一个例子程序:
#include "stdafx.h"
#include <string>

#include <log4cplus/logger.h>//定义Log对象
#include <log4cplus/consoleappender.h>//输出到控制台
#include <log4cplus/layout.h>//输出格式
#include <log4cplus/configurator.h>

using namespace std;
using namespace log4cplus;
using namespace log4cplus::helpers;


int _tmain(int argc, _TCHAR* argv[])
{
for (int i=0; i<5; i++)
{
//定义控制台Appender
SharedAppenderPtr pConsoleAppender(new ConsoleAppender());

  //定义Layout,并绑定到Appender上
log4cplus::tstring pattern = LOG4CPLUS_TEXT("%D{%Y/%m/%d %X} %p %% %m %% %n");
pConsoleAppender->setLayout(std::auto_ptr<Layout>(new PatternLayout(pattern)));

//定义Logger
Logger pTestLogger = Logger::getInstance(LOG4CPLUS_TEXT("LoggerName"));

//设置Logger优先级
pTestLogger.setLogLevel(INFO_LOG_LEVEL);

//将需要关联Logger的Appender添加到Logger上
pTestLogger.addAppender(pConsoleAppender);

char c[10];
itoa(i+1, c, 10);
string strItoStr = c;

//输出日志信息
LOG4CPLUS_INFO(pTestLogger, strItoStr);

}
return 0;
}

输出结果为:
2011/12/13 08:54:28 INFO % 1 %
2011/12/13 08:54:28 INFO % 2 %
2011/12/13 08:54:28 INFO % 2 %
2011/12/13 08:54:28 INFO % 3 %
2011/12/13 08:54:28 INFO % 3 %
2011/12/13 08:54:28 INFO % 3 %
2011/12/13 08:54:28 INFO % 4 %
2011/12/13 08:54:28 INFO % 4 %
2011/12/13 08:54:28 INFO % 4 %
2011/12/13 08:54:28 INFO % 4 %
2011/12/13 08:54:28 INFO % 5 %
2011/12/13 08:54:28 INFO % 5 %
2011/12/13 08:54:28 INFO % 5 %
2011/12/13 08:54:28 INFO % 5 %
2011/12/13 08:54:28 INFO % 5 %

希望输出的结果为:
2011/12/13 08:54:28 INFO % 1 %
2011/12/13 08:54:28 INFO % 2 %
2011/12/13 08:54:28 INFO % 3 %
2011/12/13 08:54:28 INFO % 4 %
2011/12/13 08:54:28 INFO % 5 %

为何每次都会重复产生比上一次多一次的重复结果呢?如果将此作为一个函数被工程调用的话,会生成很多重复的结果,该如何修改才能产生希望的结果呢?望高手指点,谢谢!

作者: fengbingchun   发布时间: 2011-12-13

该回复于2011-12-13 09:08:21被管理员删除

  • 对我有用[0]
  • 丢个板砖[0]
  • 引用
  • 举报
  • 管理
  • TOP
  • ddlddy
  • (君子好色而不淫,淫则恶心生!)
  • 等 级:
#2楼 得分:0回复于:2011-12-13 09:16:53
帮顶,我那个也有类似的问题,但是我都不考虑了,因为那个项目也没人怎么管了,呵呵!
同时关注一下,看看怎么解决!
:)

作者: dahuaixiaohuai   发布时间: 2011-12-13

我以前也没注意到这个问题,当把它应用到项目中去时才发现,会生成越来越多的重复信息。该如何解决呢?
望高手们指点,谢谢!

作者: ddlddy   发布时间: 2011-12-13

高手们帮帮忙呀,难道你们没有遇到过类似的问题吗?

作者: fengbingchun   发布时间: 2011-12-13