我正在开发一个 Web 应用程序。在我的应用程序中,我需要跟踪每个登录用户的每个操作。
我计划如下来完成这项任务:-
-
我将在 mysql 中创建存储过程。
-
我将在每个表的插入中触发此过程,更新删除。
这对我来说是一项艰巨的工作。有人会以正确的方式指导我吗?
我正在使用基于PHP的Codeigniter框架和mysql数据库。
请帮助我
编辑:- 考虑到上述步骤,我无法开发。现在我处于困惑的状态。那么有没有人能给我这个想法?
我需要的是 - 在用户登录后,跟踪该用户所做的每一件事。
提前感谢您的帮助。
如果您控制MySQL数据库,那么启用MySQL的查询日志将是最简单的解决方案。在my.cnf(例如在Debian /etc/mysql/my.cnf
上)中找到[mysql]
部分,并将设置调整为如下所示:
general_log_file = /var/log/mysql/mysql.log
general_log = 1
然后使用(再次,Debian 示例)重新启动 MySQL,sudo service mysql restart
.
如果您正在处理MySQL<5.1,则设置将如下所示:
log = /var/log/mysql/mysql.log
如果需要从应用程序读取日志数据,可以将日志转储到数据库表而不是文件中。为此,请将以下行添加到第 [mysqld]
节中的my.cnf
中:
log_output = TABLE
然后,您可以使用以下命令读取查询日志
SELECT * FROM mysql.general_log;
如果您
使用的是谷歌分析,您可以使用谷歌分析来跟踪登录用户所做的所有操作。请查看谷歌分析自定义变量和事件跟踪。在此处查看自定义变量和事件跟踪