【C++】开源:跨平台轻量日志库easyloggingpp

news2024/11/24 6:46:06

😏★,°:.☆( ̄▽ ̄)/$:.°★ 😏
这篇文章主要介绍跨平台轻量日志库easyloggingpp。
无专精则不能成,无涉猎则不能通。。——梁启超
欢迎来到我的博客,一起学习,共同进步。
喜欢的朋友可以关注一下,下次更新不迷路🥞

文章目录

    • :smirk:1. 项目介绍
    • :blush:2. 源码分析
    • :satisfied:3. 项目总结

😏1. 项目介绍

项目Github地址:https://github.com/abumq/easyloggingpp

easyloggingpp是一个跨平台轻量级日志库。只需要在项目中包含头文件easylogging++.h和实现easylogging++.cc,即可实现丰富的日志打印功能。

最简日志打印示例:

#include "easylogging++.h"

INITIALIZE_EASYLOGGINGPP    // 初始化宏,有且只能使用一次

int main(int argc, char* argv[]) {
   LOG(INFO) << "My first info log using default logger";
   return 0;
}

我们知道,简单的日志打印有Fatal Error Warn Info Debug5种等级,easylogging支持对日志等级和格式进行配置化,通常可通过配置文件进行管理,一个配置示例如下:

* GLOBAL:
   FORMAT               =  "%datetime %msg"
   FILENAME             =  "/tmp/logs/my.log"
   ENABLED              =  true
   TO_FILE              =  true
   TO_STANDARD_OUTPUT   =  true
   SUBSECOND_PRECISION  =  6
   PERFORMANCE_TRACKING =  true
   MAX_LOG_FILE_SIZE    =  2097152 ## 2MB - Comment starts with two hashes (##)
   LOG_FLUSH_THRESHOLD  =  100 ## Flush after every 100 logs
* DEBUG:
   FORMAT               = "%datetime{%d/%M} %func %msg"

另外,除了正常的日志输出外,还提供了条件写日志,每执行n次写日志,写n次日志等功能。但一般最常用的就是LOG(LEVEL)输出对应等级的日志。

😊2. 源码分析

下面进行源码分析:

😆3. 项目总结

下面进行一下总结:

在这里插入图片描述

以上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/767021.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

剑指offer16.数值的整数次方

这道题不是easy的难度吗&#xff1f;为什么是 medium&#xff0c;看完题我就想到了用分治法把n除以2&#xff0c;分成两个子问题&#xff0c;然后子问题的解合起来就是这个问题的解&#xff0c;于是立马写了如下代码&#xff1a; class Solution {public double myPow(double …

MySQL(十一):MySQL语法-函数

原始数据 select * from employees where emp_no 10002; select * from salaries where emp_no 10002;--------------------------------------------------------------- | emp_no | birth_date | first_name | last_name | gender | hire_date | -----------------------…

duilib消息产生以及响应机制

1、duilib消息产生处理原理 win32消息产生机制 消息产生。系统将消息排列到其应该排放的线程消息队列中。线程中的消息循环调用GetMessage&#xff08;or PeekMessage&#xff09;获取消息。传送消息TranslateMessage and DispatchMessage to 窗口过程&#xff08;Windows pr…

JavaWeb课程设计项目实战(01)——项目综述

版权声明 本文原创作者&#xff1a;谷哥的小弟作者博客地址&#xff1a;http://blog.csdn.net/lfdfhl 项目背景 本项目适合JavaWeb新手作为入门学习的练手案例&#xff0c;主要技术包括&#xff1a; TomcatJSPELJSTLMySQL 该项目是一个学生信息管理系统&#xff0c;主要功能…

300-700题红题第四题和第五题

题目链接&#xff1a;332. 重新安排行程 题目链接&#xff1a;335. 路径交叉 332. 重新安排行程 是写过的详细的在回溯。只能说再写一遍还是磕磕绊绊&#xff0c;但好歹理解的比较快了。 主要就是理解一下回溯的backtrack的输出&#xff0c;不仅仅是可以输出路径的&#xff0…

竹云IDaaS | 全面融合AWS Cognito

AWS Cognito组件用户池User Pool国内暂未上线&#xff0c;身份云IDaaS可完全替代Cognito用户池&#xff0c;借助身份云进行用户身份验证并融合Coginto身份池Identity Pool&#xff0c;实现对AWS资源的无缝安全访问。 企业面临的挑战 AWS Cognito中国站暂未提供用户池User&…

Python_pymysql_与mysql交互

目录 基础功能 简单封装 源码等资料获取方法 基础功能 import pymysql from pymysql.cursors import DictCursor # 导入字典类型的游标对象# 连接数据库 db pymysql.connect(host192.168.3.109, # 数据库IP地址port3306, # 数据库端口号userroot, …

Qchart学习

