EasyLogger
介绍
EasyLogger是一款超轻量级(ROM<1.6K, RAM<0.3K)、高性能的 C 日志库,非常适合对资源敏感的软件项目,例如: IoT 产品、可穿戴设备、智能家居等等。相比 log4c 、 zlog 这些知名的 C 日志库, EasyLogger 的功能更加简单,提供给用户的接口更少,但上手会很快,更多实用功能支持以插件形式进行动态扩展。
主要特性
- 支持用户自定义输出方式(例如:终端、文件、数据库、串口、 485 、 Flash...);
- 日志内容可包含级别、时间戳、线程信息、进程信息等;
- 日志输出被设计为线程安全的方式;
- 支持多种操作系统(RT-Thread、 UCOS 、 Linux 、 Windows...),也支持裸机平台;
- 日志支持 RAW 格式 ;
- 支持按 标签 、 级别 、 关键词 进行动态过滤;
- 扩展性强,支持以插件形式扩展新功能。
名词解释: 1 、 RAW 格式:未经过格式化的原始日志。 2 、标签:在软件中可以按照文件、模块、功能等方面,对需要打印的日志设定标签,实现日志分类。
插件
- 1 、 Flash :使用EasyFlash库提供的 Flash 操作接口,可以把日志直接存储在 Flash 中。
- 2 、 File (正在开发):支持文件转档、软件运行时动态加载配置文件等与文件日志输出相关功能。
- 3 、敬请期待……
Star & Fork
后续我还会提供更多插件。也非常欢迎大家设计、开发更多实用插件和功能,一起来完善 EasyLogger (Github|OSChina|Coding) 。如果觉得这个开源项目很赞,可以点击项目主页 右上角的Star,同时把它推荐给更多有需要的朋友。
欢迎大家试用并吐槽,项目详见: https://github.com/armink/EasyLogger