日志
目录
log
1 合理使用日志
-
帮助跟踪处理流程,函数调用次序,帮助理解系统,效果甚至超过文档和注释,文档注释会不一致,日志是准确的。
-
甚至能起到注释的作用
-
Log(“Begin to parse Ethernet header。。“)
-
帮助调试代码,定位问题,在多线程条件下优于 GDB 调试,日志的时延也会影响调试结果,太多的日志让原来能复现的问题复现不了了。
-
地毯式打印
-
统一一致的日志开关
-
清理日志
-
太多的日志成为阅读代码的障碍,降低代码的可读性
-
太多的日志影响调试代码,信息太多等于没有信息,影响找到有用的信息,影响系统运行速度(info 级别的日志)
-
消除重复日志
-
归并日志,一行显示多个信息。
// this is better
print(“username: (), password: (), phone number: (Y, username, psw, phone_number)
VS:
print(“username:“, username)
print(“password:“, psw)
print(“phone number: (Y, phone_number)
- 日志清晰,美观,准确,能显示所在文件和行号
- 代码正式提交前要清理日志,只留下关键的日志
1.1 理解系统的途径
- 通过文档,通过类图,顺序图,状态图,用例图,框图,文字描述
- 通过代码
- 通过注释
- 通过日志
- 了解处理流程,函数调用次序是理解系统的重要手段