Plugins
Logger
Extensible activity logger for Filament that works out-of-the-box.
Developer Tool
Panel Builder
S
Spatie Integration
Dark theme support
Yes
Multi language support
Yes
Compatible with the latest version
Supported versions: 2.x - 3.x - 4.x
Documentation
Version:

[!NOTE] This is a fork of Z3d0X/filament-logger. I am now maintaining this project and will continue providing updates and improvements.

Latest Version on Packagist Total Downloads

logger banner

Configurable activity logger for filament. Powered by spatie/laravel-activitylog

#Features

You can choose what you want to log and how to log it.

  • Log Filament Resource Events
  • Log Login Event
  • Log Notification Events
  • Log Model Events
  • Easily extendable to log custom events

Note: By default this package will log Filament Resource Events, Access(Login) Events, and Notification Events. If you want to log a model that is not a FilamentResource you will have to manually register in the config file.

#Installation

Plugin Version Filament Version
<= 0.5.x ^2.11
0.6.x - 0.8.x 3.x
>= 1.0 4.x

This package uses spatie/laravel-activitylog, instructions for its setup can be found here

You can install the package via composer:

composer require jacobtims/filament-logger

After that run the install command:

php artisan filament-logger:install

This will publish the config & migrations from spatie/laravel-activitylog

Register the plugin in your PanelProvider:

use Jacobtims\FilamentLogger\FilamentLoggerPlugin;
 
public function panel(Panel $panel): Panel
{
return $panel
->plugins([
FilamentLoggerPlugin::make(),
]);
}

#Authorization

To enforce policies on ActivityResource, after generating a policy, you would need to register Spatie\Activitylog\Models\Activity to use that policy in the AuthServiceProvider.

<?php
 
namespace App\Providers;
 
use App\Policies\ActivityPolicy;
use Illuminate\Foundation\Support\Providers\AuthServiceProvider as ServiceProvider;
use Spatie\Activitylog\Models\Activity;
 
class AuthServiceProvider extends ServiceProvider
{
protected $policies = [
// Update `Activity::class` with the one defined in `config/activitylog.php`
Activity::class => ActivityPolicy::class,
];
//...
}

If you are using Shield just register the ActivityPolicy generated by it

#Translations

Publish the translations using:

php artisan vendor:publish --tag="filament-logger-translations"

#Activity Model resolution

The main Activity class being used by the Filament Resource instance will be resolved by Spatie's service provider, which loads the model defined by the configuration key found at activitylog.activity_model in config/activitylog.php.

#Screenshots

logger-index logger-detail-1 logger-detail-2

#Changelog

Please see CHANGELOG for more information on what has changed recently.

#Contributing

Please see CONTRIBUTING for details.

#Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

#Credits

#License

The MIT License (MIT). Please see License File for more information.

Jacobtims

Jacob is a full-stack web developer with over 10 years of experience. He is very passionate about Laravel and enjoys working with the TALL stack.

2
Plugins
9
Stars
More from this author
Featured Plugins