0

我已经在我的应用程序中配置了 Spatie/Laravel 备份,并且我已经为此安排了工作,它每天都会自动进行备份。但是我可以只保存最近的 5 或 10 个系统备份吗?如果创建了新备份,则应删除最旧的备份!这是我的备份配置文件清理策略:

'cleanup' => [
        /*
         * The strategy that will be used to cleanup old backups. The default strategy
         * will keep all backups for a certain amount of days. After that period only
         * a daily backup will be kept. After that period only weekly backups will
         * be kept and so on.
         *
         * No matter how you configure it the default strategy will never
         * delete the newest backup.
         */
        'strategy' => \Spatie\Backup\Tasks\Cleanup\Strategies\DefaultStrategy::class,

        'default_strategy' => [

            /*
             * The number of days for which backups must be kept.
             */
            'keep_all_backups_for_days' => 7,

            /*
             * The number of days for which daily backups must be kept.
             */
            'keep_daily_backups_for_days' => 16,

            /*
             * The number of weeks for which one weekly backup must be kept.
             */
            'keep_weekly_backups_for_weeks' => 8,

            /*
             * The number of months for which one monthly backup must be kept.
             */
            'keep_monthly_backups_for_months' => 4,

            /*
             * The number of years for which one yearly backup must be kept.
             */
            'keep_yearly_backups_for_years' => 2,

            /*
             * After cleaning up the backups remove the oldest backup until
             * this amount of megabytes has been reached.
             */
            'delete_oldest_backups_when_using_more_megabytes_than' => 5000,
        ],
    ],

这是创建备份的功能!

 public function create()
    {
        try {
            // start the backup process
            \Illuminate\Support\Facades\Artisan::call('backup:run');
            $output = \Illuminate\Support\Facades\Artisan::output();
            // log the results
            Log::info("Backpack\BackupManager -- new backup started from admin interface \r\n" . $output);
            // return the results as a response to the ajax call
            return redirect('/backups')->with('message', 'Backup Created Successfully!')->with('alertType', 'alert-success');
        } catch (Exception $e) {
            return redirect('/backups')->with('message', 'Backup Failed, Try again')->with('alertType', 'alert-warning');
        }
    }
4

0 回答 0