adityadarma / laravel-database-logging
Logging activities database for laravel
Requires
- php: ^8.0
- laravel/framework: ^9.0|^10.0|^11.0
README
Laravel Database Logging is a feature that allows developers to store application logs in a database, rather than the default file-based storage. This feature provides a structured and organized approach to managing application logs, making it easier to query and analyze them.
Laravel Installation Instructions
-
From your projects root folder in terminal run:
composer require adityadarma/laravel-database-logging
-
Install config and asset to record the activities to:
php artisan database-logging:install
-
Run the migration to add the table to record, before running please check morph key type on config to set type column:
php artisan migrate
Configuration
Laravel Database Logging can be configured in directly in /config/database-logging.php
if you published the assets.
Or you can variables to your .env
file.
Environment File
Here are the .env
file variables available:
ENABLE_LOGGING=true LOGGING_QUERY=false
Usage
Middleware Usage
Events for laravel authentication scaffolding are listened for as providers and are enabled via middleware. You can add events to your routes and controllers via the middleware:
capture-logging
Example to start recording page views using middleware in web.php
:
Route::group(['middleware' => ['web', 'capture-logging']], function () { Route::get('/', 'WelcomeController@welcome')->name('welcome'); });
This middleware can be enabled/disabled in the configuration settings.
Trait Usage
Events can be recorded directly by using the trait. When using the trait you can customize the event description.
To use the trait:
-
Include the call in the head of your class file:
use AdityaDarma\LaravelDatabaseLogging\Traits\DatabaseLoggable;
-
Include the trait call in the opening of your class:
use DatabaseLoggable;
Routes
Laravel Activity Dashboard Routes
Set route access from file config database-logging.php
/database-logging
License
This Package is licensed under the MIT license. Enjoy!