Log4cpp是一个开源日志跟踪项目,在c环境中运行。
由于Java的日志处理跟踪项目log4j的效果很好,所以将其移植到c中,维持了API上的一致性。 该类的支持库还包括c(log4c )、python (log4p )和c# (log4net )等。 因为以前使用过log4net,所以与此相比,感觉log4cpp的使用还很复杂。
目前涉及的问题很少,主要使用Log4cpp的类别、Appender、Layout、布局)三个方面,涉及优先级)、嵌套诊断上下文(NDC )等
2下载
如果想使用log4xx,可以从以下地址下载。
下载到:
三解冻与编译
下载后,先解压缩。 在linux环境中,执行以下语句(本人下载的log4cpp-1.1.2rc1.tar.gz版本) :
tar zxvf log4cpp-1.1.2rc1.tar.gz
解压缩后,编译过程开始。 在windows系统上,可以找到并打开相应的vs版本环境,然后删除除log4cppLib和log4cpp目录外的所有测试XXX解决方案。 如果不删除,将报告错误。 如果是linux系统,则进入解压缩后的文件,执行以下命令即可。
./configure
化妆
制造安装
四生成结果
在windos中成功编译后,将生成与log4cppLib或log4cpp调试目录下对应的lib文件,即log4cpp.lib和log4CPD.lib,以供将来的编程使用
linux编程成功后,将在/usr/local/lib/目录下生成liblog4cpp.so。 默认值
五简单的demo
在配置文件log4cpp.conf中说明配置。 具体构成如下。
#log4cpp配置文件
定义根目录属性
log4cpp.rootCategory=DEBUG,RootLog
定义根日志属性
log4CPP.appender.root log=file appender
log4CPP.appender.root log.filename=e :
log4CPP.appender.root log.layout=pattern layout
log4CPP.appender.root log.layout.conversion pattern=% d [ % p ]-% m
配置完成后,可以将其加载到代码中。 具体代码如下。
log4CPP :3360属性配置器:配置器('./log4CPP.conf ';
然后,log4CPP :3360 category root=log4CPP 33603360 category 33603360 get root (; 获得了具体的category对象。 log4cpp
最后一次使用root.info(“thisisatest!” );
六题
在linux环境中,您可能会遇到各种奇怪的问题。 简单总结如下。
首先,使用g命令编译时,可能会发生链接错误。 对于这个问题,我尝试了各种各样的方法,但是鸡蛋很少被使用。 编译时使用-l参数指定log4cxx命名空间。 具体如下。
g -llog4ccpp -o demo.out demo.cpp
这将生成demo.out可执行文件。
在执行过程中,还发生了以下错误:
./demo.out : errorwhileloadingsharedlibraries 3360 liblog4CPP.so.10: cannotopensharedobjectfile 3360 nosuchfileordile
此问题是由于未设置LD_LIBRARY_PATH环境变量,可以通过运行以下命令来解决:
导出LD _ library _ path=/usr/local/lib
七总结
log4cpp的学习过程还在进行中,今后也会继续更新。
本文来自电脑杂谈,转载请注明正文网站:
http://www.pc-朴素的期待.com/a/jisuanji Xue/article-23408-1.html