2017 © Pedro Peláez
 

library activity-log

Track user activities in Laravel 5 applications

image

aginev/activity-log

Track user activities in Laravel 5 applications

  • Friday, February 5, 2016
  • by aginev
  • Repository
  • 1 Watchers
  • 6 Stars
  • 558 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 1 Open issues
  • 2 Versions
  • 4 % Grown

The README.md

Track user activities in Laravel 5 applications

This package will track created, updated or deleted event on subscribed models and will store useful info about it., (*1)

Features

  • Composer installable
  • PSR4 auto loading
  • Track created, updated or deleted event on subscribed models
  • Write logs in database or log files
  • Command for cleaning logs

Requires

Build only for Laravel Framework 5 only!, (*2)

Installation

In terminal, (*3)

composer require aginev/activity-log:1.0.*

Add Service Provider to your config/app.php like so, (*4)

// config/app.php

'providers' => [
    '...',
    Aginev\ActivityLog\ActivityLogServiceProvider::class,
];

Publish migrations, (*5)

php artisan vendor:publish --provider="Aginev\ActivityLog\ActivityLogServiceProvider" --tag="migrations"
php artisan migrate

Publish config, (*6)

php artisan vendor:publish --provider="Aginev\ActivityLog\ActivityLogServiceProvider" --tag="config"

Optionally you can add activity log command and you will be able to clean your logs., (*7)

// app/Console/Kernel.php

protected $commands = [
    '...',
    \Aginev\ActivityLog\Commands\ActivityLogClean::class,
];

Usage

To subscribe model for activity log just use \Aginev\ActivityLog\Traits\ObservableModel, (*8)

use \Aginev\ActivityLog\Traits\ObservableModel;

To add custom activity description overwrite activityDescription method in your model, (*9)

/**
 * Implement this method to set custom activity description message
 * @param $event Event name
 * @param User $user Current logged in user
 * @return string
 */
public function activityDescription($event, User $user = null) {
    return 'User ' . $this->full_name . ' has been ' . $event . ' from ' . $user->full_name;
}

Get activities, (*10)

$logs = \ActivityLog::getActivities()->get(); // Get all activities
$logs = \ActivityLog::getLatestActivities(2); // Get latest 2 activities

Clean log, (*11)

$logs = \ActivityLog::cleanLog(30); // Offset in days

Clean the log from terminal, (*12)

php artisan activity-log:clean

Custom handler implmentations

  1. Implement \Aginev\ActivityLog\HandlersLogActivityInterface\ActivityLogInterface in your custom handler.
  2. Place custom handler as value in activity-log.log config

Credits

https://github.com/spatie/activitylog - Similar package but with different implementation. Code blocks used from there. Thanks!, (*13)

License

MIT - http://opensource.org/licenses/MIT, (*14)

The Versions

05/02 2016

dev-master

9999999-dev http://aginev.com

Track user activities in Laravel 5 applications

  Sources   Download

MIT

by Atanas Ginev

activity log track user activity for laravel 5 laravel 5 activity log

05/02 2016

v1.0.0

1.0.0.0 http://aginev.com

Track user activities in Laravel 5 applications

  Sources   Download

MIT

by Atanas Ginev

activity log track user activity for laravel 5 laravel 5 activity log