diff --git a/bigbluebutton-html5/imports/startup/server/redis.js b/bigbluebutton-html5/imports/startup/server/redis.js
index 739164c47d..49fb95d991 100755
--- a/bigbluebutton-html5/imports/startup/server/redis.js
+++ b/bigbluebutton-html5/imports/startup/server/redis.js
@@ -27,17 +27,12 @@ const makeEnvelope = (channel, eventName, header, body, routing) => {
return JSON.stringify(envelope);
};
-const makeDebugger = enabled => (message) => {
- if (!enabled) return;
- Logger.debug(`REDIS: ${message}`);
-};
-
class MeetingMessageQueue {
- constructor(eventEmitter, asyncMessages = [], debug = () => { }) {
+ constructor(eventEmitter, asyncMessages = [], redisDebugEnabled = false) {
this.asyncMessages = asyncMessages;
this.emitter = eventEmitter;
this.queue = new PowerQueue();
- this.debug = debug;
+ this.redisDebugEnabled = redisDebugEnabled;
this.handleTask = this.handleTask.bind(this);
this.queue.taskHandler = this.handleTask;
@@ -60,11 +55,13 @@ class MeetingMessageQueue {
const callNext = () => {
if (called) return;
- this.debug(`${eventName} completed ${isAsync ? 'async' : 'sync'}`);
+ if (this.redisDebugEnabled) {
+ Logger.debug(`Redis: ${eventName} completed ${isAsync ? 'async' : 'sync'}`);
+ }
called = true;
const queueLength = this.queue.length();
- if (queueLength > 100) {
- Logger.error(`prev queue size=${queueLength} `);
+ if (queueLength > 0) {
+ Logger.warn(`Redis: MeetingMessageQueue for meetingId=${meetingId} has queue size=${queueLength} `);
}
next();
};
@@ -75,7 +72,9 @@ class MeetingMessageQueue {
};
try {
- this.debug(`${JSON.stringify(data.parsedMessage.core)} emitted`);
+ if (this.redisDebugEnabled) {
+ Logger.debug(`Redis: ${JSON.stringify(data.parsedMessage.core)} emitted`);
+ }
if (isAsync) {
callNext();
@@ -125,7 +124,6 @@ class RedisPubSub {
this.handleSubscribe = this.handleSubscribe.bind(this);
this.handleMessage = this.handleMessage.bind(this);
- this.debug = makeDebugger(this.config.debug);
}
init() {
@@ -138,12 +136,14 @@ class RedisPubSub {
this.sub.psubscribe(channel);
});
- this.debug(`Subscribed to '${channelsToSubscribe}'`);
+ if (this.redisDebugEnabled) {
+ Logger.debug(`Redis: Subscribed to '${channelsToSubscribe}'`);
+ }
}
updateConfig(config) {
this.config = Object.assign({}, this.config, config);
- this.debug = makeDebugger(this.config.debug);
+ this.redisDebugEnabled = this.config.debug;
}
@@ -174,14 +174,16 @@ class RedisPubSub {
if (eventName === 'CheckAlivePongSysMsg') {
return;
}
- this.debug(`${eventName} skipped`);
+ if (this.redisDebugEnabled) {
+ Logger.debug(`Redis: ${eventName} skipped`);
+ }
return;
}
const queueId = meetingId || NO_MEETING_ID;
if (!(queueId in this.mettingsQueues)) {
- this.mettingsQueues[meetingId] = new MeetingMessageQueue(this.emitter, async, this.debug);
+ this.mettingsQueues[meetingId] = new MeetingMessageQueue(this.emitter, async, this.redisDebugEnabled);
}
this.mettingsQueues[meetingId].add({