saade / filament-laravel-log by saade

Access laravel.log file through Filament admin panel
55,339
75
2
Package Data
Maintainer Username: saade
Maintainer Contact: saade@outlook.com.br (Saade)
Package Create Date: 2022-03-18
Package Last Update: 2024-03-25
Home Page: https://filamentphp.com/plugins/saade-laravel-log
Language: PHP
License: MIT
Last Refreshed: 2024-04-27 03:16:35
Package Statistics
Total Downloads: 55,339
Monthly Downloads: 4,571
Daily Downloads: 219
Total Stars: 75
Total Watchers: 2
Total Forks: 19
Total Open Issues: 2

Filament Laravel Log

Latest Version on Packagist Total Downloads

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 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.