<p align="center">
﷽
</p>
![banner]
> **Documentation for v9.97.1**
[![Tests](https://github.com/abumq/easyloggingpp/actions/workflows/run-tests.yml/badge.svg)](https://github.com/abumq/easyloggingpp/actions/workflows/run-tests.yml)
[![Node Binding Version](https://img.shields.io/github/release/abumq/easyloggingpp.svg)](https://github.com/abumq/easyloggingpp-node/releases/latest)
[![Version](https://img.shields.io/npm/v/easyloggingpp.svg)](https://www.npmjs.com/package/easyloggingpp)
[![GitHub license](https://img.shields.io/badge/license-MIT-blue.svg)](https://github.com/abumq/easyloggingpp/blob/master/LICENCE)
[![Downloads](https://img.shields.io/github/downloads/abumq/easyloggingpp/total.svg)](https://github.com/abumq/easyloggingpp/releases/latest)
### Quick Links
→ [Latest Release](https://github.com/abumq/easyloggingpp/releases/latest)
→ [Changelog](/CHANGELOG.md)
→ [Samples](/samples)
---
### Table of Contents
<pre>
<a href="#overview">Overview</a>
<a href="#why-yet-another-library">Why yet another library</a>
<a href="#features-at-a-glance">Features at a glance</a>
<a href="#getting-started">Getting Started</a>
<a href="#download">Download</a>
<a href="#quick-start">Quick Start</a>
<a href="#install-optional">Install (Optional)</a>
<a href="#setting-application-arguments">Setting Application Arguments</a>
<a href="#configuration">Configuration</a>
<a href="#level">Level</a>
<a href="#configure">Configure</a>
<a href="#using-configuration-file">Using Configuration File</a>
<a href="#using-elconfigurations-class">Using el::Configurations Class</a>
<a href="#using-in-line-configurations">Using In line Configurations</a>
<a href="#default-configurations">Default Configurations</a>
<a href="#global-configurations">Global Configurations</a>
<a href="#logging-format-specifiers">Logging Format Specifiers</a>
<a href="#datetime-format-specifiers">Date/Time Format Specifiers</a>
<a href="#custom-format-specifiers">Custom Format Specifiers</a>
<a href="#logging-flags">Logging Flags</a>
<a href="#application-arguments">Application Arguments</a>
<a href="#configuration-macros">Configuration Macros</a>
<a href="#reading-configurations">Reading Configurations</a>
<a href="#logging">Logging</a>
<a href="#basic">Basic</a>
<a href="#conditional-logging">Conditional Logging</a>
<a href="#occasional-logging">Occasional Logging</a>
<a href="#printf-like-logging">printf Like Logging</a>
<a href="#network-logging">Network Logging</a>
<a href="#verbose-logging">Verbose Logging</a>
<a href="#basic-1">Basic</a>
<a href="#conditional-and-occasional-logging">Conditional and Occasional</a>
<a href="#verbose-level">Verbose Level</a>
<a href="#check-if-verbose-logging-is-on">Check If Verbose Logging Is On</a>
<a href="#vmodule">VModule</a>
<a href="#registering-new-loggers">Registering New Loggers</a>
<a href="#unregister-loggers">Unregister Loggers</a>
<a href="#populating-existing-logger-ids">Populating Existing Logger IDs</a>
<a href="#sharing-logging-repository">Sharing Logging Repository</a>
<a href="#extra-features">Extra Features</a>
<a href="#performance-tracking">Performance Tracking</a>
<a href="#conditional-performance-tracking">Conditional Performance Tracking</a>
<a href="#make-use-of-performance-tracking-data">Make Use of Performance Tracking Data</a>
<a href="#log-file-rotating">Log File Rotating</a>
<a href="#crash-handling">Crash Handling</a>
<a href="#installing-custom-crash-handlers">Installing Custom Crash Handlers</a>
<a href="#stacktrace">Stacktrace</a>
<a href="#multi-threading">Multi-threading</a>
<a href="#check-macros">CHECK Macros</a>
<a href="#logging-perror">Logging perror()</a>
<a href="#syslog">Using Syslog</a>
<a href="#stl-logging">STL Logging</a>
<a href="#supported-templates">Supported Templates</a>
<a href="#qt-logging">Qt Logging</a>
<a href="#boost-logging">Boost Logging</a>
<a href="#wxwidgets-logging">wxWidgets Logging</a>
<a href="#extending-library">Extending Library</a>
<a href="#logging-your-own-class">Logging Your Own Class</a>
<a href="#logging-third-party-class">Logging Third-party Class</a>
<a href="#manually-flushing-and-rolling-log-files">Manually Flushing and Rolling Log Files</a>
<a href="#log-dispatch-callback">Log Dispatch Callback</a>
<a href="#logger-registration-callback">Logger Registration Callback</a>
<a href="#asynchronous-logging">Asynchronous Logging</a>
<a href="#helper-classes">Helper Classes</a>
<a href="#contribution">Contribution</a>
<a href="#submitting-patches">Submitting Patches</a>
<a href="#reporting-a-bug">Reporting a Bug</a>
<a href="#compatibility">Compatibility</a>
<a href="#build-matrix">Build Matrix</a>
<a href="#licence">Licence</a>
<a href="#disclaimer">Disclaimer</a>
</pre>
# Overview
Easylogging++ is single header efficient logging library for C++ applications. It is extremely powerful, highly extendable and configurable to user's requirements. It provides ability to [write your own _sinks_](/samples/send-to-network) (via featured referred as `LogDispatchCallback`). This library is currently used by [hundreds of open-source projects on github](https://github.com/search?q=%22easylogging%2B%2B.h%22&type=Code&utf8=%E2%9C%93) and other open-source source control management sites.
This manual is for Easylogging++ v9.97.1. For other versions please refer to corresponding [release](https://github.com/abumq/easyloggingpp/releases) on github.
> You may also be interested in [Residue](https://github.com/abumq/residue/) logging server.
[![top] Goto Top](#table-of-contents)
### Why yet another library
If you are working on a small utility or large project in C++, this library can be handy. Its based on single header and only requires to link to single source file. (Originally it was header-only and was changed to use source file in [issue #445](https://github.com/abumq/easyloggingpp/issues/445). You can still use header-only in [v9.89](https://github.com/abumq/easyloggingpp/releases/tag/9.89)).
This library has been designed with various thoughts in mind (i.e, portability, performance, usability, features and easy to setup).
Why yet another library? Well, answer is pretty straight forward, use it as you wrote it so you can fix issues (if any) as you go or raise them on github. In addition to that, I personally have not seen any logging library based on single-header with such a design where you can configure on the go, extend it to your needs and get fast performance. I have seen other single-header logging libraries for C++ but either they use external libraries, e.g, boost or Qt to support certain features like threading, regular expression or date etc. This library has everything built-in to prevent usage of external libraries, not that I don't like those libraries, in fact I love them, but because not all projects use these libraries, I couldn't take risk of depending on them.
[![top] Goto Top](#table-of-contents)
### Features at a glance
Easylogging++ is feature-rich containing many features that both typical and advanced developer will require while writing a software;
* [Highly configurable](#configuration)
* [Extendable](#extending-library)
* Extremely fast
* [Thread](#multi-threading) and type safe
* [Cross-platform](#compatibility)
* [Custom log patterns](#logging-format-specifiers)
* [Conditional and occasional logging](#conditional-logging)
* [Performance tracking](#performance-tracking)
* [Verbose logging](#verbose-logging)
* [Crash handling](#crash-handling)
* [Helper CHECK macros](#check-macros)
* [STL logging](#stl-logging)
* [Send to Syslog](#syslog)
* [Third-party library logging (Qt, boost, wxWidgets etc)](#logging-third-party-class)
*
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
Qt-利用easyloggingpp库打印日志 (368个子文件)
RELEASE-NOTES-v9.00 2KB
RELEASE-NOTES-v9.01 613B
RELEASE-NOTES-v9.02 368B
RELEASE-NOTES-v9.03 403B
RELEASE-NOTES-v9.04 265B
RELEASE-NOTES-v9.05 640B
RELEASE-NOTES-v9.06 606B
RELEASE-NOTES-v9.07 541B
RELEASE-NOTES-v9.08 468B
RELEASE-NOTES-v9.09 773B
RELEASE-NOTES-v9.10 500B
RELEASE-NOTES-v9.11 728B
RELEASE-NOTES-v9.12 765B
RELEASE-NOTES-v9.13 624B
RELEASE-NOTES-v9.14 489B
RELEASE-NOTES-v9.15 457B
RELEASE-NOTES-v9.16 661B
RELEASE-NOTES-v9.17 670B
RELEASE-NOTES-v9.18 902B
RELEASE-NOTES-v9.19 496B
RELEASE-NOTES-v9.20 874B
RELEASE-NOTES-v9.21 925B
RELEASE-NOTES-v9.22 516B
RELEASE-NOTES-v9.23 866B
RELEASE-NOTES-v9.24 805B
RELEASE-NOTES-v9.25 2KB
RELEASE-NOTES-v9.26 900B
RELEASE-NOTES-v9.27 468B
RELEASE-NOTES-v9.28 522B
RELEASE-NOTES-v9.29 478B
RELEASE-NOTES-v9.30 558B
RELEASE-NOTES-v9.31 461B
RELEASE-NOTES-v9.32 661B
RELEASE-NOTES-v9.33 463B
RELEASE-NOTES-v9.34 553B
RELEASE-NOTES-v9.35 449B
RELEASE-NOTES-v9.36 827B
RELEASE-NOTES-v9.37 469B
RELEASE-NOTES-v9.38 532B
RELEASE-NOTES-v9.39 498B
RELEASE-NOTES-v9.40 689B
RELEASE-NOTES-v9.41 478B
RELEASE-NOTES-v9.42 587B
RELEASE-NOTES-v9.43 708B
RELEASE-NOTES-v9.44 468B
RELEASE-NOTES-v9.45 454B
RELEASE-NOTES-v9.46 485B
RELEASE-NOTES-v9.47 649B
RELEASE-NOTES-v9.48 398B
RELEASE-NOTES-v9.49 478B
RELEASE-NOTES-v9.50 484B
RELEASE-NOTES-v9.51 486B
RELEASE-NOTES-v9.52 494B
RELEASE-NOTES-v9.53 482B
RELEASE-NOTES-v9.54 512B
RELEASE-NOTES-v9.55 463B
RELEASE-NOTES-v9.56 799B
RELEASE-NOTES-v9.57 483B
RELEASE-NOTES-v9.58 729B
RELEASE-NOTES-v9.59 890B
RELEASE-NOTES-v9.60 929B
RELEASE-NOTES-v9.61 611B
RELEASE-NOTES-v9.62 521B
RELEASE-NOTES-v9.63 551B
RELEASE-NOTES-v9.64 3KB
RELEASE-NOTES-v9.65 635B
RELEASE-NOTES-v9.66 742B
RELEASE-NOTES-v9.67 658B
RELEASE-NOTES-v9.68 603B
RELEASE-NOTES-v9.69 720B
RELEASE-NOTES-v9.70 1KB
RELEASE-NOTES-v9.71 583B
RELEASE-NOTES-v9.72 630B
RELEASE-NOTES-v9.73 609B
RELEASE-NOTES-v9.74 789B
RELEASE-NOTES-v9.75 790B
RELEASE-NOTES-v9.76 957B
RELEASE-NOTES-v9.77 1011B
RELEASE-NOTES-v9.78 1KB
RELEASE-NOTES-v9.79 4KB
RELEASE-NOTES-v9.80 505B
RELEASE-NOTES-v9.81 2KB
RELEASE-NOTES-v9.82 596B
RELEASE-NOTES-v9.83 550B
RELEASE-NOTES-v9.84 496B
RELEASE-NOTES-v9.85 1KB
RELEASE-NOTES-v9.86 990B
RELEASE-NOTES-v9.87 655B
RELEASE-NOTES-v9.88 660B
RELEASE-NOTES-v9.89 657B
RELEASE-NOTES-v9.90 1KB
RELEASE-NOTES-v9.91 688B
RELEASE-NOTES-v9.92 499B
RELEASE-NOTES-v9.93 880B
RELEASE-NOTES-v9.94 999B
compile.bat 156B
vtr.bmp 192KB
easylogging++.cc 119KB
mainwindow.cc 4KB
listwithsearch.cc 3KB
共 368 条
- 1
- 2
- 3
- 4
资源评论
我有一颗薄荷糖
- 粉丝: 4175
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功