如何阻止 Kentico 事件日志变大?

How to stop Kentico Event Log from getting huge?

刚刚检查了我的 Kentico 数据库(Azure 托管),它膨胀到 21GB。这发生在最近,因为 4 个月前它刚刚超过 1GB。

检查了 table 并且我的事件日志 table 有超过 2,000,000 个条目!!!

最近没有任何变化,我在设置 -> 系统 -> 事件日志下的设置仍然是一样的:

事件日志大小:1000

由于全局变量也设置为 1000,通常我在事件日志中有 2000 条左右的条目 table。

有人知道这里发生了什么吗?以及如何阻止它发生?

您还应该研究其他几个方面。从 Kentico 的角度来看,拥有 2MM 事件日志记录不会导致 DB 大小增加 20GB,因为事件日志是非常少的数据。

查看分析、版本历史记录、电子邮件队列、网络场和计划任务 tables。还要检查回收站。您是否正在与任何其他系统集成或通过 API inserting/updating 大量数据?如果是这样,这可能会导致建立大量事务日志文件。使用 Azure SQL 我不知道有什么方法可以清理它们。

我的建议是检查其他 table 而不仅仅是事件日志。也许通过 SSMS 手动查询事件日志并查看前 100 个事件是什么,这可能会帮助您找到问题所在。如果需要,您也可以通过 UI 或使用 SSMS 手动截断 table 来清除日志。

如果你打开了在线营销并且有一个受欢迎的网站,那么 OM_ 表中将会有很多数据。但是 20GB 听起来还是很大,是否有很多资产文件被添加到内容树中,比如视频?另外,数据库是否设置为记录所有事务?什么样的日志文件受欢迎?错误或信息日志?您是否有一些可以生成大量日志的自定义代码?

您也可以通过电子邮件向 Kentico 支持人员发送电子邮件以获取 "check big tables" SQL 脚本,它可以帮助您找出哪些是大表。