laravel 怎么记录用户操作日志?
一个记录用户操作数据库日志的方法,
在 Providers/AppServiceProvider.php 的 boot 方法内添加一下代码:
public function boot()
{
//
\DB::listen(function ($query, $binds) {
foreach ($binds as $bind) {
$query = preg_replace('/\?/', '\'' . $bind . '\'', $query, 1);
}
\Log::info($query);
});
}
然后在 storage/logs 文件夹下面的 laravel.log 查看具体的 sql 语句了。
参考打印 Laravel 的 SQL 语句
看你想要的记录包括哪些方面;
普通url
的访问日志,开启nginx
的 access_log
就有;
数据库操作日志,监听SQL
就行。
如果你想按照自己的意愿实现可读性更高的日志的话,那就自己写,具体根据你想要的效果去实现,可能会很复杂,但编程本来就没有捷径,自己研究多了慢慢就简单了;有些事不一定要问。
2 回答3k 阅读✓ 已解决
1 回答1.2k 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
1 回答986 阅读
3 回答1k 阅读
1 回答711 阅读✓ 已解决
2 回答1k 阅读
也许你是想要这种方式: