过去,我的客户会打电话告诉我他们的软件出现了问题。我会登录该网站,然后查看错误日志。
但是,我发现错误日志倾向于解释发生了什么错误,而不是解释为什么发生错误。要了解导致问题的原因,需要以前的状态信息,这些信息仅包含在 DEBUG 日志中。
因此,几乎每次,我都必须更改日志级别,重新启动软件,并花费大量时间尝试重现问题。
我决定让生产代码在 DEBUG 日志级别运行,但进行了一项调整:我将最大日志大小限制journald.conf
为 10GB。在 500GB 的机器上,这对我来说似乎很好。
现在我可以使用journalctl --since
和journalctl --until
将巨大的日志过滤到我的客户说发生错误的时间段。
现在,当问题出现时,我不会浪费时间重新创建问题。
我的问题:
让生产代码在客户端站点上以详细 DEBUG 级别运行会产生什么影响?
我发现这里的答案不够充分: 生产中的日志级别