2011-07-01 14:42 26人阅读 收藏 举报
在此描述您的新便笺。软件中总免不了要使用诸如 Log4net, Log4j, Tracer 等东东来写日志,不管用什么,这些东东大多是大同小异的,一般都提供了这样5个日志级别:
× Debug
× Info
× Warn
× Error
× Fatal
一个等级比一个高,但是在具体开发中,关于应该如何选择适应的等级,却没有找到好的文章进行说明。记录一下自己的一些看法,以便日后使用吧。
=== Debug ===
这个级别最低的东东,一般的来说,在系统实际运行过程中,一般都是不输出的。
因此这个级别的信息,可以随意的使用,任何觉得有利于在调试时更详细的了解系统运行状态的东东,比如变量的值等等,都输出来看看也无妨。
当然,在每一个 Debug 调用之前,一定要加上 If 判断。
=== Info ===
这个应该用来反馈系统的当前状态给最终用户的,所以,在这里输出的信息,应该对最终用户具有实际意义,也就是最终用户要能够看得明白是什么意思才行。
从某种角度上说,Info 输出的信息可以看作是软件产品的一部分(就像那些交互界面上的文字一样),所以需要谨慎对待,不可随便。
=== Warn、Error、Fatal ===
警告、错误、严重错误,这三者应该都在系统运行时检测到了一个不正常的状态,他们之间的区别,要区分还真不是那么简单的事情。我大致是这样区分的:
所谓警告,应该是这个时候进行一些修复性的工作,应该还可以把系统恢复到正常状态中来,系统应该可以继续运行下去。
所谓错误,就是说可以进行一些修复性的工作,但无法确定系统会正常的工作下去,系统在以后的某个阶段,很可能会因为当前的这个问题,导致一个无法修复的错误(例如宕机),但也可能一直工作到停止也不出现严重问题。
所谓Fatal,那就是相当严重的了,可以肯定这种错误已经无法修复,并且如果系统继续运行下去的话,可以肯定必然会越来越乱。这时候采取的最好的措施不是试图将系统状态恢复到正常,而是尽可能地保留系统有效数据并停止运行。
也就是说,选择 Warn、Error、Fatal 中的具体哪一个,是根据当前的这个问题对以后可能产生的影响而定的,如果对以后基本没什么影响,则警告之,如果肯定是以后要出严重问题的了,则Fatal之,拿不准会怎么样,则 Error 之。
分享到:
相关推荐
复制代码 代码如下:error_reporting( 7 ) = error_reporting( 1+2+4)= error_reporting(E_ERROR | E_WARING | E_PARSE) 现在,我将其总结如下: 数字 常量 说明 1 E_ERROR 致命错误,脚本执行中断,就是脚本中...
用户自定义log可以通过相关日志组件自己的debug、waring、error、info等级别的日志。 三、离线日志 离线日志可以分为两种:客户端的(本地)行为日志和客户端的(本地)异常日志。客户端的(本地)行为日志记录了...
VS扩展插件,适用于2017以前的版本,对输出窗口中的字符串,配置颜色,比如info,waring,error等,通过不同的颜色输出,展示更加清晰
在IT行业中,我们经常遇到各种报错,其中“libpng warning: iccp: known incorrect sRGB profile”是一个常见的错误,特别是在处理PNG图像时。这个警告通常发生在使用图像处理库,如libpng,来读取或操作包含色彩...
此项目是四路温度,用DS18B20做感应,采用四路,用51单片机做内核,用LCD1602控制器显示,用三个按钮用来控制,调节四个温度的上限、和下限!
P(WARING, "Remote latest version %v %v latest version %v.\n", "0.10.28", "=", "0.1.0.26") // test tow cp := CP{Red, false, None, false, "="} P(NOTICE, "Remote latest version %v...
C_51FATALERROR ACTION:<当前行为> FILE:<错误所在文件> ERROR:<错误信息>terminated ``` 其中,`ACTION`字段提供了错误发生时编译器正在执行的操作,如解析预处理指令、分配内存、打开文件等;`ERROR`字段则具体...
2. `C_51FATALERROR ACTION:<当前行为> FILE:<错误所在文件> ERROR:<错误信息>terminated` **ACTION的相关信息**:ACTION字段提供了导致错误的当前操作信息。以下是一些常见的ACTION值: - `PARSING`:在对`#...
在Quartus II中,警告通常分为几个级别,如Info、Warning、Error和Critical Error。"quartus_ii_waring"可能是对警告信息的一个泛指。PWM(Pulse Width Modulation)是嵌入在FPGA中的常见功能,用于控制输出信号的...
eslint-plugin-only-warn 将错误降级为警告 安装 您首先需要安装 : $ npm i eslint --save-dev 接下来,安装eslint-plugin-only-warn : $ npm install eslint-plugin-only-warn --save-dev ...
例如`QMessageBox::critical(this, "fatal error", "system has fatal error!", QMessageBox::Help | QMessageBox::Save, QMessageBox::Close);`,提供帮助、保存或关闭的选项。 6. QMessageBox::aboutQt:这个特殊...
rv1126_rk3568 的_dvp_bt656_bt1120驱动
### SQL Warning 报错出错信息说明 在处理SQL数据库时,可能会遇到各种错误和警告信息,这些信息有助于我们理解并解决所遇到的问题。本文将详细介绍由标题、描述及部分内容中提到的一些常见错误代码及其含义。...
8. waring: constraint equation 212 does not have a unique slave dof. 该警告信息表明, ANSYS 中边界约束条件和约束方程在同一节点位置交叠。解决方法是或者只加约束条件,或者只加约束方程。 ANSYS 中的错误...
根据给定的文件信息,我们将围绕“实用电子电路精选”这一主题进行深入探讨,并结合电子工程师的实际需求,解析其中涉及的重要知识点。 ### 实用电子电路精选:电子工程师的好帮手 在电子工程领域中,电路设计是...
【标题】"ISE14.7license.rar" 文件包含了Xilinx ISE 14.7的设计环境所需的许可证文件,这是用户能够激活并使用该软件的关键一步。Xilinx ISE(Integrated Software Environment)是一款广泛用于VHDL和Verilog等硬件...
8. 对于警告“waring:constraintequation212doesnothaveauniqueslavedof.”,可能的原因是边界约束条件和约束方程在同一节点位置交叠。解决方法是只使用约束条件或只使用约束方程中的一个,避免交叠。 9. 在进行...
内容包括:三角和、数的分拆、素数定理、连分数、不定方程、二元二次型、模变换、整数矩阵、p-adic数、代数数沦导引、超越数、Waring问题与Prouhet-Tarry问题、数的几何等,书里引述厂许多我国古代数学家在数论上的...