登录一个位置而不是多个日志

时间:2009-06-12 15:05:17

标签: language-agnostic logging

对于Web应用程序或独立服务器应用程序,您会推荐哪些,为什么?

  • 拥有巨大的application.log,其中记录了所有内容;
  • 有许多较小的日志:
    • security.log
    • performance.log
    • lifecycle.log
    • integration.log

5 个答案:

答案 0 :(得分:6)

我喜欢使用数据库进行日志记录。四个有用的功能:

  1. 您不会丢失时间顺序,就像您一次查看多个日志文件时所遇到的那样。
  2. 如果您愿意,仍可按特定邮件类型进行过滤。
  3. 您获得了完整性,因此如果您的计算机在编写日志文件时崩溃,您将不会收到损坏的日志,并且当您的数据库再次启动时它将从日志中重播。
  4. 修剪日志非常简单!无需使用hacky日志轮换程序,这些程序需要您的守护程序是SIGHUP或任何东西。
  5. 您的里程可能会有所不同。 : - )

答案 1 :(得分:2)

由于以下几个原因,我建议使用多个日志:

  • 如果存在时间重要的生产故障排除情况,请降低噪音。
  • 不同的组可以获得不同的日志。系统组可能需要不同于应用程序组的日志,因为每个系统都有自己可以优化设置的系统部分。

至于如何记录,我建议混合使用数据库,电子邮件和本地文本文件,以防万一有需要连接到另一台服务器的问题。

答案 2 :(得分:1)

取决于您的日志记录审核。你应该在最好的地方回答它。您是否需要特定日志以便更准确地识别问题,或者您是否只需要整体日志以进行维护?

我总是使用不同的日志,前提是它们不会造成太多开销。

答案 3 :(得分:1)

如果你期望大量的日志记录,你会很快知道在哪里看,然后将它们分开。一个大的日志文件可以快速实现,但如果您经常查看多个日志文件以进行相关条目,那也没有用。因此,当您将它们拆分时,请确保它在某种情况下,当您收到错误时,您确切地知道要先打开哪个文件。

答案 4 :(得分:1)

我建议使用现成的集中式日志系统,而不是发明自己的。这样您就可以随时轻松地以任何形式挖掘数据。它还应该节省您的时间和头痛。管理日志文件不仅是应用程序的负担,因为您必须编写其他代码,而且还要为实际​​查看文本的人员编写代码。查看logFaces,它可能会解决您的一些问题 - 它带有自己的数据库,可以与大多数商业数据库品牌一起使用,并允许即时访问相关的日志数据。

披露:我是该产品的作者。