- log4cplus
- zlog
- libglog
zlog是什么?
最新源码下载:https://github.com/HardySimpson/zlog
zlog是一个高可靠性、高性能、线程安全、灵活、概念清晰的纯C日志函数库。
事实上,在C的世界里面没有特别好的日志函数库(就像JAVA里面的的log4j,或者C++的log4cxx)。C程序员都喜欢用自己的轮子。printf就是个挺好的轮子,但没办法通过配置改变日志的格式或者输出文件。syslog是个系统级别的轮子,不过速度慢,而且功能比较单调。
所以我写了zlog。
zlog在效率、功能、安全性上大大超过了log4c,并且是用c写成的,具有比较好的通用性。
zlog有这些特性:
- syslog分类模型,比log4j模型更加直接了当
- 日志格式定制,类似于log4j的pattern layout
- 多种输出,包括动态文件、静态文件、stdout、stderr、syslog、用户自定义输出函数
- 运行时手动、自动刷新配置文件(同时保证安全)
- 高性能,在我的笔记本上达到25万条日志每秒, 大概是syslog(3)配合rsyslogd的1000倍速度
- 用户自定义等级
- 多线程和多进程环境下保证安全转档
- 精确到微秒
- 简单调用包装dzlog(一个程序默认只用一个分类)
- MDC,线程键-值对的表,可以扩展用户自定义的字段
- 自诊断,可以在运行时输出zlog自己的日志和配置状态
- 不依赖其他库,只要是个POSIX系统就成(当然还要一个C99兼容的vsnprintf)
相关链接:
软件下载: https://github.com/downloads/HardySimpson/zlog/zlog-latest-stable.tar.gz
源代码: git@github.com:HardySimpson/zlog.git
使用手册(pdf): https://github.com/downloads/HardySimpson/zlog/UsersGuide-CN.pdf
问题讨论区: https://github.com/HardySimpson/zlog/issues
英文主页: http://hardysimpson.github.com/zlog/
中文主页: http://www.oschina.net/p/zlog
作者博客: http://my.oschina.net/HardySimpson/blog
邮箱: HardySimpson1984@gmail.com
其他资料
原文地址:zlog使用手册