调试中的日志记录与测试实践
1. 工具组合的力量
将 Wireshark 与 tcpdump 结合使用,能解决一些遗留的使用场景问题,形成一种相对易用且强大的组合。不过这里说的“相对”,是因为它们并非简单的工具,二者都蕴含着强大的功能,只是我们可能尚未深入挖掘。
2. 各类工具概述
存在各种各样以“*trace”命名的实用工具,它们相互借鉴思路,让人应接不暇。有太多优秀的工具无法一一介绍,比如 btrace 就因时间和篇幅限制而略过。这些工具采用不同的方法来解决相似的问题:如何了解二进制应用程序“真正”的行为?安全研究人员和黑客会利用这些工具来了解程序,他们无需代码和反汇编就能知晓程序的实际操作。开发者也可以用这些工具来了解自己的应用程序以及第三方库和工具的影响,还能了解自身操作的影响。
3. 日志记录的重要性与问题
3.1 日志记录与打印的区别
日志记录是一种前瞻性的调试方式,它为未来的调试过程留下线索。但开发者常过度记录日志,这不仅使查找和跟踪相关信息变得困难,还会增加日志记录的成本。以下是日志记录与打印的区别:
| 对比项 | 打印 | 日志记录 |
| — | — | — |
| 过滤 | 部分支持,仅针对字符串且假设数据未丢失 | 基于日志级别、记录器名称等进行过滤 |
| 输出介质 | 控制台(可重定向或管道传输) | 控制台、文件、云,可向不同目的地输出不同日志 |
| 元数据 | 无 | 有 |
| 目的 | 临时短期使用 | 事件的长期记录 |
| 存储管理 | 重定向到磁盘时可能耗尽存储空间 | 可配置记录器策略来清除、
日志记录与测试最佳实践
超级会员免费看
订阅专栏 解锁全文
1762

被折叠的 条评论
为什么被折叠?



