日期:2014-05-17  浏览次数:20779 次

请问下系统日志应该如何设计?
我们旧的系统日志只有一张表,把各种日志都记录在里面,包括登录日志、操作日志、异常日志等等乱其八糟的都在里面。

这样的记录太乱了,想问下应该如何优化一下?

我觉得是不是应该把 异常日志这样的从数据库里面剥离出来,用log4net之类的开源控件来管理,而登录日志、操作日志等日志根据分类分成几个表存在数据库里面?

我还想问一下,现在系统把日志的表和系统其他的表放在一个数据库里面,是不是应该把日志单独分出一个数据库存放呢?如果是的话为什么?如果放在同一个数据库里面,日志表过于膨胀的话,会对其他表的速度或者其他方面有什么影响吗?

------解决方案--------------------
1、不要放生产数据库。
2、如果你需要写日志的服务器不多,可以考虑写文件。
3、最好日志先写到队列中再批量插入数据库。
4、如果分布式你可以考虑下用redis作为你的日志存储。