In /config/app.php, add the following to providers:
/config/app.php
providers
Unisharp\AuditTrail\AuditServiceProvider::class,
and the following to aliases:
aliases
'Audit' => Unisharp\AuditTrail\Facades\Audit::class,
Run php artisan vendor:publish.
php artisan vendor:publish
Run php artisan migrate.
php artisan migrate
All your logs will be recorded in 'audit_trails' table.
You need to add a trait to the model you're going to audit.
class User extends Eloquent { use \Unisharp\AuditTrail\Auditable; protected $table = 'users'; protected $hidden = ['password']; protected $fillable = ['username', 'email', 'password']; }
In any place you want to audit your user logs
$User->log($action, $comment = null, $subject = null, $subject_id = null)
Audit::log($action, $comment = null)
$User->log('log in', 'the action is approved')
Audit::log('log in', 'the action is approved')
subject
subject_id
Other usages
You can get your model logs by:
$User->getLogs();
Get all the logs by single user by using:
Audit::getByUserId($user_id)
As time grows, logs would be outdated. You may clean them by:
$User->cleanLogs()
This package is licensed under MIT license.