讨论下业务日志怎么记呢

1. 场景

大家在使用后台管理系统的时候,可能管理员操作了某项功能。追责的时候,他可能就说自己没操作。这时候就需要日志记录每个管理员操作了什么。

如果要求每个对数据库有操作的功能都需要记录,而且需要准确的记录操作前是什么数据,操作后是什么数据,并且只记录有修改的字段。

请问这种有什么科学的方法能去做吗?我想的就是每个操作发生的时候都记录下之前的数据,然后在记录之后的数据,然后循环比对,再把结果存到日志

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 10
Jyunwaa

参考 Laravel-admin 操作日志中间件 github.com/z-song/laravel-admin/bl...

1年前 评论
Jyunwaa (作者) 1年前
MyZy 1年前

可以自动生成可读性的操作日志,代码变更也无须修改日志的记录,全局记录所有对数据库的增、删、改操作,完全符合你的需求。
博客:如何记录可读性的操作日志?

1年前 评论

if ($request->method() == 'POST' && isset($response->original) && $response->original['status'] == ErrorCode::SUCCESS) LogUtil::writeOperateLog(); post接口记录日志

1年前 评论

就是记录 操作的接口 操作人 操作的参数 返回的参数 操作的时间 等

1年前 评论

借助 spatie/laravel-activitylog 记录 model 变更

1年前 评论
ShiKi

放在 Observer 里面统一处理,$model->attributes, $model->original 来处理差异数据

1年前 评论

如果是业务上要展示,那就对需要展示的字段进行单独记录,这种一般都是要记录前后值,操作人和时间等。若不是业务上要展示,仅是记录的话,这种直接在修改前后记录model的json字符串就好了吧。等需要用到时候再转分析。

1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!