private async Task Handle<TMessage>(TMessage message, CancellationToken token) { try { await ProcessMessage(message, token); } catch (Exception e) when (e is not OperationCanceledException) { Logger.LogError(e, "There was an error while processing {message}.", typeof(TMessage).Name); } }