Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/bezhansalleh/filament-exceptions

A Simple & Beautiful Pluggable Exception Viewer for FilamentPHP's Admin Panel
https://github.com/bezhansalleh/filament-exceptions

exception-reporter exception-viewer filamentadmin filamentphp laravel plugin

Last synced: 7 days ago
JSON representation

A Simple & Beautiful Pluggable Exception Viewer for FilamentPHP's Admin Panel

Awesome Lists containing this project

README

        


filament-exceptions-art



FILAMENT 8.x


Packagist


Tests Passing


Code Style Passing


Downloads

# Exception Viewer

A Simple & Beautiful Exception Viewer for FilamentPHP's Admin Panel

* For FilamentPHP 2.x use version 1.x

## Installation

1. You can install the package via composer:

```bash
composer require bezhansalleh/filament-exceptions
```

2. Publish and run the migration via:
```bash
php artisan exceptions:install
```

3. Register the plugin for the Filament Panel
```php
public function panel(Panel $panel): Panel
{
return $panel
->plugins([
\BezhanSalleh\FilamentExceptions\FilamentExceptionsPlugin::make()
]);
}
```

4. Activate the plugin by editing your App's Exception Handler as follow:

```php
reportable(function (Throwable $e) {
if ($this->shouldReport($e)) {
FilamentExceptions::report($e);
}
});

...
}
```

## Configuration
The configuration file filament-exceptions.php is automatically published into your config directory.

The config file provides you with multiple options to customize the plugin.

### Mass Pruning
By default Filament Exceptions is configured to prune exceptions older than 1 week.

To modify how long you'd like to store records for you can supply a Carbon object like so

```php
'period' => now()->subWeek(), // 1 week
'period' => now()->subDay(), // 1 day
'period' => now()->subDays(3), // 3 days
```
> **Note** This requires laravel scheduler to be setup and configured in order to work. You can see how to do that here [Running The Scheduler](https://laravel.com/docs/10.x/scheduling#running-the-scheduler)

### Custom Exception Model
For those who need to change the model this is possible using the configuration file.

```php
'exception_model' => Exception::class,
```

When creating your new exception model you should extend the default model

```php