b2科目四模拟试题多少题驾考考爆了怎么补救
b2科目四模拟试题多少题 驾考考爆了怎么补救

log4cpp_log4qt_log4cpp全局对象

电脑杂谈  发布时间:2016-12-26 04:00:47  来源:网络整理

log4qt_log4cpp_log4cpp全局对象

简介: log4cpp是个基于LGPL的开源项目,是基于优秀的日志处理跟踪项目Java语言的log4j移植过来的。log4j介绍的文档很多,在java领域使用的也比较广泛,而这个功能强大的库对国内的C++语言开发人员却使用的不多。这里从开发人员使用的角度介绍这个库,使开发人员用最少的代价尽快掌握这种技术。下面先简单介绍一下这个项目的优点(也是log4j的优点),然后分原理,手动使用步骤,配置文件驱动方式使用步骤,其他考虑等方面进行讨论。以下讨论基于log4cpp0.3.4b。

优点:

提供应用程序运行上下文,方便跟踪调试;

可扩展的、多种方式记录日志,包括命令行、文件、回卷文件、内存、syslog服务器、Win事件日志等;

可以动态控制日志记录级别,在效率和功能中进行调整;

所有配置可以通过配置文件进行动态调整;

多语言支持,包括Java(log4j),C++(log4cpp、log4cplus),C(log4c),python(log4p)等;

1. 原理

log4cpp有3个主要的组件:categories(类别)、appenders(附加目的地)、和 layouts(布局)。(为了方便大家理解,文中尽量使用英文原词)

layout类控制输出日志消息的显示样式(看起来像什么)。log4cpp当前提供以下layout格式:

log4cpp::BasicLayout     // 以“时间戳 优先级(priority,下文介绍)
// 类别(category,下文介绍)
// NDC标签(nested diagnostic contexts 下文介绍): 日志信息”。
// 如:1056638652 INFO main : This is some info log4cpp::PatternLayout
// 让用户根据类似于 C 语言 printf 函数的转换模式
//来指定输出格式。格式定义见代码附带文档。
log4cpp::SimpleLayout
// 以“优先级(priority) - 日志信息”格式显示。

appender类用来输出日志(被layout格式化后的)到一些设备上。比如文件、syslog服务、某个socket等。可以定义自己的appender类输出日志信息到别的设备上,比如应用自身的日子处理进程、等。appender和layout的关系是layout附在appender上,appender类调用layout处理完日志消息后,记录到某个设备上。log4cpp当前提供以下appender:

log4cpp::IdsaAppender        	// 发送到IDS或者logger, 详细见 http://jade.cs.uct.ac.za/idsa/
log4cpp::FileAppender       	// 输出到文件
log4cpp::RollingFileAppender    // 输出到回卷文件,即当文件到达某个大小后回卷
log4cpp::OstreamAppender     	// 输出到一个ostream类
log4cpp::RemoteSyslogAppender   // 输出到远程syslog服务器
log4cpp::StringQueueAppender   // 内存队列
log4cpp::SyslogAppender     	// 本地syslog
log4cpp::Win32DebugAppender   	// 发送到缺省系统调试器
log4cpp::NTEventLogAppender   	// 发送到win 事件日志


本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-23406-1.html

相关阅读
    发表评论  请自觉遵守互联网相关的政策法规,严禁发布、暴力、反动的言论

    热点图片
    拼命载入中...