日志优化实践去除冗余日志提升调试效率
没必要的日志,真得留着吗?
日志的日志,别多余。调试要高效,日志太杂反而添乱。比如你在看OutConnectionProcessor
里一堆console.log()
,关键的信息都被埋了,调个 bug 跟挖宝一样。
更坑的是性能。日志多了,占磁盘、吃 IO、甚至卡主服务。尤其线上环境,不控制级别,debug日志量能堆到天花板去。日志泄露隐私也不是危言耸听,比如误打了用户 token 或敏感数据。
所以日志优化挺重要的。我一般这么搞:
1. 日志级别分明:开发阶段用debug
、info
,上线就只留warn
和error
2. 过滤和去重:比如用正则把不想看的干掉,或写个中间件
3. 动态调级:上线后出事能临时升级,平时就安静点
4. 集中管理:像Logstash
、Fluentd
这种好用,收集 + 一步到位
另外,如果你在改现有代码,建议先看修改的内容.txt
那类文件,别人已经帮你踩坑了,照着参考效率更高。
嗯,日志不是越多越安全,而是越精准越好。如果你最近在做Node.js
后端,或者前端日志上报,可以顺手看看调试日志存储方法和Moja 跨平台日志系统,也挺有料的。
20120809.zip
预估大小:8个文件
OutConnectionProcessor.class
12KB
IQRouter$TimeoutTask.class
2KB
OutConnectionProcessor$1.class
707B
OutConnectionProcessor$2.class
707B
OutConnectionProcessor$WatchDog$1.class
825B
OutConnectionProcessor$WatchDog.class
6KB
IQRouter.class
12KB
修改的内容.txt
182B
18.16KB
文件大小:
评论区