我们在数据库(mysql)中维护了一些自定义日志。我们使用这些日志来跟踪我们的 zend 框架应用程序中最近的错误和电子邮件活动。
我们最近发现这些日志给数据库造成了一些压力,因为我们在这些日志选项卡上执行了多次读/写。这也会减慢应用程序的速度,因为我们需要执行 mysql INSERT,有时这些日志表会被其他 SELECT 查询锁定。
我们使用Zend_Log
适配器来执行日志写入,如下所示:
$columnMapping = array('url' => 'url', 'userAgent' => 'userAgent', 'info' => 'info', 'reffer' => 'reffer', 'userId' => 'userId', 'priority' => 'priority','dateInserted' => 'dateInserted', 'message' => 'message');
$writer_db = new Zend_Log_Writer_Db($db, 'log', $columnMapping);
我们还有一个自定义的 cronjob,它每晚都会从日志中清除旧条目,这也会给数据库带来一些压力。
我们对这些日志的唯一要求是它们应该可以从中心位置搜索,因为我们有多个服务器编写这些日志。
在 zend 框架应用程序中写入日志的任何替代方法?在这种情况下有什么好的Zend_Log
适配器可以提供帮助吗?