[ 'path' => env('WORKKIT_BACKUP_PATH'), // null → storage_path('backups') 'retention_days' => (int) env('WORKKIT_BACKUP_RETENTION_DAYS', 30), // Always keep at least this many newest backups regardless of age. // 0 disables the floor (prune may then leave zero backups). 'retention_min_keep' => (int) env('WORKKIT_BACKUP_RETENTION_MIN_KEEP', 5), // xz compression level. Lower = faster + larger output. 3 is a // good default for SQL dumps (~10× ratio at ~3× the speed of -9). 'xz_level' => (int) env('WORKKIT_BACKUP_XZ_LEVEL', 3), ], /* |-------------------------------------------------------------------------- | Stats overview (workkit:stats) |-------------------------------------------------------------------------- | | `models` is an explicit list of Eloquent model FQCNs to count. When null | the command auto-discovers models by scanning `models_path` (default: | app_path('Models')). Set an explicit list to avoid scanning, or to count | models that live outside app/Models. | */ 'stats' => [ 'models' => null, // e.g. [\App\Models\User::class, \App\Models\Order::class] 'models_path' => null, // null → app_path('Models') ], /* |-------------------------------------------------------------------------- | Queue health thresholds (workkit:queue:health) |-------------------------------------------------------------------------- | | The command exits non-zero when any of these is breached. `max_depth` | applies per queue; `max_depth_per_queue` overrides it for named queues | (e.g. an intentionally-slow, rate-limited queue allowed a deeper backlog). | A queue is flagged STALLED when its oldest *due* job is older than | `max_age_minutes` while nothing is reserved (worker likely down). | */ 'queue' => [ 'max_depth' => (int) env('WORKKIT_QUEUE_MAX_DEPTH', 250), 'max_depth_per_queue' => [], // e.g. ['geoip' => 5000] 'max_age_minutes' => (int) env('WORKKIT_QUEUE_MAX_AGE_MINUTES', 15), 'max_failed' => (int) env('WORKKIT_QUEUE_MAX_FAILED', 25), ], ];