webqamdev/activity-logger

There is no license information available for the latest version (2.0.0) of this package.

Log every model creation, edition and deletion.

2.0.0 2022-05-17 15:51 UTC

This package is auto-updated.

Last update: 2024-04-17 20:39:44 UTC


README

The webqamdev/activity-logger package automatically log model changes from users into database and log files.

Dependencies

This package use spatie/laravel-activitylog to store logs in database. Feel free to configure it if needed or just follow Installation instructions.

Installation

You can install the package via composer:

composer require webqamdev/activity-logger

The package will automatically register itself.

Configure spatie/laravel-activitylog. By default, run thoses commands :

php artisan vendor:publish --provider="Spatie\Activitylog\ActivitylogServiceProvider" --tag="migrations"
php artisan migrate

You can optionally publish the config file with:

php artisan vendor:publish --provider="Webqamdev\ActivityLogger\ActivityLoggerServiceProvider" --tag="config"

Usage

Globally hide a property

Publish config file. Then add entries to properties_hidden array.

Hide a Model property

Create your model normally, then define hidden properties.

class User extends Model {

    /**
     * The attributes that shouldn't be logged in activity logger.
     * 
     * @var array 
     */
    public $activity_hidden = [
        'password',
        'phone',
    ];

     ...
}

Disable logs into database

Add ACTIVITY_LOGGER_TO_DATABASE=false to your .env file will prevent logger from writing into database.

Change files permission

If not already done, publish config file:

php artisan vendor:publish --provider="Webqamdev\ActivityLogger\ActivityLoggerServiceProvider" --tag="config"

Add channel.permission to your config/activitylogger.php file like this exemple:

'channel' => [
    'path'       => storage_path('logs/activity.log'),
    'level'      => 'debug',
    'days'       => 14,
    'permission' => 0644, // Default value, equivalent to bash's rw-r--r--
],

About

This package using Laravel 5.8 is a plugin for auto-logging activities.

Gitlab repository : Activity logger for Laravel Github repository : Activity logger for Laravel