嵌入式日志系统 · 从零基础到实战

📚 共计 30 章节
01
日志系统概述
什么是嵌入式日志系统、日志的重要性、日志的级别(DEBUG、INFO、WARN、ERROR、FATAL)
基础概念
02
开发环境搭建
安装交叉编译工具链、搭建Linux开发环境、配置串口终端工具
环境工具链
03
第一个日志程序
使用printf打印日志、重定向printf到串口、实现简单的日志输出
实践printf
04
日志级别实现
定义日志级别宏、实现条件编译控制、不同级别的输出格式
条件编译
05
日志格式设计
时间戳格式化、文件名与行号打印、函数名自动获取
格式__FILE__
06
颜色输出
终端颜色控制码、不同级别不同颜色、颜色宏定义封装
终端ANSI
07
模块化日志
按模块划分日志、模块级别独立控制、模块名称自动添加
模块架构
08
文件输出基础
文件操作API回顾、日志文件创建与写入、文件大小控制
文件存储
09
日志轮转
固定大小轮转、按时间轮转、轮转策略配置
轮转策略
10
环形缓冲区
环形缓冲区原理、无锁设计、在日志中的应用
缓冲区无锁
11
异步日志
生产者消费者模型、任务队列实现、后台线程写入
异步线程
12
中断安全日志
中断上下文限制、中断级日志函数、中断与任务同步
中断安全
13
内存优化
静态内存分配、日志缓冲区大小调优、内存池技术
内存优化
14
性能优化
日志开关宏、编译时裁剪、运行时动态开关
性能裁剪
15
过滤与搜索
关键字过滤、级别过滤、模块过滤
过滤搜索
16
远程日志
网络socket基础、UDP日志发送、TCP日志接收
网络远程
17
日志服务器
Python简易日志服务器、日志接收与存储、多客户端支持
服务器Python
18
Flash存储日志
SPI Flash驱动基础、日志写入Flash、磨损均衡
Flash存储
19
SD卡日志
FATFS文件系统移植、SD卡驱动、大容量日志存储
SD卡FATFS
20
日志压缩
LZSS压缩算法、压缩存储、解压查看
压缩算法
21
日志加密
AES加密基础、日志加密写入、解密查看工具
加密AES
22
日志分析工具
Python日志解析脚本、统计各级别数量、异常检测
分析Python
23
可视化日志
Web端日志展示、Flask后端搭建、实时刷新
可视化Flask
24
RTOS集成
FreeRTOS任务日志、队列日志、信号量日志
RTOSFreeRTOS
25
低功耗日志
低功耗模式下的日志策略、RTC唤醒日志、日志缓存
低功耗RTC
26
多核日志
AMP架构日志同步、共享内存日志、核间通信
多核AMP
27
单元测试
CUnit框架、日志模块测试用例、覆盖率分析
测试CUnit
28
实战项目一:智能家居网关日志系统
需求分析、系统设计、完整实现
实战网关
29
实战项目二:无人机飞控日志系统
实时性要求、黑匣子设计、数据记录
实战飞控
30
课程总结与展望
常见问题汇总、最佳实践、未来趋势
总结展望