Bug 1944631 - Migrate histograms to use Glean APIs for FX_SESSION_RESTORE_* histograms, r=chutten,sessionstore-reviewers,nsharpley.
Differential Revision: https://phabricator.services.mozilla.com/D238095
This commit is contained in:
@@ -271,12 +271,10 @@ var SessionFileInternal = {
|
|||||||
path_key: key,
|
path_key: key,
|
||||||
loadfail_reason: "N/A",
|
loadfail_reason: "N/A",
|
||||||
});
|
});
|
||||||
Services.telemetry
|
Glean.sessionRestore.corruptFile.false.add();
|
||||||
.getHistogramById("FX_SESSION_RESTORE_CORRUPT_FILE")
|
Glean.sessionRestore.readFile.accumulateSingleSample(
|
||||||
.add(false);
|
Date.now() - startMs
|
||||||
Services.telemetry
|
);
|
||||||
.getHistogramById("FX_SESSION_RESTORE_READ_FILE_MS")
|
|
||||||
.add(Date.now() - startMs);
|
|
||||||
lazy.sessionStoreLogger.debug(`Successful file read of ${key} file`);
|
lazy.sessionStoreLogger.debug(`Successful file read of ${key} file`);
|
||||||
break;
|
break;
|
||||||
} catch (ex) {
|
} catch (ex) {
|
||||||
@@ -324,9 +322,7 @@ var SessionFileInternal = {
|
|||||||
} finally {
|
} finally {
|
||||||
if (exists) {
|
if (exists) {
|
||||||
noFilesFound = false;
|
noFilesFound = false;
|
||||||
Services.telemetry
|
Glean.sessionRestore.corruptFile[corrupted ? "true" : "false"].add();
|
||||||
.getHistogramById("FX_SESSION_RESTORE_CORRUPT_FILE")
|
|
||||||
.add(corrupted);
|
|
||||||
Glean.sessionRestore.backupCanBeLoadedSessionFile.record({
|
Glean.sessionRestore.backupCanBeLoadedSessionFile.record({
|
||||||
can_load: (!corrupted).toString(),
|
can_load: (!corrupted).toString(),
|
||||||
path_key: key,
|
path_key: key,
|
||||||
@@ -351,9 +347,7 @@ var SessionFileInternal = {
|
|||||||
|
|
||||||
// All files are corrupted if files found but none could deliver a result.
|
// All files are corrupted if files found but none could deliver a result.
|
||||||
let allCorrupt = !noFilesFound && !result;
|
let allCorrupt = !noFilesFound && !result;
|
||||||
Services.telemetry
|
Glean.sessionRestore.allFilesCorrupt[allCorrupt ? "true" : "false"].add();
|
||||||
.getHistogramById("FX_SESSION_RESTORE_ALL_FILES_CORRUPT")
|
|
||||||
.add(allCorrupt);
|
|
||||||
|
|
||||||
if (!result) {
|
if (!result) {
|
||||||
// If everything fails, start with an empty session.
|
// If everything fails, start with an empty session.
|
||||||
@@ -432,7 +426,17 @@ var SessionFileInternal = {
|
|||||||
promise = promise.then(
|
promise = promise.then(
|
||||||
msg => {
|
msg => {
|
||||||
// Record how long the write took.
|
// Record how long the write took.
|
||||||
this._recordTelemetry(msg.telemetry);
|
if (msg.telemetry.writeFileMs) {
|
||||||
|
Glean.sessionRestore.writeFile.accumulateSingleSample(
|
||||||
|
msg.telemetry.writeFileMs
|
||||||
|
);
|
||||||
|
}
|
||||||
|
if (msg.telemetry.fileSizeBytes) {
|
||||||
|
Glean.sessionRestore.fileSizeBytes.accumulate(
|
||||||
|
msg.telemetry.fileSizeBytes
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
this._successes++;
|
this._successes++;
|
||||||
if (msg.result.upgradeBackup) {
|
if (msg.result.upgradeBackup) {
|
||||||
// We have just completed a backup-on-upgrade, store the information
|
// We have just completed a backup-on-upgrade, store the information
|
||||||
@@ -491,20 +495,4 @@ var SessionFileInternal = {
|
|||||||
// because the state variables as sent to the writer have changed.
|
// because the state variables as sent to the writer have changed.
|
||||||
this._initialized = false;
|
this._initialized = false;
|
||||||
},
|
},
|
||||||
|
|
||||||
_recordTelemetry(telemetry) {
|
|
||||||
for (let id of Object.keys(telemetry)) {
|
|
||||||
let value = telemetry[id];
|
|
||||||
let samples = [];
|
|
||||||
if (Array.isArray(value)) {
|
|
||||||
samples.push(...value);
|
|
||||||
} else {
|
|
||||||
samples.push(value);
|
|
||||||
}
|
|
||||||
let histogram = Services.telemetry.getHistogramById(id);
|
|
||||||
for (let sample of samples) {
|
|
||||||
histogram.add(sample);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
};
|
};
|
||||||
|
|||||||
@@ -48,18 +48,6 @@ function notify(subject, topic) {
|
|||||||
Services.obs.notifyObservers(subject, topic);
|
Services.obs.notifyObservers(subject, topic);
|
||||||
}
|
}
|
||||||
|
|
||||||
// TelemetryStopwatch helper functions.
|
|
||||||
function stopWatch(method) {
|
|
||||||
return function (...histograms) {
|
|
||||||
for (let hist of histograms) {
|
|
||||||
TelemetryStopwatch[method]("FX_SESSION_RESTORE_" + hist);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
var stopWatchStart = stopWatch("start");
|
|
||||||
var stopWatchFinish = stopWatch("finish");
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The external API implemented by the SessionSaver module.
|
* The external API implemented by the SessionSaver module.
|
||||||
*/
|
*/
|
||||||
@@ -249,7 +237,7 @@ var SessionSaverInternal = {
|
|||||||
return Promise.resolve();
|
return Promise.resolve();
|
||||||
}
|
}
|
||||||
|
|
||||||
stopWatchStart("COLLECT_DATA_MS");
|
let timerId = Glean.sessionRestore.collectData.start();
|
||||||
let state = lazy.SessionStore.getCurrentState(forceUpdateAllWindows);
|
let state = lazy.SessionStore.getCurrentState(forceUpdateAllWindows);
|
||||||
lazy.PrivacyFilter.filterPrivateWindowsAndTabs(state);
|
lazy.PrivacyFilter.filterPrivateWindowsAndTabs(state);
|
||||||
|
|
||||||
@@ -284,7 +272,7 @@ var SessionSaverInternal = {
|
|||||||
// Clear cookies and storage on clean shutdown.
|
// Clear cookies and storage on clean shutdown.
|
||||||
this._maybeClearCookiesAndStorage(state);
|
this._maybeClearCookiesAndStorage(state);
|
||||||
|
|
||||||
stopWatchFinish("COLLECT_DATA_MS");
|
Glean.sessionRestore.collectData.stopAndAccumulate(timerId);
|
||||||
return this._writeState(state);
|
return this._writeState(state);
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -1199,7 +1199,7 @@ var SessionStoreInternal = {
|
|||||||
* Initialize the session using the state provided by SessionStartup
|
* Initialize the session using the state provided by SessionStartup
|
||||||
*/
|
*/
|
||||||
initSession() {
|
initSession() {
|
||||||
TelemetryStopwatch.start("FX_SESSION_RESTORE_STARTUP_INIT_SESSION_MS");
|
let timerId = Glean.sessionRestore.startupInitSession.start();
|
||||||
let state;
|
let state;
|
||||||
let ss = lazy.SessionStartup;
|
let ss = lazy.SessionStartup;
|
||||||
let willRestore = ss.willRestore();
|
let willRestore = ss.willRestore();
|
||||||
@@ -1326,7 +1326,7 @@ var SessionStoreInternal = {
|
|||||||
this._prefBranch.setBoolPref("sessionstore.resume_session_once", false);
|
this._prefBranch.setBoolPref("sessionstore.resume_session_once", false);
|
||||||
}
|
}
|
||||||
|
|
||||||
TelemetryStopwatch.finish("FX_SESSION_RESTORE_STARTUP_INIT_SESSION_MS");
|
Glean.sessionRestore.startupInitSession.stopAndAccumulate(timerId);
|
||||||
return state;
|
return state;
|
||||||
},
|
},
|
||||||
|
|
||||||
@@ -1581,9 +1581,7 @@ var SessionStoreInternal = {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
TelemetryStopwatch.start(
|
let timerId = Glean.sessionRestore.collectSessionHistory.start();
|
||||||
"FX_SESSION_RESTORE_COLLECT_SESSION_HISTORY_MS"
|
|
||||||
);
|
|
||||||
|
|
||||||
let fromIndex = collectFull ? -1 : this._fromIndex;
|
let fromIndex = collectFull ? -1 : this._fromIndex;
|
||||||
this._fromIndex = kNoIndex;
|
this._fromIndex = kNoIndex;
|
||||||
@@ -1605,9 +1603,7 @@ var SessionStoreInternal = {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
TelemetryStopwatch.finish(
|
Glean.sessionRestore.collectSessionHistory.stopAndAccumulate(timerId);
|
||||||
"FX_SESSION_RESTORE_COLLECT_SESSION_HISTORY_MS"
|
|
||||||
);
|
|
||||||
|
|
||||||
return historychange;
|
return historychange;
|
||||||
}
|
}
|
||||||
@@ -2190,12 +2186,10 @@ var SessionStoreInternal = {
|
|||||||
if (initialState) {
|
if (initialState) {
|
||||||
Services.obs.notifyObservers(null, NOTIFY_RESTORING_ON_STARTUP);
|
Services.obs.notifyObservers(null, NOTIFY_RESTORING_ON_STARTUP);
|
||||||
}
|
}
|
||||||
TelemetryStopwatch.start(
|
let timerId = Glean.sessionRestore.startupOnloadInitialWindow.start();
|
||||||
"FX_SESSION_RESTORE_STARTUP_ONLOAD_INITIAL_WINDOW_MS"
|
|
||||||
);
|
|
||||||
this.initializeWindow(aWindow, initialState);
|
this.initializeWindow(aWindow, initialState);
|
||||||
TelemetryStopwatch.finish(
|
Glean.sessionRestore.startupOnloadInitialWindow.stopAndAccumulate(
|
||||||
"FX_SESSION_RESTORE_STARTUP_ONLOAD_INITIAL_WINDOW_MS"
|
timerId
|
||||||
);
|
);
|
||||||
|
|
||||||
// Let everyone know we're done.
|
// Let everyone know we're done.
|
||||||
@@ -5196,7 +5190,7 @@ var SessionStoreInternal = {
|
|||||||
|
|
||||||
var activeWindow = this._getTopWindow();
|
var activeWindow = this._getTopWindow();
|
||||||
|
|
||||||
TelemetryStopwatch.start("FX_SESSION_RESTORE_COLLECT_ALL_WINDOWS_DATA_MS");
|
let timerId = Glean.sessionRestore.collectAllWindowsData.start();
|
||||||
if (lazy.RunState.isRunning) {
|
if (lazy.RunState.isRunning) {
|
||||||
// update the data for all windows with activities since the last save operation.
|
// update the data for all windows with activities since the last save operation.
|
||||||
let index = 0;
|
let index = 0;
|
||||||
@@ -5215,7 +5209,7 @@ var SessionStoreInternal = {
|
|||||||
}
|
}
|
||||||
DirtyWindows.clear();
|
DirtyWindows.clear();
|
||||||
}
|
}
|
||||||
TelemetryStopwatch.finish("FX_SESSION_RESTORE_COLLECT_ALL_WINDOWS_DATA_MS");
|
Glean.sessionRestore.collectAllWindowsData.stopAndAccumulate(timerId);
|
||||||
|
|
||||||
// An array that at the end will hold all current window data.
|
// An array that at the end will hold all current window data.
|
||||||
var total = [];
|
var total = [];
|
||||||
@@ -5479,7 +5473,7 @@ var SessionStoreInternal = {
|
|||||||
this.onLoad(aWindow);
|
this.onLoad(aWindow);
|
||||||
}
|
}
|
||||||
|
|
||||||
TelemetryStopwatch.start("FX_SESSION_RESTORE_RESTORE_WINDOW_MS");
|
let timerId = Glean.sessionRestore.restoreWindow.start();
|
||||||
|
|
||||||
// We're not returning from this before we end up calling restoreTabs
|
// We're not returning from this before we end up calling restoreTabs
|
||||||
// for this window, so make sure we send the SSWindowStateBusy event.
|
// for this window, so make sure we send the SSWindowStateBusy event.
|
||||||
@@ -5656,7 +5650,7 @@ var SessionStoreInternal = {
|
|||||||
// set smoothScroll back to the original value
|
// set smoothScroll back to the original value
|
||||||
arrowScrollbox.smoothScroll = smoothScroll;
|
arrowScrollbox.smoothScroll = smoothScroll;
|
||||||
|
|
||||||
TelemetryStopwatch.finish("FX_SESSION_RESTORE_RESTORE_WINDOW_MS");
|
Glean.sessionRestore.restoreWindow.stopAndAccumulate(timerId);
|
||||||
|
|
||||||
this._setWindowStateReady(aWindow);
|
this._setWindowStateReady(aWindow);
|
||||||
|
|
||||||
|
|||||||
@@ -232,8 +232,8 @@ const SessionWriterInternal = {
|
|||||||
fileStat = await IOUtils.stat(this.Paths.recovery);
|
fileStat = await IOUtils.stat(this.Paths.recovery);
|
||||||
}
|
}
|
||||||
|
|
||||||
telemetry.FX_SESSION_RESTORE_WRITE_FILE_MS = Date.now() - startWriteMs;
|
telemetry.writeFileMs = Date.now() - startWriteMs;
|
||||||
telemetry.FX_SESSION_RESTORE_FILE_SIZE_BYTES = fileStat.size;
|
telemetry.fileSizeBytes = fileStat.size;
|
||||||
} catch (ex) {
|
} catch (ex) {
|
||||||
// Don't throw immediately
|
// Don't throw immediately
|
||||||
exn = exn || ex;
|
exn = exn || ex;
|
||||||
|
|||||||
@@ -105,11 +105,9 @@ export var StartupPerformance = {
|
|||||||
// Once we are done restoring tabs, update Telemetry.
|
// Once we are done restoring tabs, update Telemetry.
|
||||||
let delta = this._latestRestoredTimeStamp - this._startTimeStamp;
|
let delta = this._latestRestoredTimeStamp - this._startTimeStamp;
|
||||||
if (isAutoRestore) {
|
if (isAutoRestore) {
|
||||||
Services.telemetry
|
Glean.sessionRestore.autoRestoreDurationUntilEagerTabsRestored.accumulateSingleSample(
|
||||||
.getHistogramById(
|
delta
|
||||||
"FX_SESSION_RESTORE_AUTO_RESTORE_DURATION_UNTIL_EAGER_TABS_RESTORED_MS"
|
);
|
||||||
)
|
|
||||||
.add(delta);
|
|
||||||
} else {
|
} else {
|
||||||
Services.telemetry
|
Services.telemetry
|
||||||
.getHistogramById(
|
.getHistogramById(
|
||||||
@@ -117,15 +115,15 @@ export var StartupPerformance = {
|
|||||||
)
|
)
|
||||||
.add(delta);
|
.add(delta);
|
||||||
}
|
}
|
||||||
Services.telemetry
|
Glean.sessionRestore.numberOfEagerTabsRestored.accumulateSingleSample(
|
||||||
.getHistogramById("FX_SESSION_RESTORE_NUMBER_OF_EAGER_TABS_RESTORED")
|
this._totalNumberOfEagerTabs
|
||||||
.add(this._totalNumberOfEagerTabs);
|
);
|
||||||
Services.telemetry
|
Glean.sessionRestore.numberOfTabsRestored.accumulateSingleSample(
|
||||||
.getHistogramById("FX_SESSION_RESTORE_NUMBER_OF_TABS_RESTORED")
|
this._totalNumberOfTabs
|
||||||
.add(this._totalNumberOfTabs);
|
);
|
||||||
Services.telemetry
|
Glean.sessionRestore.numberOfWindowsRestored.accumulateSingleSample(
|
||||||
.getHistogramById("FX_SESSION_RESTORE_NUMBER_OF_WINDOWS_RESTORED")
|
this._totalNumberOfWindows
|
||||||
.add(this._totalNumberOfWindows);
|
);
|
||||||
|
|
||||||
// Reset
|
// Reset
|
||||||
this._startTimeStamp = null;
|
this._startTimeStamp = null;
|
||||||
|
|||||||
@@ -63,6 +63,310 @@ session_restore:
|
|||||||
type: string
|
type: string
|
||||||
telemetry_mirror: Session_restore_ShutdownSuccess_SessionStartup
|
telemetry_mirror: Session_restore_ShutdownSuccess_SessionStartup
|
||||||
|
|
||||||
|
startup_init_session:
|
||||||
|
type: timing_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Time it takes to prepare the data structures for
|
||||||
|
restoring a session (ms)
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram FX_SESSION_RESTORE_STARTUP_INIT_SESSION_MS.
|
||||||
|
time_unit: millisecond
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1489524
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1489524
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_STARTUP_INIT_SESSION_MS
|
||||||
|
|
||||||
|
startup_onload_initial_window:
|
||||||
|
type: timing_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Time it takes to finish restoration once we have first
|
||||||
|
opened a window (ms)
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram FX_SESSION_RESTORE_STARTUP_ONLOAD_INITIAL_WINDOW_MS.
|
||||||
|
time_unit: millisecond
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1489524
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1489524
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_STARTUP_ONLOAD_INITIAL_WINDOW_MS
|
||||||
|
|
||||||
|
collect_all_windows_data:
|
||||||
|
type: timing_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Time to collect all window data (ms)
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram FX_SESSION_RESTORE_COLLECT_ALL_WINDOWS_DATA_MS.
|
||||||
|
time_unit: millisecond
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_COLLECT_ALL_WINDOWS_DATA_MS
|
||||||
|
|
||||||
|
collect_data:
|
||||||
|
type: timing_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Time to collect all window and tab data (ms)
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram FX_SESSION_RESTORE_COLLECT_DATA_MS.
|
||||||
|
time_unit: millisecond
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_COLLECT_DATA_MS
|
||||||
|
|
||||||
|
collect_session_history:
|
||||||
|
type: timing_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Duration of session history collection in the parent
|
||||||
|
process (ms).
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram FX_SESSION_RESTORE_COLLECT_SESSION_HISTORY_MS.
|
||||||
|
time_unit: millisecond
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1810704
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1810704
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
- farre@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_COLLECT_SESSION_HISTORY_MS
|
||||||
|
|
||||||
|
read_file:
|
||||||
|
type: timing_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Time to read the session data from the file on disk (ms)
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram FX_SESSION_RESTORE_READ_FILE_MS.
|
||||||
|
time_unit: millisecond
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_READ_FILE_MS
|
||||||
|
|
||||||
|
write_file:
|
||||||
|
type: timing_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Time to write the session data to the file on disk (ms)
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram FX_SESSION_RESTORE_WRITE_FILE_MS.
|
||||||
|
time_unit: millisecond
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_WRITE_FILE_MS
|
||||||
|
|
||||||
|
file_size_bytes:
|
||||||
|
type: memory_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: The size of file sessionstore.js (bytes)
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram FX_SESSION_RESTORE_FILE_SIZE_BYTES.
|
||||||
|
memory_unit: byte
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_FILE_SIZE_BYTES
|
||||||
|
|
||||||
|
corrupt_file:
|
||||||
|
type: labeled_counter
|
||||||
|
description: >
|
||||||
|
Session restore: Whether the file read on startup contained parse-able
|
||||||
|
JSON
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry boolean
|
||||||
|
histogram FX_SESSION_RESTORE_CORRUPT_FILE.
|
||||||
|
labels:
|
||||||
|
- "false"
|
||||||
|
- "true"
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: h#FX_SESSION_RESTORE_CORRUPT_FILE
|
||||||
|
|
||||||
|
all_files_corrupt:
|
||||||
|
type: labeled_counter
|
||||||
|
description: >
|
||||||
|
Session restore: Whether none of the backup files contained parse-able
|
||||||
|
JSON
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry boolean
|
||||||
|
histogram FX_SESSION_RESTORE_ALL_FILES_CORRUPT.
|
||||||
|
labels:
|
||||||
|
- "false"
|
||||||
|
- "true"
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: h#FX_SESSION_RESTORE_ALL_FILES_CORRUPT
|
||||||
|
|
||||||
|
restore_window:
|
||||||
|
type: timing_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Time spent blocking the main thread while restoring a
|
||||||
|
window state (ms)
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram FX_SESSION_RESTORE_RESTORE_WINDOW_MS.
|
||||||
|
time_unit: millisecond
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1489524
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1489524
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_RESTORE_WINDOW_MS
|
||||||
|
|
||||||
|
auto_restore_duration_until_eager_tabs_restored:
|
||||||
|
type: timing_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: If the browser is setup to auto-restore tabs, this probe
|
||||||
|
measures the time elapsed between the instant we start Session Restore and
|
||||||
|
the instant we have finished restoring tabs eagerly. At this stage, the
|
||||||
|
tabs that are restored on demand are not restored yet.
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram
|
||||||
|
FX_SESSION_RESTORE_AUTO_RESTORE_DURATION_UNTIL_EAGER_TABS_RESTORED_MS.
|
||||||
|
time_unit: millisecond
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_AUTO_RESTORE_DURATION_UNTIL_EAGER_TABS_RESTORED_MS
|
||||||
|
|
||||||
|
manual_restore_duration_until_eager_tabs_restored:
|
||||||
|
type: timing_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: If a session is restored by the user clicking on 'Restore
|
||||||
|
Session', this probe measures the time elapsed between the instant the
|
||||||
|
user has clicked and the instant we have finished restoring tabs eagerly.
|
||||||
|
At this stage, the tabs that are restored on demand are not restored yet.
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram
|
||||||
|
FX_SESSION_RESTORE_MANUAL_RESTORE_DURATION_UNTIL_EAGER_TABS_RESTORED_MS.
|
||||||
|
time_unit: millisecond
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_MANUAL_RESTORE_DURATION_UNTIL_EAGER_TABS_RESTORED_MS
|
||||||
|
|
||||||
|
number_of_tabs_restored:
|
||||||
|
type: custom_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Number of tabs in the session that has just been
|
||||||
|
restored.
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry
|
||||||
|
exponential histogram FX_SESSION_RESTORE_NUMBER_OF_TABS_RESTORED.
|
||||||
|
range_min: 1
|
||||||
|
range_max: 500
|
||||||
|
bucket_count: 20
|
||||||
|
histogram_type: exponential
|
||||||
|
unit: tabs
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_NUMBER_OF_TABS_RESTORED
|
||||||
|
|
||||||
|
number_of_windows_restored:
|
||||||
|
type: custom_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Number of windows in the session that has just been
|
||||||
|
restored.
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry enumerated
|
||||||
|
histogram FX_SESSION_RESTORE_NUMBER_OF_WINDOWS_RESTORED.
|
||||||
|
range_min: 0
|
||||||
|
range_max: 50
|
||||||
|
bucket_count: 51
|
||||||
|
histogram_type: linear
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_NUMBER_OF_WINDOWS_RESTORED
|
||||||
|
|
||||||
|
number_of_eager_tabs_restored:
|
||||||
|
type: custom_distribution
|
||||||
|
description: >
|
||||||
|
Session restore: Number of tabs restored eagerly in the session that has
|
||||||
|
just been restored.
|
||||||
|
|
||||||
|
This metric was generated to correspond to the Legacy Telemetry enumerated
|
||||||
|
histogram FX_SESSION_RESTORE_NUMBER_OF_EAGER_TABS_RESTORED.
|
||||||
|
range_min: 0
|
||||||
|
range_max: 50
|
||||||
|
bucket_count: 51
|
||||||
|
histogram_type: linear
|
||||||
|
bugs:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
data_reviews:
|
||||||
|
- https://bugzilla.mozilla.org/show_bug.cgi?id=1944631
|
||||||
|
notification_emails:
|
||||||
|
- session-restore-telemetry-alerts@mozilla.com
|
||||||
|
expires: never
|
||||||
|
telemetry_mirror: FX_SESSION_RESTORE_NUMBER_OF_EAGER_TABS_RESTORED
|
||||||
|
|
||||||
browser.engagement:
|
browser.engagement:
|
||||||
sessionrestore_interstitial:
|
sessionrestore_interstitial:
|
||||||
type: labeled_counter
|
type: labeled_counter
|
||||||
|
|||||||
Reference in New Issue
Block a user