log4cxx配置文件讲解,以及测试程序
来源:互联网 发布:天窗玻璃 知乎 编辑:程序博客网 时间:2024/06/08 18:56
先看完整配置文件log4cxx.properties
log4j.additivity.gather = false log4j.rootLogger= debug, R, stdout//设置子loggerlog4j.logger.Lib_a =debug, ap1, stdoutlog4j.logger.Lib_b =debug, ap2, stdout#设置不继承父Loggerlog4j.additivity.Lib_a=false log4j.additivity.Lib_b=false log4j.appender.logfile.encoding=UTF-8 //标准输出,向控制台打印log4j.appender.stdout=org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n //Rootlog4j.appender.R=org.apache.log4j.RollingFileAppenderlog4j.appender.R.File=./hello.loglog4j.appender.R.MaxFileSize=100KBlog4j.appender.R.MaxBackupIndex=10log4j.appender.R.layout=org.apache.log4j.PatternLayoutlog4j.appender.R.layout.ConversionPattern==%d [%c]-[%p] %m%n log4j.appender.ap1=org.apache.log4j.RollingFileAppenderlog4j.appender.ap1.File=./hello_a.loglog4j.appender.ap1.MaxFileSize=100KBlog4j.appender.ap1.MaxBackupIndex=10log4j.appender.ap1.layout=org.apache.log4j.PatternLayoutlog4j.appender.ap1.layout.ConversionPattern==%d{yyyy-MM-dd} [%c]-[%p] %m%nlog4j.appender.ap2=org.apache.log4j.RollingFileAppenderlog4j.appender.ap2.File=./hello_b.loglog4j.appender.ap2.MaxFileSize=100KBlog4j.appender.ap2.MaxBackupIndex=10log4j.appender.ap2.layout=org.apache.log4j.PatternLayoutlog4j.appender.ap2.layout.ConversionPattern==%d{yyyy-MM-dd HH:mm:ss} [%c]-[%p] %m%n
// include log4cxx header files.#include <log4cxx/logger.h>#include <log4cxx/basicconfigurator.h>#include <log4cxx/helpers/exception.h>#include <log4cxx/propertyconfigurator.h>using namespace log4cxx;using namespace log4cxx::helpers;//LoggerPtr logger(Logger::getLogger("R"));LoggerPtr logger_lib_a(Logger::getLogger("Lib_a"));LoggerPtr logger_lib_b(Logger::getLogger("Lib_b"));int main(int argc, char **argv){ try { // Set up a simple configuration that logs on the console. PropertyConfigurator::configure("log4cxx.properties"); //LOG4CXX_INFO(logger, "test R") LOG4CXX_DEBUG(logger_lib_a, "test R.a") LOG4CXX_DEBUG(logger_lib_b, "test R.b") } catch(...) { } return 0;}
注意事项:
1.
log4j.rootLogger= debug, R, stdout
//设置子logger
log4j.logger.Lib_a =debug, ap1, stdout
log4j.logger.Lib_b =debug, ap2, stdout
在这里rootLogger,“L”要大写,下面设置子logger,“l”要小写,这个仿佛是log4cxx规定的。
2.
#设置不继承父Logger
log4j.additivity.Lib_a=false
log4j.additivity.Lib_b=false
这里一定要设置继承关系为非继承,否则子logger设置的属性就白设置了
3.
//设置子logger
log4j.logger.Lib_a =debug, ap1, stdout
log4j.logger.Lib_b =debug, ap2, stdout
子logger要加上stdout,否则会没有控制台打印,stdout设置如下
//标准输出,向控制台打印
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n
4.
LoggerPtr logger_lib_a(Logger::getLogger("Lib_a"));
LoggerPtr logger_lib_b(Logger::getLogger("Lib_b"));
获取logger的时候一定要用append的名,如上。
- log4cxx配置文件讲解,以及测试程序
- Log4cxx配置文件介绍
- Log4cxx配置文件介绍
- 第二章 Log4cxx基本概念讲解
- 程序配置文件格式测试
- struts2讲解以及示例程序
- mybatis讲解以及示例程序
- log4cxx配置文件(log4cxx.properties文件)详解 --调整日志输出级别
- C++ log4cxx日志打印配置文件详解
- Log4cxx
- Log4cxx
- LOG4CXX
- log4cxx
- log4cxx
- log4cxx
- log4cplus配置文件、包装类、测试程序示例
- log4CXX第二篇---配置文件(properties文件)详解
- log4CXX第二篇---配置文件(properties文件)详解
- linux下修改cramfs文件系统中文件
- Haar分类器
- android ndk使用gcc4.7 toolchain编译项目
- LVM磁盘管理
- 多播与广播
- log4cxx配置文件讲解,以及测试程序
- 如何让android程序完全退出
- javascricpt 中Array数组的(last)indexOf(searching[,(startForm)]) 中startForm的详解
- C/C++程序内存分配详解
- 菜鸟之旅——Java入门篇(五)继承
- C#--网络流Stream、字节数组保存到字符串中
- libevent example
- Android ADT中增大AVD内存后无法启动:emulator failed to allocate memory 8
- FastReport问题整理