目录 Qchart简介 QChartView 简介 QAbstractAxis 简介 QAbstractSeries 简介 Qchart Public Types Properties属性 Public Functions QAbstractSeries Public Types Properties Public Functions Signals信号 QAbstractAxis Properties Public Functions 主题设…

全面了解ESP-01SWiFi模块

ESP-01S是一款基于ESP8266芯片的WiFi模块&#xff0c;它提供了低成本、低功耗和高度集成的解决方案&#xff0c;适用于物联网和嵌入式应用。本文将介绍ESP-01S模块的功能和特点&#xff0c;并提供一个简单的WiFi控制示例。 目录 ESP-01S模块管脚功能&#xff1a; ESP-01S特点…

字符串列表分类求平均值

给定一字符串列表数据&#xff0c;按颜色分类计算价格平均值并写入列表。 (本笔记适合对python字符串和列表基本烂熟的 coder 翻阅) 【学习的细节是欢悦的历程】 Python 官网&#xff1a;https://www.python.org/ Free&#xff1a;大咖免费“圣经”教程《 python 完全自学教程…

【C++修炼之路】模板初阶

&#x1f451;作者主页&#xff1a;安 度 因 &#x1f3e0;学习社区&#xff1a;StackFrame &#x1f4d6;专栏链接&#xff1a;C修炼之路 文章目录 一、泛型编程二、函数模板1、概念2、格式3、函数模板实例化① 隐式② 显式 4、特性 五、类模板六、模板使内置类型"升级&q…

无人驾驶中识别颜色并跟踪的优化(加入PID算法控制)

我们了解到无人驾驶是如何去识别颜色的&#xff0c;以及无人车能够跟随颜色目标的演示。回到现实中我们发现&#xff0c;无人车的速度控制是很关键的&#xff0c;这个涉及到安全问题&#xff0c;比如等待红绿灯时&#xff0c;该减速或加速超车等这样很常见的情形&#xff0c;在…

论文笔记--OpenPrompt: An Open-source Framework for Prompt-learning

论文笔记--OpenPrompt: An Open-source Framework for Prompt-learning 1. 文章简介2. 文章概括3 文章重点技术4. 文章亮点5. 原文传送门 1. 文章简介 标题&#xff1a;OpenPrompt: An Open-source Framework for Prompt-learning作者&#xff1a;Ning Ding, Shengding Hu, We…

基于Java+SpringBoot+vue前后端分离在线视频教育平台设计实现

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…

Leecode316: 去除重复字母

下面这里使用有序map——TreeMap来实现Map接口&#xff0c;但是相对顺序是不能改变的&#xff01;这样会使得后面的跑到前面去&#xff0c;所以有问题 最简单的思想肯定是暴力思想&#xff0c;就是从前往后寻找&#xff0c;一旦遇到存在的情况就. 重点在于明确两点&#xff1a…

HarmonyOS学习路之方舟开发框架—学习ArkTS语言(基本语法 五)

Styles装饰器&#xff1a;定义组件重用样式 如果每个组件的样式都需要单独设置&#xff0c;在开发过程中会出现大量代码在进行重复样式设置&#xff0c;虽然可以复制粘贴&#xff0c;但为了代码简洁性和后续方便维护&#xff0c;我们推出了可以提炼公共样式进行复用的装饰器St…

【LLM】self-instruct 构建指令微调数据集

文章目录 一、self-instruct流程二、具体过程1. 指令生成2. 分类任务识别3. 实例生成4. 过滤和后处理 三、其他部分1. 验证数据质量2. GPT3SELF-INSTRUCT生成数据的词性分析3. Rouge-L指标 Reference 一、self-instruct流程 四部曲&#xff1a;指令生成&#xff1b;分类任务识别…

Oracle 的视图

Oracle 的视图 源数据&#xff1a; -- Create table create table STU_INFO (id NUMBER not null,name VARCHAR2(8),score NUMBER(4,1),class VARCHAR2(2) ) tablespace STUDENTpctfree 10initrans 1maxtrans 255storage(initial 64Knext 1Mminextents 1maxextents unlim…

最多变的混合模式-实色混合HardMix

最多变的混合模式-实色混合HardMix 之前写过一篇介绍27种图层混合模式的非常详细&#xff0c;如果你想完全了解底层的原理&#xff0c;这篇文章不会让你失望。 PS图层混合模式超详细解答-图层混合模式的原理 - 王先生的副业的文章 - 知乎 https://zhuanlan.zhihu.com/p/64396…

从小白到大神之路之学习运维第63天--------zabbix企业级监控(概述、单台服务器监控本身安装部署)

第三阶段基础 时 间&#xff1a;2023年7月18日 参加人&#xff1a;全班人员 内 容&#xff1a; zabbix企业级监控 目录 一、Zabbix概述 &#xff08;一&#xff09;Zabbix简介 &#xff08;二&#xff09;Zabbix运行条件&#xff1a; &#xff08;三&#xff09;Zab…