Files
einundzwanzig-app/app/Providers/AppServiceProvider.php
HolgerHatGarKeineNode 86708f1194 🛠️ Integrate Laravel Nightwatch and enhance middleware handling
- Added Laravel Nightwatch for advanced monitoring and user sampling.
- Customized Livewire update route with rate-limiting middleware.
- Introduced a global fallback route with 404 response and sampling middleware.
- Enabled event listening for health diagnosis with Nightwatch sampling adjustments.
- Refined lazy loading prevention in local environments.
2025-11-23 21:12:30 +01:00

50 lines
1.2 KiB
PHP

<?php
namespace App\Providers;
use App\Support\Carbon;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Foundation\Events\DiagnosingHealth;
use Illuminate\Support\Facades\Date;
use Illuminate\Support\Facades\Event;
use Illuminate\Support\Facades\Route;
use Illuminate\Support\ServiceProvider;
use Laravel\Nightwatch\Facades\Nightwatch;
use Laravel\Nightwatch\Http\Middleware\Sample;
use Livewire\Livewire;
class AppServiceProvider extends ServiceProvider
{
/**
* Register any application services.
*/
public function register(): void
{
Date::use(
Carbon::class
);
}
/**
* Bootstrap any application services.
*/
public function boot(): void
{
Livewire::setUpdateRoute(function ($handle) {
return Route::post('/livewire/update', $handle)
->middleware(['web', Sample::rate(0)]);
});
Nightwatch::user(fn (Authenticatable $user) => [
'name' => $user->name,
]);
Event::listen(function (DiagnosingHealth $event) {
Nightwatch::dontSample();
});
Model::preventLazyLoading(app()->environment('local'));
}
}