有不同的方式记录消息,按死亡顺序排列:

致命的错误警告信息调试,调试跟踪

我如何决定何时使用哪个?

什么是好的启发式方法?


当前回答

在此之前,我已经构建了以下系统:

错误-表示出现了严重错误,特定线程/进程/序列无法继续。需要一些用户/管理员干预警告-有些事情不正确,但过程可以照常进行(例如,一组100个作业中的一个作业失败,但剩余的作业可以处理)

在我所构建的系统中,管理员都在接受指示,以应对错误。另一方面,我们将观察警告,并确定每种情况是否需要任何系统更改、重新配置等。

其他回答

我一直在考虑警告第一个日志级别,这肯定意味着存在问题(例如,可能配置文件不在应该的位置,我们将不得不使用默认设置运行)。对我来说,一个错误意味着软件的主要目标现在不可能实现,我们将尝试彻底关闭。

你想让系统管理员半夜起床吗?

是->错误无->警告

在此之前,我已经构建了以下系统:

错误-表示出现了严重错误,特定线程/进程/序列无法继续。需要一些用户/管理员干预警告-有些事情不正确,但过程可以照常进行(例如,一组100个作业中的一个作业失败,但剩余的作业可以处理)

在我所构建的系统中,管理员都在接受指示,以应对错误。另一方面,我们将观察警告,并确定每种情况是否需要任何系统更改、重新配置等。

国庆节,

作为这个问题的必然结果,沟通您对日志级别的解释,并确保项目中的所有人都对级别的解释保持一致。

看到各种各样的日志消息,其中的严重性和所选日志级别不一致,这很痛苦。

如果可能,请提供不同日志记录级别的示例。并且要在消息中记录的信息保持一致。

HTH

正如其他人所说,错误是问题;警告是潜在的问题。

在开发中,我经常使用警告,在警告中,我可能会放置相当于断言失败,但应用程序可以继续工作;这使我能够发现这个案子是否真的发生过,或者这是我的想象。

但是的,它归结到恢复性和现实性方面。如果你能恢复,那可能是一个警告;如果它导致某个东西实际失败,那就是一个错误。