我正在考虑为我的 django Web 应用程序创建一个日志系统。Web 应用程序的使用非常全面(涵盖业务流程的所有方面),因此我想跟踪发生的每个事件。具体来说,我想记录每个运行的视图,而不仅仅是“主要”视图,并可能记录视图执行时发生的事情。
当我处于日志系统的“想法”阶段时,我很快就遇到了一些让我不确定如何进行的问题。以下是我的主要问题:
- 我正在考虑将所有事件记录在主 Web 应用程序保存其数据的同一个 MySQL 数据库中。我担心的是将 MySQL 数据库膨胀成一个庞大的数据库。此外,如果数据库崩溃或以某种方式被破坏(是的,我有备份),我也会丢失我的日志,这会破坏任何追踪问题的能力。我是使用单独的数据库还是只使用文本文件?
- 我要多细化?最初,我想简单地记录诸如“日期 - 在我的视图中”之类的内容。但是,正如我正在考虑的那样,最好记录视图中发生的所有内容。这样做可能会使日志变得庞大!并且还会使我的代码变得丑陋,因为代码中混入了如此多的日志条目行。这种细节:
- 日期 - 进入视图 myView
- 日期 - 在视图 myView 中,从数据库中检索对象 myObject
- 日期 - 在视图 myView 中,将 myObject 字段 myField 设置为 myNewValue
- 日期 - 离开 myView
这些是我目前的主要想法。在这方面有什么建议吗?
谢谢