Bug 972797 - More telemetry on SessionStore data collection. r=ttaubert

This commit is contained in:
David Rajchenbach-Teller 2014-02-18 18:51:23 +01:00
parent 9d0ed925a4
commit 5cb85f6617
2 changed files with 32 additions and 1 deletions

View File

@ -2011,6 +2011,7 @@ let SessionStoreInternal = {
var activeWindow = this._getMostRecentBrowserWindow();
TelemetryStopwatch.start("FX_SESSION_RESTORE_COLLECT_ALL_WINDOWS_DATA_MS");
if (this._loadState == STATE_RUNNING) {
// update the data for all windows with activities since the last save operation
this._forEachBrowserWindow(function(aWindow) {
@ -2025,6 +2026,7 @@ let SessionStoreInternal = {
});
DirtyWindows.clear();
}
TelemetryStopwatch.finish("FX_SESSION_RESTORE_COLLECT_ALL_WINDOWS_DATA_MS");
// An array that at the end will hold all current window data.
var total = [];
@ -2043,7 +2045,10 @@ let SessionStoreInternal = {
if (!this._windows[ix].isPopup)
nonPopupCount++;
}
TelemetryStopwatch.start("FX_SESSION_RESTORE_COLLECT_COOKIES_MS");
SessionCookies.update(total);
TelemetryStopwatch.finish("FX_SESSION_RESTORE_COLLECT_COOKIES_MS");
// collect the data for all windows yet to be restored
for (ix in this._statesToRestore) {
@ -2089,7 +2094,7 @@ let SessionStoreInternal = {
};
// get open Scratchpad window states too
var scratchpads = ScratchpadManager.getSessionState();
let scratchpads = ScratchpadManager.getSessionState();
let state = {
windows: total,
@ -2138,6 +2143,7 @@ let SessionStoreInternal = {
_collectWindowData: function ssi_collectWindowData(aWindow) {
if (!this._isWindowLoaded(aWindow))
return;
TelemetryStopwatch.start("FX_SESSION_RESTORE_COLLECT_SINGLE_WINDOW_DATA_MS");
let tabbrowser = aWindow.gBrowser;
let tabs = tabbrowser.tabs;
@ -2159,6 +2165,7 @@ let SessionStoreInternal = {
aWindow.__SS_lastSessionWindowID;
DirtyWindows.remove(aWindow);
TelemetryStopwatch.finish("FX_SESSION_RESTORE_COLLECT_SINGLE_WINDOW_DATA_MS");
},
/* ........ Restoring Functionality .............. */

View File

@ -3293,6 +3293,30 @@
"extended_statistics_ok": true,
"description": "Widget: Time it takes for the message before a UI message (ms)"
},
"FX_SESSION_RESTORE_COLLECT_ALL_WINDOWS_DATA_MS": {
"expires_in_version": "never",
"kind": "exponential",
"high": "30000",
"n_buckets": 10,
"extended_statistics_ok": true,
"description": "Session restore: Time to collect all window data (ms)"
},
"FX_SESSION_RESTORE_COLLECT_SINGLE_WINDOW_DATA_MS": {
"expires_in_version": "never",
"kind": "exponential",
"high": "30000",
"n_buckets": 10,
"extended_statistics_ok": true,
"description": "Session restore: Time to collect the data of a single window (ms)"
},
"FX_SESSION_RESTORE_COLLECT_COOKIES_MS": {
"expires_in_version": "never",
"kind": "exponential",
"high": "30000",
"n_buckets": 10,
"extended_statistics_ok": true,
"description": "Session restore: Time to collect cookies (ms)"
},
"FX_SESSION_RESTORE_COLLECT_DATA_MS": {
"expires_in_version": "never",
"kind": "exponential",