G3log 是一个开源、支持跨平台的异步 C++ 日志框架,支持自定义日志格式。基于 g2log 构建,提升了性能,支持自定义格式。
G3log 主要特性:
日志和契约式设计框架
异步调用
线程安全
队列式日志
捕获和记录 SIGSEGV 以及其他严重的信号
在 Linux/OSX 上严重的信号会生成堆栈记录
G3log 跨平台,支持 Windows, Linux 和 OSX
G3log 可使用 Visual Studio 2013, Clang 和 GCC4.7 构建。
示例代码:
int less = 1; int more = 2 LOG_IF(INFO, (less<more)) <<"If [true], then this text will be logged"; // or with printf-like syntax LOGF_IF(INFO, (less<more), "if %d<%d then this text will be logged", less,more);