使用Symfony审核日志,最佳实践

时间:2011-02-28 12:34:55

标签: php symfony-1.4

我正在实施的系统的性质目前需要严格记录用户执行的所有访问/操作。

我知道我可以使用symfony记录器记录不同的操作,但是有一种干净的方法吗?我宁愿避免每次使用不同的消息进行多次日志调用,具体取决于正在访问的函数,无论如何我可以覆盖一个类,以便我的日志调用只有一次。我需要存储尽可能多的信息,以便我可以在任何给定时间重新跟踪任何用户执行的所有步骤。

我要去寻找一个可能有帮助的插件。

感谢您的任何信息!

2 个答案:

答案 0 :(得分:1)

您可以使用sfFilter来避免扩展记录模块和路由操作的所有操作。你可以看到this post我做了类似的事情,但可以指导你。

您还可以看到this,其中介绍了如何使用sfFilters

答案 1 :(得分:0)

我正在考虑扩展sfActions。

code mySfActions extends sfActions
{
  public function preExecute()
  {
    //log this->getActionName(), $this->getModuleName(), __FILE__ etc
    //capture user information ($this->getUser() should work)

    // then call this function to ensure all current preExecute methods work correctly
    parent::preExecute()
  }
}

然后我所有的actions.class.php文件都将扩展此类而不是sfActions。

这样它应该给我足够的信息,但我只在代码中得到一次。

思想?