Skip to content
This repository has been archived by the owner on Feb 20, 2023. It is now read-only.

For #17969: add duration probes for App.onCreate and HomeActivity.onC… #17973

Merged
merged 1 commit into from
Feb 19, 2021

Conversation

mcomella
Copy link
Contributor

@mcomella mcomella commented Feb 11, 2021

…reate.

@boek or @mmccorks for data review

@MarcLeclair for implementation review.

Request for data collection review form

All questions are mandatory. You must receive review from a data steward peer on your responses to these questions before shipping new data collection.

  1. What questions will you answer with this data?
  • Are there major outliers to these start up durations or is start up consistent?
  • Is start up in these areas fast or slow?
  1. Why does Mozilla need to answer these questions? Are there benefits for users? Do we need this information to address product or business requirements? Some example responses:
  • Establish baselines or measure changes in product or platform quality or performance.
  1. What alternative methods did you consider to answer these questions? Why were they not sufficient?

We measure locally but it's impossible to run every configuration so we need to know what's happening with real users to see if there's something we haven't considered.

  1. Can current instrumentation answer these questions?

We have a probe to measure all of startup but it's a very complex probe to implement (so may be buggy) and analyze so we decided we wanted to add simpler probes that see a smaller picture to see if it gives us more information.

  1. List all proposed measurements and indicate the category of data collection for each measurement, using the Firefox data collection categories found on the Mozilla wiki.

Note that the data steward reviewing your request will characterize your data collection based on the highest (and most sensitive) category.

PerfStartup.applicationOnCreate (duration of method call) technical #17969
PerfStartup.homeActivityOnCreate (duration of method call) technical #17969
  1. Please provide a link to the documentation for this data collection which describes the ultimate data set in a public, complete, and accurate way.

https://github.com/mozilla-mobile/fenix/blob/master/docs/metrics.md

  1. How long will this data be collected? Choose one of the following:
  • This is scoped to a time-limited experiment/project until date 08-11-2021
  1. What populations will you measure?
  • Which release channels? All

  • Which countries? All

  • Which locales? All

  • Any other filters? Please describe in detail below.

No

  1. If this data collection is default on, what is the opt-out mechanism for users?

Telemetry toggle

  1. Please provide a general description of how you will analyze this data.
  • Look at 95th percentile to understand if performance is consistent or not (are there "performance cliffs"?)
  • Look at overall values to understand if performance is fast
  1. Where do you intend to share the results of your analysis?

Internally, GLAM

  1. Is there a third-party tool (i.e. not Telemetry) that you are proposing to use for this data collection? If so:

No

Pull Request checklist

  • Tests: This PR includes thorough tests or an explanation of why it does not
  • Screenshots: This PR includes screenshots or GIFs of the changes made or an explanation of why it does not
  • Accessibility: The code in this PR follows accessibility best practices or does not include any user facing features. In addition, it includes a screenshot of a successful accessibility scan to ensure no new defects are added to the product.

To download an APK when reviewing a PR:

  1. click on Show All Checks,
  2. click Details next to "Taskcluster (pull_request)" after it appears and then finishes with a green checkmark,
  3. click on the "Fenix - assemble" task, then click "Run Artifacts".
  4. the APK links should be on the left side of the screen, named for each CPU architecture

@mcomella mcomella requested review from boek and MarcLeclair February 11, 2021 23:35
@mcomella mcomella requested review from a team as code owners February 11, 2021 23:35
@codecov-io
Copy link

Codecov Report

Merging #17973 (0d14f1d) into master (9f911e2) will increase coverage by 0.57%.
The diff coverage is 100.00%.

Impacted file tree graph

@@             Coverage Diff              @@
##             master   #17973      +/-   ##
============================================
+ Coverage     33.34%   33.91%   +0.57%     
- Complexity     1349     1377      +28     
============================================
  Files           456      456              
  Lines         19223    19226       +3     
  Branches       2691     2692       +1     
============================================
+ Hits           6409     6521     +112     
+ Misses        12286    12153     -133     
- Partials        528      552      +24     
Impacted Files Coverage Δ Complexity Δ
...rc/main/java/org/mozilla/fenix/FenixApplication.kt 7.95% <100.00%> (+1.05%) 5.00 <2.00> (ø)
...pp/src/main/java/org/mozilla/fenix/HomeActivity.kt 24.63% <100.00%> (+18.24%) 28.00 <1.00> (+14.00)
...c/main/java/org/mozilla/fenix/home/HomeFragment.kt 3.72% <0.00%> (+1.24%) 6.00% <0.00%> (+1.00%)
...rc/main/java/org/mozilla/fenix/perf/Performance.kt 20.00% <0.00%> (+10.00%) 4.00% <0.00%> (+2.00%)
.../main/java/org/mozilla/fenix/theme/ThemeManager.kt 41.46% <0.00%> (+31.70%) 5.00% <0.00%> (+5.00%)
...ain/java/org/mozilla/fenix/perf/StartupTimeline.kt 88.88% <0.00%> (+33.33%) 4.00% <0.00%> (+2.00%)
...pp/src/main/java/org/mozilla/fenix/ext/Activity.kt 90.00% <0.00%> (+70.00%) 0.00% <0.00%> (ø%)
...fenix/trackingprotection/TrackingProtectionMode.kt 81.25% <0.00%> (+81.25%) 2.00% <0.00%> (+2.00%)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 9f911e2...0d14f1d. Read the comment docs.

@mcomella mcomella requested a review from mmccorks February 18, 2021 23:56
Copy link
Contributor

@MarcLeclair MarcLeclair left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me.

Copy link

@mmccorks mmccorks left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

  1. Is there or will there be documentation that describes the schema for the ultimate data set in a public, complete, and accurate way?
    This will be documented in metrics.md

  2. Is there a control mechanism that allows the user to turn the data collection on and off?
    Yes, users can opt out of telemetry collection.

  3. If the request is for permanent data collection, is there someone who will monitor the data over time?
    Not permanent data collection.

  4. Using the category system of data types on the Mozilla wiki, what collection type of data do the requested measurements fall under?
    Category 1, Technical Data.

  5. Is the data collection request for default-on or default-off?
    Default on.

  6. Does the instrumentation include the addition of any new identifiers?
    No new identifiers.

  7. Is the data collection covered by the existing Firefox privacy notice?
    Yes.

  8. Does there need to be a check-in in the future to determine whether to renew the data?
    Check in in 6 months (August 2021).

  9. Does the data collection use a third-party collection tool?
    No.


data-review +

@mcomella mcomella merged commit 993428c into mozilla-mobile:master Feb 19, 2021
@mcomella mcomella deleted the 17969-onCreate-duration branch February 19, 2021 21:20
@mcomella mcomella added the Feature:Performance Used for data reviews to label metrics related to performance label Jun 1, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Feature:Performance Used for data reviews to label metrics related to performance
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants