where('is_paused', false) ->where('is_deleted', false) ->whereNotNull('next_run') ->where('next_run', '<=', now()) ->cursor() ->each(function ($scheduler) { nlog("Doing job {$scheduler->name}"); try { //@var \App\Models\Schedule $scheduler $scheduler->service()->runTask(); } catch(\Exception $e) { nlog($e->getMessage()); } }); return; } foreach (MultiDB::$dbs as $db) { MultiDB::setDB($db); Scheduler::with('company') ->where('is_paused', false) ->where('is_deleted', false) ->whereNotNull('next_run') ->where('next_run', '<=', now()) ->cursor() ->each(function ($scheduler) { nlog("Doing job {$scheduler->name}"); try { /** @var \App\Models\Scheduler $scheduler */ $scheduler->service()->runTask(); } catch(\Exception $e) { nlog($e->getMessage()); } }); } } }