public async Task BackupAsync(CancellationToken cancellationToken = default) { var backupDirPath = _pathProvider.GetDatabaseBackupDirectory(); Directory.CreateDirectory(backupDirPath); var fileName = _clock.GetCurrentTime().ToString("yyyy-MM-ddTHH-mm-ss", CultureInfo.InvariantCulture); var path = Path.Combine(backupDirPath, fileName); await _database.Database.ExecuteSqlInterpolatedAsync($"VACUUM INTO {path}", cancellationToken); _logger.LogWarning(Resource.DatabaseBackupServiceFinishBackup, path); }