Improve Release Grabbing & Failure Logging

This commit is contained in:
bakerboy448 2024-01-27 11:56:08 -06:00 committed by Mark McDowall
parent 19db75b36b
commit d7aea82e45
1 changed files with 5 additions and 6 deletions

View File

@ -196,31 +196,30 @@ namespace NzbDrone.Core.Download
private async Task<ProcessedDecisionResult> ProcessDecisionInternal(DownloadDecision decision, int? downloadClientId = null) private async Task<ProcessedDecisionResult> ProcessDecisionInternal(DownloadDecision decision, int? downloadClientId = null)
{ {
var remoteEpisode = decision.RemoteEpisode; var remoteEpisode = decision.RemoteEpisode;
var remoteIndexer = remoteEpisode.Release.Indexer;
try try
{ {
_logger.Trace("Grabbing from Indexer {0} at priority {1}.", remoteEpisode.Release.Indexer, remoteEpisode.Release.IndexerPriority); _logger.Trace("Grabbing release '{0}' from Indexer {1} at priority {2}.", remoteEpisode, remoteIndexer, remoteEpisode.Release.IndexerPriority);
await _downloadService.DownloadReport(remoteEpisode, downloadClientId); await _downloadService.DownloadReport(remoteEpisode, downloadClientId);
return ProcessedDecisionResult.Grabbed; return ProcessedDecisionResult.Grabbed;
} }
catch (ReleaseUnavailableException) catch (ReleaseUnavailableException)
{ {
_logger.Warn("Failed to download release from indexer, no longer available. " + remoteEpisode); _logger.Warn("Failed to download release '{0}' from Indexer {1}. Release not available", remoteEpisode, remoteIndexer);
return ProcessedDecisionResult.Rejected; return ProcessedDecisionResult.Rejected;
} }
catch (Exception ex) catch (Exception ex)
{ {
if (ex is DownloadClientUnavailableException || ex is DownloadClientAuthenticationException) if (ex is DownloadClientUnavailableException || ex is DownloadClientAuthenticationException)
{ {
_logger.Debug(ex, _logger.Debug(ex, "Failed to send release '{0}' from Indexer {1} to download client, storing until later.", remoteEpisode, remoteIndexer);
"Failed to send release to download client, storing until later. " + remoteEpisode);
return ProcessedDecisionResult.Failed; return ProcessedDecisionResult.Failed;
} }
else else
{ {
_logger.Warn(ex, "Couldn't add report to download queue. " + remoteEpisode); _logger.Warn(ex, "Couldn't add release '{0}' from Indexer {1} to download queue.", remoteEpisode, remoteIndexer);
return ProcessedDecisionResult.Skipped; return ProcessedDecisionResult.Skipped;
} }
} }