log4cpp学习笔记

这篇博客介绍了开源C++日志库log4cpp,它提供多渠道日志记录功能,如文件、回滚文件等。文章涵盖了log4cpp的简介、编译步骤及一个简单的使用示例,包括Appender、Category和Layout的概念。通过配置文件,可以自定义日志输出位置和格式。
摘要由CSDN通过智能技术生成

一.简介

Log4cpp是一个开源的C++类库,它提供了在C++程序中使用日志和跟踪调试的功能。
使用log4cpp,可以很便利地将日志或者跟踪调试信息写入字符流、内存字符串队列、文件、回滚文件、调试器、Windows日志、syslog和远程syslog服务器中。
更多介绍请阅读官网:
http://log4cpp.sourceforge.net/

二.编译

1.编译程序时记得加上 -llog4cpp -lpthread
log4cpp是线程安全的,调试多线程程序十分好用(多线程用printf调试听说会挂起线程,效率低下)

三.简单示例

log4app使用单例模式。

  • Appender可以定位日志输出信息 ,如console,或保存到文件中
  • Category可以有不同的输出种类,Root是根输出,可以创建子输出,分别对应到不同的输出位置。
  • Layout是输出格式,其子类PatternLayout可以自定义
#include<iostream>
#include"log4cpp/Category.hh"
#include"log4cpp/FileAppender.hh"
#include"log4cpp/OstreamAppender.hh"
#include"log4cpp/Layout.hh"
#include"log4cpp/BasicLayout.hh"
#include"log4cpp/Priority.hh"

using namespace std;

int main(int argc,char *argv[]) {
    log4cpp::Appender *appender1 = new log4cpp::OstreamAppender("console",&std::cout);
    appender1->setLayout(new log4cpp::BasicLayout());

    log4cpp::Appender *appender2 = new log4cpp::FileAppender("default","program.log");
    appender2->setLayout(new log4cpp::BasicLayout());

    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值