From 6c90dd65537d87baf794d999d3cc595daaf72779 Mon Sep 17 00:00:00 2001 From: Taras Glek Date: Tue, 28 Jun 2011 16:54:36 -0700 Subject: [PATCH] Bug 666707 - Add a telemetry probe to record whether we started following a successful shutdown r=zpao --- browser/components/sessionstore/src/nsSessionStartup.js | 6 ++++++ toolkit/components/telemetry/TelemetryHistograms.h | 1 + 2 files changed, 7 insertions(+) diff --git a/browser/components/sessionstore/src/nsSessionStartup.js b/browser/components/sessionstore/src/nsSessionStartup.js index aef88172cb2f..21fba6f85988 100644 --- a/browser/components/sessionstore/src/nsSessionStartup.js +++ b/browser/components/sessionstore/src/nsSessionStartup.js @@ -147,6 +147,12 @@ SessionStartup.prototype = { initialState && initialState.session && initialState.session.state && initialState.session.state == STATE_RUNNING_STR; + // Report shutdown success via telemetry. Shortcoming here are + // being-killed-by-OS-shutdown-logic, shutdown freezing after + // session restore was written, etc. + let Telemetry = Cc["@mozilla.org/base/telemetry;1"].getService(Ci.nsITelemetry); + Telemetry.getHistogramById("SHUTDOWN_OK").add(!lastSessionCrashed); + // set the startup type if (lastSessionCrashed && resumeFromCrash) this._sessionType = Ci.nsISessionStartup.RECOVER_SESSION; diff --git a/toolkit/components/telemetry/TelemetryHistograms.h b/toolkit/components/telemetry/TelemetryHistograms.h index d40301ab76b6..d3127634df70 100644 --- a/toolkit/components/telemetry/TelemetryHistograms.h +++ b/toolkit/components/telemetry/TelemetryHistograms.h @@ -61,3 +61,4 @@ HISTOGRAM(GLUESTARTUP_HARD_FAULTS, 1, 500, 12, EXPONENTIAL, "Hard faults count a HISTOGRAM(HARD_PAGE_FAULTS, 8, 64 * 1024, 13, EXPONENTIAL, "Hard page faults (since last telemetry ping)") #endif HISTOGRAM(ZIPARCHIVE_CRC, 0, 1, 2, BOOLEAN, "Zip item CRC check pass") +HISTOGRAM(SHUTDOWN_OK, 0, 1, 2, BOOLEAN, "Did the browser start after a successful shutdown")