芝麻web文件管理V1.00
编辑当前文件:/home/sditechnicalteam/public_html/vendor/spatie/laravel-backup/src/Commands/ListCommand.php
has('backup.monitorBackups')) { $this->warn("Warning! Your config file still uses the old monitorBackups key. Update it to monitor_backups."); } $statuses = BackupDestinationStatusFactory::createForMonitorConfig(config('backup.monitor_backups')); $this->displayOverview($statuses)->displayFailures($statuses); } protected function displayOverview(Collection $backupDestinationStatuses) { $headers = ['Name', 'Disk', 'Reachable', 'Healthy', '# of backups', 'Newest backup', 'Used storage']; $rows = $backupDestinationStatuses->map(function (BackupDestinationStatus $backupDestinationStatus) { return $this->convertToRow($backupDestinationStatus); }); $this->table($headers, $rows, 'default', [ 4 => new RightAlignedTableStyle(), 6 => new RightAlignedTableStyle(), ]); return $this; } public function convertToRow(BackupDestinationStatus $backupDestinationStatus): array { $destination = $backupDestinationStatus->backupDestination(); $row = [ $destination->backupName(), 'disk' => $destination->diskName(), Format::emoji($destination->isReachable()), Format::emoji($backupDestinationStatus->isHealthy()), 'amount' => $destination->backups()->count(), 'newest' => $this->getFormattedBackupDate($destination->newestBackup()), 'usedStorage' => Format::humanReadableSize($destination->usedStorage()), ]; if (! $destination->isReachable()) { foreach (['amount', 'newest', 'usedStorage'] as $propertyName) { $row[$propertyName] = '/'; } } if ($backupDestinationStatus->getHealthCheckFailure() !== null) { $row['disk'] = '
'.$row['disk'].'
'; } return $row; } protected function displayFailures(Collection $backupDestinationStatuses) { $failed = $backupDestinationStatuses ->filter(function (BackupDestinationStatus $backupDestinationStatus) { return $backupDestinationStatus->getHealthCheckFailure() !== null; }) ->map(function (BackupDestinationStatus $backupDestinationStatus) { return [ $backupDestinationStatus->backupDestination()->backupName(), $backupDestinationStatus->backupDestination()->diskName(), $backupDestinationStatus->getHealthCheckFailure()->healthCheck()->name(), $backupDestinationStatus->getHealthCheckFailure()->exception()->getMessage(), ]; }); if ($failed->isNotEmpty()) { $this->warn(''); $this->warn('Unhealthy backup destinations'); $this->warn('-----------------------------'); $this->table(['Name', 'Disk', 'Failed check', 'Description'], $failed->all()); } return $this; } protected function getFormattedBackupDate(Backup $backup = null) { return is_null($backup) ? 'No backups present' : Format::ageInDays($backup->date()); } }