日志系统:
日志:程序在运行过程中,用来记录程序运行状态信息。
作用:记录了程序运行状态信息,以便程序员能够随时根据状态信息,对系统程序的运行状态进行分析。
一、项⽬介绍
本项目主要实现的是一个日志系统,其支持以下功能:
- 支持多级别日志消息
- 支持同步日志和异步日志
- 支持可靠写入日志到控制台、文件以及滚动文件中
- 支持多线程程序并发写日志
- 支持扩展不同的日志落地到目标地
二、开发环境
- 操作系统 :Ubuntu 20.04
- 编辑器: vscode / vim
- 编译器/调试器:g++ / gdb
- 项目自动化构建工具:Makefile
三、核心技术
- 类层次化设计(继承、多态的实际应用)
- C++11语法(多线程库,auto,智能指针,右值引用等)
- 双缓冲区设计
- 生产消费模型
- 多线程
- 设计模式(单例、工厂、代理、建造者等)
四、环境搭建
本项⽬不依赖其他任何第三⽅库, 只需要安装好CentOS / Ubuntu + vscode / vim环境即可开发。