log4cpp简明教程
log4cpp是一款c++开源的日志库,我也是刚刚使用,所以对它的了解不是很多。这是第一次在项目中使用log4cpp,当然我在c++方面的项目经验也是屈指可数。这篇文章会是一个简明的教程,方便类似我这样的新手可以快速入门,不会有太高深的内容。log4cpp相关的背景和特点这里也不再多说,感兴趣的可自行查找资料。
基本步骤
1、实例化1个appender对象
2、实例化1个layout对象,并将layout绑定到appender
3、获得Category并设置优先级和添加apprender
4、调用Category写日志
参考代码
这是1个根据日期划分日志文件的简单样例。main.cpp代码
#include <iostream> #include <log4cpp/Category.hh> #include <log4cpp/PatternLayout.hh> #include <log4cpp/DailyRollingFileAppender.hh> using namespace std; using namespace log4cpp; int main() { DailyRollingFileAppender *appender = new DailyRollingFileAppender( string("default"), string("/Users/king/c_project/logger/build/log/data.log") ); string patter = "%d[%p] %m%n"; PatternLayout *layout = new PatternLayout(); layout->setConversionPattern(patter); appender->setLayout(layout); Category& root = Category::getRoot(); root.addAppender(appender); root.info("This is test."); root.error("sql error."); cout << "done!" << endl; return 0; }
这里保存目录如果要指定日志保存目录,请使用绝对路径。
编译链接
c++ main.cpp -o logger -llog4cpp ./logger
近期评论