日志文件记录的重要性
Posted dotNET跨平台
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了日志文件记录的重要性相关的知识,希望对你有一定的参考价值。
为什么做好日志记录
1、良好的日志规范,能快速有效的定位问题。
做开发最怕的就是线上系统出问题了,轻则留下产品和系统不安全可靠的不好印象,重则影响到公司的收入和口碑。当然了,线上bug总会存在,这很正常,但是我们要做到即使出现了问题,也要能快速定位问题修复;
2、日志打印真的很耗性能吗 ?
记录日志方式一般是数据库或者文本日志,但是大部分的还是选择文本日志,这样打日志意味着有磁盘IO,除非是一些高并发接口,否则这就是伪命题。一般系统日均QPS上万都很不错了,对于大部分公司而言,打日志带来的性能损耗是可以完全忽略不计的;
3、如何做好日志记录?
日志一般分为以下级别TRACE,DEBUG,INFO,WARN,ERROR,FATAL;
可以根据重要性分等级记录,当然最重要的就是异常日志了;
业务方面比如:
web api一把是需要输入输出日志;
调用第三方系统需要完整的链路日志;
重要流程需要相关的流程日志等等;
记录日志的方式
对应单体应用 目前比较常用的比如log4net、nlog等;
需要注意点
1、避免文件夹的日志文件过多;
2、避免文件太大;
这些都是通过配置可以完成的;否则会造成相关的性能问题和查询日志麻烦;
这里推荐一个日志的查询界面组件
https://github.com/liangshiw/LogDashboard
避免每次都去下载文件,一个个去翻;
对于分布式应用 exceptionless 、ELK 都是不错的选择;
这里需要注意的是避免日志瞬间暴增的时候,内存、cpu 的过渡占用问题;
这些都需要大家实际应用去细细研究;
所以这些都是不错的轮子,对于这种基础的应用,应该是尽量站在巨人的肩膀上,避免重复造轮子;
以上是关于日志文件记录的重要性的主要内容,如果未能解决你的问题,请参考以下文章