Bläddra i källkod

Logs the reason for the reload

master
hristoterezov 9 år sedan
förälder
incheckning
b2d1ed5d0d
3 ändrade filer med 23 tillägg och 7 borttagningar
  1. 8
    4
      JitsiConferenceEventManager.js
  2. 5
    3
      JitsiConnection.js
  3. 10
    0
      modules/statistics/statistics.js

+ 8
- 4
JitsiConferenceEventManager.js Visa fil

171
     chatRoom.addListener(XMPPEvents.FOCUS_LEFT,
171
     chatRoom.addListener(XMPPEvents.FOCUS_LEFT,
172
         function () {
172
         function () {
173
             Statistics.analytics.sendEvent('conference.focusLeft');
173
             Statistics.analytics.sendEvent('conference.focusLeft');
174
-            if(!conference.connection._reload())
174
+            if(!conference.connection._reload("focusLeft"))
175
                 conference.eventEmitter.emit(
175
                 conference.eventEmitter.emit(
176
                     JitsiConferenceEvents.CONFERENCE_FAILED,
176
                     JitsiConferenceEvents.CONFERENCE_FAILED,
177
                     JitsiConferenceErrors.FOCUS_LEFT);
177
                     JitsiConferenceErrors.FOCUS_LEFT);
178
         });
178
         });
179
 
179
 
180
-    var reloadHandler = function () { conference.connection._reload(); };
180
+    var reloadHandler = function (reason) {
181
+        conference.connection._reload(reason);
182
+    };
181
     chatRoom.addListener(
183
     chatRoom.addListener(
182
-        XMPPEvents.ALLOCATE_FOCUS_MAX_RETRIES_ERROR, reloadHandler);
183
-    chatRoom.addListener(XMPPEvents.SESSION_ACCEPT_TIMEOUT, reloadHandler);
184
+        XMPPEvents.ALLOCATE_FOCUS_MAX_RETRIES_ERROR,
185
+        reloadHandler.bind(null, "allocateFocusMaxRetries"));
186
+    chatRoom.addListener(XMPPEvents.SESSION_ACCEPT_TIMEOUT,
187
+        reloadHandler.bind(null, "sessionAcceptTimeout"));
184
 
188
 
185
     this.chatRoomForwarder.forward(XMPPEvents.CONNECTION_INTERRUPTED,
189
     this.chatRoomForwarder.forward(XMPPEvents.CONNECTION_INTERRUPTED,
186
         JitsiConferenceEvents.CONNECTION_INTERRUPTED);
190
         JitsiConferenceEvents.CONNECTION_INTERRUPTED);

+ 5
- 3
JitsiConnection.js Visa fil

29
             Statistics.analytics.sendEvent('connection.failed.' + errType);
29
             Statistics.analytics.sendEvent('connection.failed.' + errType);
30
             if(errType === JitsiConnectionErrors.OTHER_ERROR &&
30
             if(errType === JitsiConnectionErrors.OTHER_ERROR &&
31
                 (msg === "item-not-found" || msg === "host-unknown")) {
31
                 (msg === "item-not-found" || msg === "host-unknown")) {
32
+                    var reason = "connectionError." + msg.replace(/-/g,"_");
32
                     // FIXME: don't report the error if we are going to reload
33
                     // FIXME: don't report the error if we are going to reload
33
-                    this._reload();
34
+                    this._reload(reason);
34
                 }
35
                 }
35
         }.bind(this));
36
         }.bind(this));
36
 
37
 
70
 
71
 
71
 /**
72
 /**
72
  * Reloads the JitsiConnection instance and all related conferences
73
  * Reloads the JitsiConnection instance and all related conferences
74
+ * @param reason {String} the reason for the reload.
73
  */
75
  */
74
-JitsiConnection.prototype._reload = function () {
76
+JitsiConnection.prototype._reload = function (reason) {
75
     if(this.retryOnFail === 0)
77
     if(this.retryOnFail === 0)
76
         return false;
78
         return false;
77
-    Statistics.analytics.sendEvent('connection.reload');
79
+    Statistics.sendReloadEvent(reason);
78
     this.retryOnFail--;
80
     this.retryOnFail--;
79
     var states = {};
81
     var states = {};
80
     for(var name in this.conferences) {
82
     for(var name in this.conferences) {

+ 10
- 0
modules/statistics/statistics.js Visa fil

489
     }
489
     }
490
 };
490
 };
491
 
491
 
492
+/**
493
+ * Reports reloads.
494
+ * @param reason {string} the reason for the reload.
495
+ */
496
+Statistics.sendReloadEvent = function (reason) {
497
+    var eventName = 'connection.reload' + (reason? "." + reason : "");
498
+    this.analytics.sendEvent(eventName);
499
+    Statistics.sendLog("connection.reload. Reason: " + reason);
500
+}
501
+
492
 module.exports = Statistics;
502
 module.exports = Statistics;

Laddar…
Avbryt
Spara