app->register(RouteServiceProvider::class); $this->mergeConfigFrom(module_path('Analytics', 'Config/config.php'), 'analytics'); } public function boot(): void { $this->loadMigrationsFrom(module_path('Analytics', 'Database/Migrations')); $this->loadViewsFrom(module_path('Analytics', 'Resources/views'), 'analytics'); if ($this->app->runningInConsole()) { $this->commands([AggregateAnalytics::class, PruneAnalytics::class, RunScheduledReports::class]); $this->callAfterResolving(Schedule::class, function (Schedule $schedule): void { $schedule->command('analytics:aggregate')->hourly()->withoutOverlapping(); $schedule->command('analytics:reports')->everyFifteenMinutes()->withoutOverlapping(); $schedule->command('analytics:prune')->dailyAt('02:30')->withoutOverlapping(); }); } } }