在Symfony2中记录用户操作的日志

时间:2014-02-25 19:54:43

标签: symfony logging bundle sonata-admin symfony-sonata

我正在开发一个项目,我正在使用Symfony2(最新)和SonataAdmin。我需要通过记录来记录用户操作:

  • 行动/事件日期/时间(用户何时以及何时做某事)
  • 用户自己(执行操作/事件的用户的ID)
  • 受影响的行(哪些行受到影响,例如更改表单中的某些数据)

我在KnpBundles和Google上找不到成功,可以给我一些提示或想法吗?或者如果有人这样做之前给我一些代码作为起点?请记住,我正在使用SonataAdmin,这有点复杂。

1 个答案:

答案 0 :(得分:5)

stofDoctrineExtensions(Gedmo的DoctrineExtensions的Symfony包装器)Loggable扩展名可以为你完成。

可以将此扩展名设置为记录用户名,更改(创建,更新和删除)以及更改(如果已指定)表格中的数据,然后可以使用该表格记录和/或还原更改。

StofDoctrineExtensions(下面的包装)

Gedmo\DoctrineExtensions(Loggable)