有没有人真的使用WARN作为日志记录级别?

mP.*_*mP. 2 logging

为错误而不仅仅为警告分配不同的级别似乎有点过分.如果一个值是错误的,那么它的错误则不然.我个人认为这种模糊决策使得代码难以理解,因为一个人不知道什么是可接受的有效输入.如果你不接受废话并抛出异常,那么hyour代码可能会更好,完全不需要警告.

有许多其他级别可以获得更多的日志记录,可能更值得他们自己的级别 - 像"配置"这样的东西.然而,最终似乎大多数框架已经解决了错误,警告,信息,调试和跟踪其变化.

那警告是如何生存的,其他级别没有?

Rae*_*ald 6

对于我所使用的软件,我使用以下区别.

  • 错误:程序无法执行已请求执行的操作.如果程序无法执行请求,则需要输出错误消息.
  • 警告:程序检测到奇怪的东西,这并不妨碍它按照要求做的事情.该程序可以但不是必需的,以输出针对奇怪情况的警告消息.

似乎其他人也这样做.

例如,假设一个配置文件包含程序要检查的位置列表,该列表可能为空但实际上从不为空.

  • 如果配置文件的格式不正确,程序将报告错误消息,因为它无法确定您希望它执行的操作,因此无法执行您想要的操作.
  • 如果配置文件没有列出任何位置,它可能会报告警告,因为虽然在这种情况下它可以正确检查没有位置(也就是说,没有任何用处),但实际上用户可能错误地配置了系统.

  • 我会使用*info*作为进度消息("开始搜索*X*"). (3认同)