为什么做好日志记录

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 的过渡占用问题;

这些都需要大家实际应用去细细研究;

所以这些都是不错的轮子,对于这种基础的应用,应该是尽量站在巨人的肩膀上,避免重复造轮子;

日志文件记录的重要性相关推荐

  1. Logger日志文件记录

    # -*- coding:utf-8 -*- """ # author:crhou # datetime:2022/2/16 15:13 # software: PyCh ...

  2. 中操作日志文件记录的是什么_SpringBoot+AOP实现用户操作日志的记录

    前言: 任何一个项目都会有一个用户操作日志(也叫行为日志)的模块,它主要用来记录某个用户做了某个操作,当出现操作失败时,通过日志就可以快速的查找是哪个用户在哪个模块出现了错误,以便于开发人员快速定位问 ...

  3. springboot启动不打印日志信息_SpringBoot日志操作【全局异常捕获消息处理--日志控制台输出+日志文件记录】...

    引言 看到一篇blog,感觉写的角度非常好,因此引用过来消化一番.

  4. linux日志文件优缺点,Linux日志文件总结

    Linux日志文件总结 近期做笔试题目,考察Linux日志配置文件相关内容,由于对此不了解,故看鸟哥的私房菜中的认识与分析日志文件一章,总结如下相关信息. 日志文件可以记录一个时间的何时.何地.何人. ...

  5. Linux运维之认识与分析日志文件(rsyslog服务),时间同步服务(chronyd服务)及时间管理命令(timedatectl)

    一.实验环境(rhel7.0版本) 主机环境:rhel7.0 各主机信息 主机名 IP server 172.25.254.1 client 172.25.254.2 二.日志文件介绍 1.Linux ...

  6. MySQL开发 日志文件必备的知识点

    MySQL 日志文件开发必备的知识点 参考来源:juejin.im/post/5b7c0aabf265da438415b9eb 前言 日志文件记录了影响MySQL数据库的各种类型活动,MySQL数据库 ...

  7. 【引用】Linux常用的日志文件解说及常用系统命令

    一.前言 想成功地管理任何系统的关键之一,是要知道系统中正在发生什么事.Linux 中提供了异常日志,并且日志的细节是可配置的,都以明文形式存储,所以用户不需要特殊的工具就可以搜索和阅读它们.还可以编 ...

  8. mysql dba系统学习(8)查询日志文件功能 mysql dba系统学习(9)slow query log慢查询日志功能

    查询日志的作用是记录所有客户端发来的sql语句,也就是记录客户端的所有操作 Log参数将要过时,现在用general_log来代替 打开查询日志功能 mysql> showvariables l ...

  9. Centos下重要日志文件及查看方式

    Centos下重要日志文件及查看方式 时间:2013-07-28 12:10来源:中国IT实验室 作者:感谢:"匿名"投稿 举报 点击:6525次 id="iframeu ...

最新文章

  1. 300万知乎多标签文本分类任务经验分享(附源码)
  2. 全球智慧医疗产业发展现状
  3. Android Studio打开项目所有Java文件的import显示红色
  4. python多线程没用_python的多线程到底有没有用?
  5. 国务院学位委员会关于授予具有研究生毕业同等学力人员硕士、博士学位的规定
  6. Java 为 Excel 中的行设置交替背景色
  7. chrome开启touch屏幕点击事件
  8. 百练4982 踩方格
  9. python复制文件夹不阻塞_python学习笔记-(十四)I/O多路复用 阻塞、非阻塞、同步、异步...
  10. 如何给代码自动添加注释?
  11. go写的图片爬虫,支持单页以及列表
  12. aps后缀是什么文件_今日份知识分享:什么是源文件?
  13. hdu4814 黄金进制转换
  14. android 虚拟wifi定位,基于Android手机的WiFi定位系统设计
  15. python判断用户名密码是否正确_Python账号密码登陆判断(三次机会)
  16. 计量经济学(七)----自相关性Autocorrelation.
  17. c语言合数的分解编程,C语言 · 分解质因数
  18. linux服务器通过代理连接网络
  19. Linux_进程控制(创建进程,等待进程,进程终止)
  20. docker容器状态Exited(1)第一篇

热门文章

  1. [.net 面向对象程序设计深入](4)MVC 6 —— 谈谈MVC的版本变迁及新版本6.0发展方向...
  2. 为什么onenote一直在加载_OneNote:科研笔记独一无二的无敌利器
  3. mysql数据库的优缺点
  4. 教育管理系统——android家长客户端
  5. Microsoft Teams:删除成员账户其历史聊天会发生什么?
  6. 看着手机会让您晕眩吗? 禁用动画
  7. 移动硬盘改台式机硬盘_如何在台式机或移动设备上离线使用Google云端硬盘
  8. gopro dataset_如何将GoPro安装到DSLR相机
  9. window 效率神器:Wox
  10. #、%和$符号在OGNL表达式中的作用