C# RabbitMQ. Событие успешного авто восстановления коннекта

Использую RabbitMQ.Client, и тестирую функцию AutomaticRecoveryEnabled. Все хорошо работает при проблемах с Tcp коннектом или при перезапуске RabbitMQ. Хорошо бы иметь событие на отключение от RabbitMQ и событие подключения (восстановления связи) Событие на отключение есть - это ConnectionShutdown, а событие которое должно возникнуть при отработке автоматического реконекта я не нашел. При Публикации сообщения возникает BrokerUnreachableException, если RabbitMQ не на связи, других идентификаторов недоступности RabbitMQ я не нашел.

        _factory = new ConnectionFactory
        {
            Uri = new Uri(amqpConnStr),
            AutomaticRecoveryEnabled = true,
            NetworkRecoveryInterval = TimeSpan.FromSeconds(5),
            RequestedHeartbeat = TimeSpan.FromSeconds(5)
        };
        _connection = _factory.CreateConnection();
        _connection.ConnectionShutdown+= (sender, args) =>
             {
                 //Возникает при отключении RabbitMq
             };

Ответы (1 шт):

Автор решения: Aldmi

Для этого можно использовать события в channel

_connection = _factory.CreateConnection();
_channel = _connection.CreateModel();
_channel.ModelShutdown += (sender, args) =>
{
    //Отключение
};
((IRecoverable)_channel).Recovery += (sender, args) =>
{
    //Восстановление связи
};
→ Ссылка