【Linux C++】log4cpp的使用

背景

想要记录程序输出到文件,方便出问题的时候复盘。

  1. 应该以配置文件为导向,具备时间、滚动、大小限制的功能。
  2. 能同时在console以及文件保存。

log4cpp

跳转:根据此网站学习
跳转:根据此网站可以查看API

实操

#1、解压
#2、配置
./configure --prefix=/opt/log4cpp-1.1.3 --with-pthreads
#3、编译和安装
make&&make install
#arm版本的编译 --host=arm-fsl-linux-gnueabi (arm-fsl-linux-gnueabi 交叉编译工具链前缀)
./configure --prefix=/opt/log4cpp-1.1.3-arm --with-pthreads --host=arm-fsl-linux-gnueabi 

安装后在安装目录生成
在这里插入图片描述

  1. 创建日志的种类,同时需要传入种类的默认优先级(DEBUG<INFO<WARN<ERROR)。我们通过’种类’直接调用来打印,比如设置了一个叫“sub1”的种类,我们就可以用sub1.debug(“message”)来打印“message”这个信息。
  2. 创建具体打印的输出器,并设置输出器的属性:
    1.输出方式。ConsoleAppender、FileAppender、RollingFileAppender
    2.输出的最低优先级。(INFO还是ERROR等)
    3.布局(输出的格式)类型。(特定的某一种布局类型(BasicLayout)。还是可以自定的布局类型(PatternLayout),然后自己来定制,比如按照“时间 [优先级] message”
    3.将设置好属性的输出器,传入’日志种类‘中去。

下面是常见的定制化输出格式的设定参数:

#Q自定义日志消息的可能格式字符是什么?(傻瓜翻译)
PatternLayout 支持以下一组格式字符:
%%- 百分比符号
%c - 类别
%d - 日期\n 日期格式:日期格式字符后跟大括号之间包含的日期格式指定器。例如,%d_%H:%M:%S,%l]%d_%d %m %Y %H:%M:%S,%l}。如果未提供日期格式指定器,则使用以下格式:"1 月 2 日星期三 02:03:55 1980"。日期格式指定器允许与 ANSI C 函数的稳稳时间相同的语法,并添加 1 个。添加的是毫秒的指定 %l,用零填充以产生 3 位数字。
%m - 消息
%n - 平台特定线路分隔符
%p - 优先级
%r - 创建此布局以来的毫秒数。
自 197011 日起的%R -%u - 进程开始以来的时钟刻度
%x - NDC
%t - 线程名称
默认情况下,模式布局的转换模式设置为"%m%n"
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值