private void DefaultExceptionHandler(Exception ex)
        {
            Log.Error("Message exception handler threw an error", ex);

            if (!(ex is UnRetryableMessagingException))
            {
                if (this.Message.RetryAttempts < messageService.RetryCount)
                {
                    this.Message.RetryAttempts++;

                    this.Message.Error = new MessagingException(ex.Message, ex).ToMessageError();
                    MqClient.Publish(QueueNames <T> .In, this.Message.ToBytes());
                    return;
                }
            }

            MqClient.Publish(QueueNames <T> .Dlq, this.Message.ToBytes());
        }
Пример #2
0
        private void DefaultInExceptionHandler(IMessage <T> message, Exception ex)
        {
            Log.Error("Message exception handler threw an error", ex);

            if (!(ex is UnRetryableMessagingException))
            {
                if (message.RetryAttempts < retryCount)
                {
                    message.RetryAttempts++;
                    this.TotalRetries++;

                    message.Error = new MessagingException(ex.Message, ex).ToMessageError();
                    MqClient.Publish(QueueNames <T> .In, message.ToBytes());
                    return;
                }
            }

            MqClient.Publish(QueueNames <T> .Dlq, message.ToBytes());
        }