Я использую AMQPTransport lib для связи между машинами (и очень новыми для нее) и хочу перехватывать ошибки, когда соединение не установлено. Поэтому, когда я запускаю тесты
public async connect(): Promise<MsFiles> {
let attempt = 0;
while (!this.$amqp) {
try {
console.log('CONNECT___________________');
this.$amqp = await amqpConnect(this.config.amqp);
console.log(this.$amqp, 'AMQP!!!!!!!!');
} catch (err) {
console.log(err, 'errr!!!!!!!!!!!!!!!');
if (attempt >= 60) throw err;
await Bluebird.delay(1000);
attempt += 1;
}
}
return this;
}
Когда виртуальная машина rabbitMQ работает, она работает, это. console.log (err, 'errr !!!!!!!!!!!!!!!'); ' я не получаю эту ошибку в консоли. Поэтому в основном я хочу отловить ошибку, когда соединение не установлено, вместо этого я ничего не получаю после 'console.log (' CONNECT ___________________ ');'
функция amqpConnect
const config = {
connection: {
host: 'rabbitmq',
port: 5672,
},
};
export const amqpConnect = async (opts?: typeof config) => (
AMQPTransport.connect(defaultsDeep(config, opts))
);