saade / filament-laravel-log
Access laravel.log file through Filament admin panel
Fund package maintenance!
saade
Installs: 96 328
Dependents: 1
Suggesters: 0
Security: 0
Stars: 93
Watchers: 2
Forks: 21
Open Issues: 6
Requires
- php: ^8.1
- filament/filament: ^3.0
- illuminate/contracts: ^10.0|^11.0
- spatie/laravel-package-tools: ^1.15.0
Requires (Dev)
- laravel/pint: ^1.0
- nunomaduro/collision: ^7.0|^8.0
- nunomaduro/larastan: ^2.0.1
- orchestra/testbench: ^8.0|^9.0
- pestphp/pest: ^2.0
- pestphp/pest-plugin-arch: ^2.0
- pestphp/pest-plugin-laravel: ^2.0
- phpstan/extension-installer: ^1.1
- phpstan/phpstan-deprecation-rules: ^1.0
- phpstan/phpstan-phpunit: ^1.0
- spatie/laravel-ray: ^1.26
README
Features
- Syntax highlighting
- Light/ Dark mode
- Quickly jump between start and end of the file
- Refresh log contents
- Clear log contents
- Search multiple files in multiple directories
- Ignored file patterns
Installation
You can install the package via composer:
composer require saade/filament-laravel-log:^3.0
Usage
Add the Saade\FilamentLaravelLog\FilamentLaravelLogPlugin
to your panel config.
use Saade\FilamentLaravelLog\FilamentLaravelLogPlugin; class AdminPanelProvider extends PanelProvider { public function panel(Panel $panel): Panel { return $panel // ... ->plugin( FilamentLaravelLogPlugin::make() ); } }
Configuration
Customizing the navigation item
FilamentLaravelLogPlugin::make() ->navigationGroup('System Tools') ->navigationLabel('Logs') ->navigationIcon('heroicon-o-bug-ant') ->navigationSort(1) ->slug('logs')
Customizing the log search
FilamentLaravelLogPlugin::make() ->logDirs([ storage_path('logs'), // The default value ]) ->excludedFilesPatterns([ '*2023*' ])
Authorization
If you would like to prevent certain users from accessing the logs page, you should add a authorize
callback in the FilamentLaravelLogPlugin chain.
FilamentLaravelLogPlugin::make() ->authorize( fn () => auth()->user()->isAdmin() )
Customizing the log page
To customize the log page, you can extend the Saade\FilamentLaravelLog\Pages\ViewLog
page and override its methods.
use Saade\FilamentLaravelLog\Pages\ViewLog as BaseViewLog; class ViewLog extends BaseViewLog { // Your implementation }
use App\Filament\Pages\ViewLog; FilamentLaravelLogPlugin::make() ->viewLog(ViewLog::class)
Customizing the editor appearance
Publish the config file:
php artisan vendor:publish --tag="log-config"
This is the contents of the published config file:
<?php return [ /** * Maximum amount of lines that editor will render. */ 'maxLines' => 50, /** * Minimum amount of lines that editor will render. */ 'minLines' => 10, /** * Editor font size. */ 'fontSize' => 12 ];
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.