POCO 日志使用方式

POCO是POrtable COmponent的缩写,直接翻译成中文叫做可移植组件,是一个以网络为中心的开发框架。在精简版开发包中,仅包含4个基本模块:

 

  1. Foundation
  2. Util
  3. Net
  4. XML

 

Logger是Foundation模块中很重要的一个模块。在使用Logger之前,先看一下附件中Logger的结构。从结构可以看出,Logger是从Channel继承而来,并且其构造函数属性还是私有。也就是说我们不能通过 new 方法创建Logger对象。

从Channel继承的类有:ConsoleChannel, EventLogChannel, FileChannel, FormattingChannel, Logger, NullChannel, OpcomChannel, SimpleFileChannel, SplitterChannel, StreamChannel, SyslogChannel, WindowsConsoleChannel。

这么多Channel,在程序中记日志该用哪个类?看每一个Channel的说明,在FormattingChannel中可以看到:The FormattingChannel is a filter channel that routes a Message through a Formatter before passing it on to the destination channel. 也就是说FormattingChannel是一个过滤通道,它通过一个消息格式器发送消息到目标通道。从这句话可以知道,在POCO中记录日志的方法是先创建一个消息格式器(Formatter),创建一个使用格式器的FormattingChannel,最后为该FormattingChannel设置目标通道。

从方法名可以看出,只有Logger类有log方法,因此还需要用刚才创建的FormattingChannel创建一个Logger。至此大功告成,可以简单的调用log方法记录日志了。

开发人员可以方便的修改日志格式,也可以方便的将日志内容记录到文件,屏幕或者系统日志。

具体的例子可以参看Foundation/samples/Logger/src/Logger.cpp

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值