正确的选择log级别

  开发一个应用,日志的重要性不言而喻。然而有时会发现日志中会出现大量的垃圾日志。所谓垃圾日志,就是不需要知道的日志,或者这些日志对于应用查看、跟踪没有什么作用。也正是(但不仅仅是)出于这些问题的考量,常用的日志框架都设置了日志级别。但是在写程序时,这些日志级别该选择哪一种呢,这点并没有一个统一的标准,也没有人教你怎么做。下面就来说说我在开发中是怎么使用这些日志级别的。

一般来说,日志级别有以下几个:

  • FATAL(CRITICAL)
  • ERROR
  • WARN
  • INFO
  • DEBUG

它们的权重从大到小。当我们设置好log级别后,比它权重低的其他log都会被忽略。

不同的语言,不同的库有不同的log实现,使用方法也比较简单。但运用好log的关键不在库本身,而是在恰当的地方使用合适的log级别。

在不同的场景下,应该选择相应的log级别。

FATAL(CRITICAL)

代表发生了最严重的错误,会导致整个服务停止(或者需要整个服务停止)。简单地说就是服务死掉了。

ERROR

代表发生了必须马上处理的错误。此类错误出现以后可以允许程序继续运行,但必须马上修正,如果不修正,就会导致不能完成相应的业务。

WARN

代表存在潜在的错误,或者触发了容易引起错误的操作。程序可以继续运行,但必须多加注意。

INFO

此输出级别常用语业务事件信息。例如某项业务处理完毕,或者业务处理过程中的一些信息。

此输出级别也常用于输出一些对系统有比较大的影响的需要被看到的message,例如数据库更新,系统发送了额外的请求等。

DEBUG (或者TRACE、FINE)

此输出级别用于开发阶段的调试,可以是某几个逻辑关键点的变量值的输出,或者是函数返回值的验证等等。

另外,如果是你写的一些util工具类,在需要加日志的情况下,也可以使用debug。

如果你写的是Helper(业务的辅助类),这应该算是业务处理相关的,所以应该用info。

时间: 2024-10-08 18:28:25

正确的选择log级别的相关文章

[转]如何正确的选择回归模型?

转自CSDN_杨志友  http://blog.csdn.net/yangzhiyouvl/article/details/53955073原文标题:7 Types of Regression Techniques you should know! 链接:https://www.analyticsvidhya.com/blog/2015/08/comprehensive-guide-regression/ Introduction 线性回归(Linear regressions)和对率回归(Lo

Linux内核pr_debug的应用及log级别控制原理简析

调试环境------ CPU:freescale i.mx6 操作系统:Linux 内核版本号:3.0.35 最近在调试一个spi nor flash芯片的时候用到了gpio倒出的功能,就是可以在linux起来以后,通过串口倒出,并可以控制输入输出方向和高低电平的一种功能.配置好对应的pin后发现怎么都不能在/sys/class/gpio的目录下生成相应的接口目录,我要倒出的GPIO是gpio bank6的第11教,根据imx6平台gpio编号的计算方法IMX_GPIO_NR(6, 11),得到

第六周--------职业规划------正确的选择让你少奋斗十年

前段时间,对于很多刚刚高中毕业的人要面临填志愿的困难选择,毕竟上大学的专业学习少则影响大学4年,多则影响个人未来的一辈子的方向该往哪里走.专业的选择无疑是人生道路上的第一次职业选择,选对了幸福,错了就诅咒学校开的课程"什么鬼玩意?". 做职业的选择需要理性的结构性思考与分析,简单来讲你选择的专业要1.劳资喜欢:2.劳资有耐性:3.这玩意有希望.满足以上三个条件的话,证明你在奔上快车道了.在这里引用村上春树在<我是职业小说家>中的自述,"私人思维历程',这方法很有启

现成的与定制的软件:为您的企业做出正确的选择

常年构建与购买问题继续困扰着企业寻找软件解决方案.一旦安装在计算机或设备上,现成的软件即可使用.另一方面,定制软件是根据特定要求和规范开发的. 这两种技术在性能,功能和可用性方面存在巨大差距.每个选项都有自己的优点和缺点,这里有一个相同的纲要. 成本问题 与定制开发的产品相比,现成的产品通常价格适中; 显而易见的原因是,开发现成产品所涉及的成本是在大量买家之间分配的,因此定价分散在几个待售许可证上.另一方面,定制产品是专门为客户开发的,因此,所有开发费用将由该个别客户承担.因此,考虑到成本,似乎

Ubuntu 设置 log 级别

Linux环境下使用rsyslog管理日志 rsyslog linux运维 linux 22.7k 次阅读  ·  读完需要 22 分钟 在 Linux 系统中,日志文件记录了系统中包括内核.服务和其它应用程序等在内的运行信息.在我们解决问题的时候,日志是非常有用的,它可以帮助我们快速的定位遇到的问题. 在 Cent OS 6中,日志是使用rsyslogd守护进程进行管理的,该进程是之前版本的系统中syslogd的升级版,对原有的日志系统进行了功能的扩展,提供了诸如过滤器,日志加密保护,各种配置

正确理解Linux运行级别

通过优锐课的java学习分享中,了解有关Linux运行级别的更多信息-正确的方法! 你可以将Linux运行级别视为操作系统运行的不同"模式".这些模式或运行级别中的每一个都有其自己的已打开或关闭的进程和服务的列表. 从Linux启动时开始,它始终处于某个运行级别. 随着你继续使用计算机,此运行级别可能会更改,具体取决于操作系统需要访问的服务类型. 例如,与仅在系统上运行命令行的情况相比,使用图形用户界面运行Linux机器将需要不同的运行级别. 这是因为图形用户界面将需要访问命令行所隐含

理解正确的日志输出级别

原文链接:http://macrochen.iteye.com/blog/1399082 很多程序员都忽略了日志输出级别, 甚至不知道如何指定日志的输出级别. 相对于System.out来说, 日志框架有两个最大的优点就是可以指定输出类别(category)和级别(level). 对于日志输出级别来说, 下面是我们应该记住的一些原则:ERROR:系统发生了严重的错误, 必须马上进行处理, 否则系统将无法继续运行. 比如, NPE, 数据库不可用等. WARN:系统能继续运行, 但是必须引起关注.

Linux中对启动过程中选择启动级别那个界面设置密码

生成md5形式的密码: a.执行  grub-md5-crypt  命令 b.在接下来的交互界面中输入自己的密码 c.生成加密后的密码修改配置文件: a.vi /boot/grub/grub.conf b.在timeout和splashimage之间加入: c.password -md5 生成的密码 重启电脑

从小白到创业公司CEO,机缘于一个正确的选择!

前言 整个过程要从我的一个大学同学小张说起,他原本是湖北第二师范学院14级的毕业生,是一个来自湖北荆州偏远山村的农村小伙,因为怀揣着赚大钱的梦想,在上大学的时候他就不停的兼职.边工作边学习,为的就是帮贫穷的家减少经济负担,你很难想象他想要挣钱.想要脱贫致富的心有多么的强烈.大学四年一晃眼就走过了,他本满怀信心想着可以全身心投入到工作中,经过自己的努力一定能快速在武汉这样的大城市站稳根脚,然而现实的残酷是他没有预想到的. 由于高考分数不理想,他被调剂到了他报考的这个学校的文言文专业,对口的工作本应