@@ -19,6 +19,7 @@ internal class QueueServiceClientProvider : StorageClientProvider<QueueServiceCl
1919 {
2020 private readonly QueuesOptions _queuesOptions ;
2121 private readonly ILoggerFactory _loggerFactory ;
22+ private readonly ILogger < QueueServiceClient > _logger ;
2223 private readonly IQueueProcessorFactory _queueProcessorFactory ;
2324 private readonly SharedQueueWatcher _messageEnqueuedWatcher ;
2425
@@ -35,6 +36,7 @@ public QueueServiceClientProvider(
3536 {
3637 _queuesOptions = queueOptions ? . Value ;
3738 _loggerFactory = loggerFactory ;
39+ _logger = logger ;
3840 _queueProcessorFactory = queueProcessorFactory ;
3941 _messageEnqueuedWatcher = messageEnqueuedWatcher ;
4042 }
@@ -76,10 +78,12 @@ private SyncAsyncEventHandler<QueueMessageDecodingFailedEventArgs> CreateMessage
7678 // This event is raised only in async paths hence args.IsRunningSynchronously is ignored.
7779 if ( args . ReceivedMessage != null )
7880 {
81+ var receivedMessage = args . ReceivedMessage ;
7982 var queueClient = args . Queue ;
83+ _logger . LogWarning ( "Message decoding has failed! Check MessageEncoding settings. MessageId={messageId}." , receivedMessage . MessageId ) ;
8084 var poisonQueueClient = QueueListenerFactory . CreatePoisonQueueReference ( nonEncodingQueueServiceClient , queueClient . Name ) ;
8185 var queueProcessor = QueueListenerFactory . CreateQueueProcessor ( queueClient , poisonQueueClient , _loggerFactory , _queueProcessorFactory , _queuesOptions , _messageEnqueuedWatcher ) ;
82- await queueProcessor . HandlePoisonMessageAsync ( args . ReceivedMessage , args . CancellationToken ) . ConfigureAwait ( false ) ;
86+ await queueProcessor . HandlePoisonMessageAsync ( receivedMessage , args . CancellationToken ) . ConfigureAwait ( false ) ;
8387 }
8488 } ;
8589 }
0 commit comments