diff --git a/src/describe.js b/src/describe.js index 5864f1f..032bc8b 100644 --- a/src/describe.js +++ b/src/describe.js @@ -16,7 +16,7 @@ module.exports.subscribeToDescribe = function (carotte, qualifier, meta) { qualifier = qualifier.replace(`:${configs.debugToken}`, ''); } - carotte.subscribe(`${qualifier}:describe`, { queue: { durable: false, autoDelete: true } }, () => { + return carotte.subscribe(`${qualifier}:describe`, { queue: { durable: false, autoDelete: true } }, () => { return meta; }); }; diff --git a/src/index.js b/src/index.js index 3121b0d..c4f5959 100644 --- a/src/index.js +++ b/src/index.js @@ -462,10 +462,11 @@ function Carotte(config) { qualifier = getDebugQueueName(qualifier, options); } + const promises = []; if (meta) { autodocAgent.addSubscriber(qualifier, meta); if (config.autoDescribe) { - describe.subscribeToDescribe(this, qualifier, meta); + promises.push(describe.subscribeToDescribe(this, qualifier, meta)); } } @@ -474,7 +475,7 @@ function Carotte(config) { const exchangeName = getExchangeName(options); const queueName = getQueueName(options, config); - return Promise.race([ + return Promise.race(promises.concat([ new Promise((_resolve, reject) => { setTimeout(() => { /** @@ -534,7 +535,7 @@ function Carotte(config) { throw error; }) - ]); + ])); /**