From aae397086502a69cca0e582a9461bb8466530ab5 Mon Sep 17 00:00:00 2001 From: Mark McDowall Date: Tue, 2 Jun 2015 00:18:34 -0700 Subject: [PATCH] More logging for CommandExecutor --- src/NzbDrone.Core/Messaging/Commands/CommandExecutor.cs | 5 +++-- src/NzbDrone.Core/Messaging/Commands/CommandQueueManager.cs | 5 +++-- src/NzbDrone.Core/Messaging/Commands/CommandRepository.cs | 2 +- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/src/NzbDrone.Core/Messaging/Commands/CommandExecutor.cs b/src/NzbDrone.Core/Messaging/Commands/CommandExecutor.cs index 42051f763..ce84f54b1 100644 --- a/src/NzbDrone.Core/Messaging/Commands/CommandExecutor.cs +++ b/src/NzbDrone.Core/Messaging/Commands/CommandExecutor.cs @@ -48,12 +48,12 @@ namespace NzbDrone.Core.Messaging.Commands } catch (ThreadAbortException ex) { - _logger.ErrorException(ex.Message, ex); + _logger.ErrorException("Thread aborted: " + ex.Message, ex); Thread.ResetAbort(); } catch (Exception ex) { - _logger.Error(ex.Message, ex); + _logger.Error("Unknown error in thread: " + ex.Message, ex); } } @@ -80,6 +80,7 @@ namespace NzbDrone.Core.Messaging.Commands } catch (CommandFailedException ex) { + _commandQueueManager.SetMessage(commandModel, "Failed"); _commandQueueManager.Fail(commandModel, ex.Message, ex); throw; } diff --git a/src/NzbDrone.Core/Messaging/Commands/CommandQueueManager.cs b/src/NzbDrone.Core/Messaging/Commands/CommandQueueManager.cs index 7f44827e3..41ab6bf91 100644 --- a/src/NzbDrone.Core/Messaging/Commands/CommandQueueManager.cs +++ b/src/NzbDrone.Core/Messaging/Commands/CommandQueueManager.cs @@ -150,14 +150,15 @@ namespace NzbDrone.Core.Messaging.Commands public void CleanCommands() { _logger.Trace("Cleaning up old commands"); - _repo.Trim(); - + var old = _commandCache.Values.Where(c => c.EndedAt < DateTime.UtcNow.AddMinutes(5)); foreach (var command in old) { _commandCache.Remove(command.Id.ToString()); } + + _repo.Trim(); } private dynamic GetCommand(string commandName) diff --git a/src/NzbDrone.Core/Messaging/Commands/CommandRepository.cs b/src/NzbDrone.Core/Messaging/Commands/CommandRepository.cs index f315ab6de..b873d28aa 100644 --- a/src/NzbDrone.Core/Messaging/Commands/CommandRepository.cs +++ b/src/NzbDrone.Core/Messaging/Commands/CommandRepository.cs @@ -77,7 +77,7 @@ namespace NzbDrone.Core.Messaging.Commands public void End(CommandModel command) { - SetFields(command, c => c.EndedAt, c => c.Status, c => c.Duration); + SetFields(command, c => c.EndedAt, c => c.Status, c => c.Duration, c => c.Exception); } } }