Closed Bug 708812 Opened 8 years ago Closed 7 years ago

Add investigate and add telemetry probes for android startup

Categories

(Firefox for Android :: General, defect, P3)

ARM
Android
defect

Tracking

()

RESOLVED FIXED
Firefox 18
Tracking Status
fennec + ---

People

(Reporter: dougt, Assigned: gcp)

References

Details

(Whiteboard: [telemetry-needed])

Attachments

(2 files)

As part of https://wiki.mozilla.org/Program_Management/Programs/Telemetry/Probe_Implementation, we should investigate what probes make sense to add.

For example, right now we don't know how fennec is typically started (is it started via a icon click, or another activity ask us to open a url), we also don't know how much time is spent in java-android specific code before we load libxul.  I am sure there are others..
Duplicate of this bug: 710871
tracking-fennec: --- → 11+
I think this should be a P2, I wouldn't stop ship, but I think this data will really inform us.
i am not working on these right now.  resetting assignee.
Assignee: doug.turner → nobody
Spent a few minutes discussing with Madhava today.  Type of launch maybe interesting if we can distinguish between a regular external link and a launch via the google search widget.  As well, potentially correlating direct app launch to immediate next step (ie bookmark, search, history) would be useful.  Test pilot study was what Madhava was thinking for this, but if we can figure out a way to do this in telemetry, it would be cheaper and faster.
(In reply to JP Rosevear [:jpr] from comment #4)
> Spent a few minutes discussing with Madhava today.  Type of launch maybe
> interesting if we can distinguish between a regular external link and a
> launch via the google search widget.  As well, potentially correlating
> direct app launch to immediate next step (ie bookmark, search, history)
> would be useful.  Test pilot study was what Madhava was thinking for this,
> but if we can figure out a way to do this in telemetry, it would be cheaper
> and faster.

Telemetry is fine for all of the above.
Summary: Add investigate and add telementry probes for android startup → Add investigate and add telemetry probes for android startup
OS: Mac OS X → Android
Hardware: x86 → ARM
Whiteboard: [telemetry-needed]
Depends on: 741281
tracking-fennec: 11+ → +
Add telemetry for the most important startup performance metrics:
- Java UI ready
- about:home topsites filled in
- Gecko ready
Attachment #665929 - Flags: review?(blassey.bugs)
Add telemetry to see if we did an icon startup, or an external URL startup. For the latter, also track how often we can prefetch/redirect.
Attachment #665933 - Flags: review?(blassey.bugs)
In order to avoid future confusion and possible conflicts, could you please get into the habit of using a common prefix for Fennec-specific histograms? Desktop Firefox uses FX_.
Attachment #665929 - Flags: review?(blassey.bugs) → review+
Comment on attachment 665933 [details] [diff] [review]
Patch 2. Telemetry for startup action.

Review of attachment 665933 [details] [diff] [review]:
-----------------------------------------------------------------

::: mobile/android/base/GeckoApp.java
@@ +126,5 @@
>  
> +    private static enum StartupAction {
> +        NORMAL,     /* normal application start */
> +        URL,        /* launched with a passed URL */
> +        PREFECTH,   /* launched with a passed URL that we prefetch */

PREFETCH
Attachment #665933 - Flags: review?(blassey.bugs) → review+
Backed out in https://hg.mozilla.org/integration/mozilla-inbound/rev/d17c811e3b8c for everyone's favorite obscure failure - in https://tbpl.mozilla.org/php/getParsedLog.php?id=15707702&tree=Mozilla-Inbound where you hit "[JavaScript Error: "NS_ERROR_ILLEGAL_VALUE: Component returned failure code: 0x80070057 (NS_ERROR_ILLEGAL_VALUE) [nsITelemetry.getHistogramById]" {file: "chrome://browser/content/browser.js" line: 6731}]," that makes the run fail (or more accurately, marks the run as having failed).
Comment on attachment 665929 [details] [diff] [review]
Patch 1. Telemetry for startup performance.

Review of attachment 665929 [details] [diff] [review]:
-----------------------------------------------------------------

::: mobile/android/base/GeckoApp.java
@@ +1444,5 @@
>      {
>          GeckoAppShell.registerGlobalExceptionHandler();
>  
> +        // The clock starts...now. Better hurry!
> +        mJavaUiStartupTimer = new Telemetry.Timer("STARTUP_TIME_JAVACHROME");

So here you have STARTUP_TIME_JAVACHROME...

::: toolkit/components/telemetry/Histograms.json
@@ +2235,5 @@
>      "n_buckets": 20,
>      "description": "Number of history entries in the original XUL places database",
>      "cpp_guard": "ANDROID"
>    },
> +  "STARTUP_TIME_JAVAUI": {

...and here you call it STARTUP_TIME_JAVAUI.  That's not going to end well.
https://hg.mozilla.org/mozilla-central/rev/b2fa7360a9e3
https://hg.mozilla.org/mozilla-central/rev/ece3e81be2b6
Assignee: nobody → gpascutto
Status: NEW → RESOLVED
Closed: 7 years ago
Flags: in-testsuite-
Resolution: --- → FIXED
Target Milestone: --- → Firefox 18
You need to log in before you can comment on or make changes to this bug.