日志系统在系统开发和调整过程中的重要性,大家应该都清楚,特别是项目出问题之后,却没有日志可以帮忙定位问题,就非常令人痛苦。
因为我们不可能一直通过调试器去单步调试程序,所以设备的运行日志显得尤为重要。
通常我们对日志有这些要求:
- 不同的日志级别(
Debug
,Warning
,Info,
Error
,Fatal
); - 日志打印要和
printf
一样简单易用; - 能够设置日志级别;
- 占用空间小;
- 可配置,甚至可以禁用日志;
- 基于不同日志级别,支持颜色高亮;
- 可以自定义配置,时间戳;
- 支持RTOS;
以上是比较基本的功能,但是在嵌入式设备中,有的时候我们希望可以保存设备的运行日志,我们需要以下的一些功能;
- 支持多种访问方式,比如串口终端,保存到嵌入式文件系统中;
- 支持shell命令行通过串口终端进行访问;
以上这些需求不一定会全部实现。
除了常用的log4c