PHP code example of bezhansalleh / filament-exceptions

1. Go to this page and download the library: Download bezhansalleh/filament-exceptions library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

bezhansalleh / filament-exceptions example snippets


public function panel(Panel $panel): Panel
{
    return $panel
        ->plugins([
            \BezhanSalleh\FilamentExceptions\FilamentExceptionsPlugin::make()
        ]);
}

  

  use BezhanSalleh\FilamentExceptions\FilamentExceptions;
  use Illuminate\Foundation\Application;
  ...

  return Application::configure(basePath: dirname(__DIR__))
      ...
      ->withExceptions(function (Exceptions $exceptions) {
          $exceptions->reportable(function (Exception|Throwable $e) {
              FilamentExceptions::report($e);
          });
      })
      ...
  

  

  namespace App\Exceptions;

  use BezhanSalleh\FilamentExceptions\FilamentExceptions;

  class Handler extends ExceptionHandler
  {
      ...

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

          ...
      }
  }
  

FilamentExceptionsPlugin::make()
    ->navigationBadge(bool | Closure $condition = true)
    ->navigationBadgeColor(string | array | Closure $color)
    ->navigationGroup(string | Closure | null $group)
    ->navigationParentItem(string | Closure | null $item)
    ->navigationIcon(string | Closure | null $icon)
    ->activeNavigationIcon(string | Closure | null $icon)
    ->navigationLabel(string | Closure | null $label)
    ->navigationSort(int | Closure | null $sort)
    ->registerNavigation(bool | Closure $shouldRegisterNavigation)
    ->subNavigationPosition(SubNavigationPosition | Closure $position)

FilamentExceptionsPlugin::make()
    ->modelLabel(string | Closure | null $label)
    ->pluralModelLabel(string | Closure | null $label)
    ->titleCaseModelLabel(bool | Closure $condition = true)
    ->globallySearchable(bool | Closure $condition = true)

FilamentExceptionsPlugin::make()
    ->activeTab(int $tab) // 1 = Exception, 2 = Headers, 3 = Cookies, 4 = Body, 5 = Queries
    ->bodyTabIcon(string $icon)
    ->bodyTabLabel(string $label)
    ->cookiesTabIcon(string $icon)
    ->cookiesTabLabel(string $label)
    ->exceptionTabIcon(string $icon)
    ->exceptionTabLabel(string $label)
    ->headersTabIcon(string $icon)
    ->headersTabLabel(string $label)
    ->queriesTabIcon(string $icon)
    ->queriesTabLabel(string $label)

FilamentExceptionsPlugin::make()
    ->modelPruneInterval(Carbon $interval)

FilamentExceptionsPlugin::make()
    ->scopeToTenant(bool | Closure $condition = true)
    ->tenantOwnershipRelationshipName(string | Closure | null $ownershipRelationshipName)
    ->tenantRelationshipName(string | Closure | null $relationshipName)

FilamentExceptionsPlugin::make()
    ->cluster(string | Closure | null $cluster)
    ->slug(string | Closure | null $slug)

return $panel
    ->plugins([
        FilamentExceptionsPlugin::make()
            ->navigationLabel('Error Logs')
            ->navigationIcon('heroicon-o-bug-ant')
            ->navigationBadge()
            ->navigationGroup('System')
            ->modelPruneInterval(now()->subDays(7))
    ]);



namespace App\Models;

use BezhanSalleh\FilamentExceptions\Models\Exception as BaseException;

class MyCustomException extends BaseException
{
    ...
}

use App\Models\MyCustomException;
use BezhanSalleh\FilamentExceptions\FilamentExceptions;
...
   public function boot()
   {
       FilamentExceptions::model(MyCustomException::class);
   }
...
bash
php artisan exceptions:install
js
export default {
    content: [
        // ...
        './vendor/bezhansalleh/filament-exceptions/resources/views/**/*.blade.php',
    ],
    // ...
}
bash
php artisan vendor:publish --tag=filament-exceptions-translations