AMQPTransport.connect не перехватывает ошибку, когда соединение не установлено - PullRequest
0 голосов
/ 10 января 2020

Я использую 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))
);
...