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

Introduce process lifecycle observer to collect metrics about tabs when app goes to foreground/background. #18747

Merged
merged 2 commits into from
Apr 9, 2021

Conversation

pocmo
Copy link
Contributor

@pocmo pocmo commented Apr 1, 2021

This is for:
mozilla-mobile/android-components#9997

This should help the GeckoView to ship multiple content processes.

@pocmo pocmo added needs:data-review PR is awaiting a data review needs:review PRs that need to be reviewed labels Apr 1, 2021
@pocmo pocmo requested review from a team as code owners April 1, 2021 12:38
@pocmo pocmo changed the title @pocmo Introduce process lifecycle observer to collect metrics about tabs when app goes to foreground/background. Introduce process lifecycle observer to collect metrics about tabs when app goes to foreground/background. Apr 1, 2021
Copy link
Contributor

@csadilek csadilek left a comment

Choose a reason for hiding this comment

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

🕐 👀

@pocmo
Copy link
Contributor Author

pocmo commented Apr 1, 2021

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?
  • How many active/crashed/total tabs has a user when the app goes to the background and comes to the foreground again
  • How long was the app in the background

See issue: mozilla-mobile/android-components#9997

  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?

The GeckoView team wants to enable= multiple content processes in release versions. This probe should help to understand if tabs (or their content process) get killed while the app is in the background.

See:

  1. What alternative methods did you consider to answer these questions? Why were they not sufficient?

None

  1. Can current instrumentation answer these questions?

No.

  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.

Measurement Description Data Collection Category Tracking Bug #
Collecting number of active/total/crashed tabs before going to the background and when coming back to the foreground Category 1 “Technical data” mozilla-mobile/android-components/issues/9997
  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.

See metrics.yaml attached to this PR. After landing this PR the documentation will be available at:

  1. How long will this data be collected? Choose one of the following:
  • I picked end of the year (2021-12-31) for now. We want this probe to ride the trains to release.
  1. What populations will you measure?
  • All release, beta, and nightly users with telemetry enabled.
  1. If this data collection is default on, what is the opt-out mechanism for users?

This data collection hooks into the data collection mechanism of the app and can be disabled in the app settings (Settings > Data collection)

  1. Please provide a general description of how you will analyze this data.
  • Redash
  1. Where do you intend to share the results of your analysis?
  • Only on Redash and with mobile / GeckoView teams.
  1. Is there a third-party tool (i.e. not Telemetry) that you are proposing to use for this data collection? If so:
  • No

@pocmo pocmo added pr:approved PR that has been approved and removed needs:review PRs that need to be reviewed labels Apr 7, 2021
@pocmo
Copy link
Contributor Author

pocmo commented Apr 7, 2021

@mmccorks @boek Can you help me get the data-review for this probe? :)

@gabrielluong
Copy link
Member

@mmccorks @boek Can you help me get the data-review for this probe? :)

@travis79

@travis79
Copy link
Member

travis79 commented Apr 8, 2021

@mmccorks @boek Can you help me get the data-review for this probe? :)

@travis79

I got you, will do it this morning.

@travis79
Copy link
Member

travis79 commented Apr 8, 2021

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?


* How many active/crashed/total tabs has a user when the app goes to the background and comes to the foreground again

* How long was the app in the background

See issue: mozilla-mobile/android-components#9997

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?

The GeckoView team wants to enable= multiple content processes in release versions. This probe should help to understand if tabs (or their content process) get killed while the app is in the background.

See:

* [mozilla-mobile/android-components#9997](https://github.com/mozilla-mobile/android-components/issues/9997)

* [mozilla-mobile/android-components#9624](https://github.com/mozilla-mobile/android-components/issues/9624)


1. What alternative methods did you consider to answer these questions? Why were they not sufficient?

None

1. Can current instrumentation answer these questions?

No.

1. List all proposed measurements and indicate the category of data collection for each measurement, using the [Firefox data collection categories](https://wiki.mozilla.org/Firefox/Data_Collection) 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.
Measurement Description Data Collection Category Tracking Bug #
Collecting number of active/total/crashed tabs before going to the background and when coming back to the foreground Category 1 “Technical data” mozilla-mobile/android-components/issues/9997

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.

See metrics.yaml attached to this PR. After landing this PR the documentation will be available at:

* [https://github.com/mozilla-mobile/fenix/blob/master/app/metrics.yaml](https://github.com/mozilla-mobile/fenix/blob/master/app/metrics.yaml?rgh-link-date=2021-04-01T17%3A12%3A24Z)

* [https://github.com/mozilla-mobile/fenix/blob/master/docs/metrics.md](https://github.com/mozilla-mobile/fenix/blob/master/docs/metrics.md?rgh-link-date=2021-04-01T17%3A12%3A24Z)


1. How long will this data be collected?  Choose one of the following:


* I picked end of the year (2021-12-31) for now. We want this probe to ride the trains to release.


1. What populations will you measure?


* All release, beta, and nightly users with telemetry enabled.


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

This data collection hooks into the data collection mechanism of the app and can be disabled in the app settings (Settings > Data collection)

1. Please provide a general description of how you will analyze this data.


* Redash


1. Where do you intend to share the results of your analysis?


* Only on Redash and with mobile / GeckoView teams.


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


* No

Data Review

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

  2. Is there a control mechanism that allows the user to turn the data collection on and off?
    Yes, the Send Usage Data toggle in the app settings.

  3. If the request is for permanent data collection, is there someone who will monitor the data over time?
    N/A, collection to end or be reevaluated at the end of the year.

  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.

  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?
    Yes, at the end of the year when the collection is set to expire.

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

Result

Data-review+

@travis79 travis79 removed the needs:data-review PR is awaiting a data review label Apr 8, 2021
@pocmo pocmo force-pushed the content-process-probes branch from fe0dc4b to e29e8ab Compare April 9, 2021 09:54
@pocmo pocmo merged commit dfb3c4c into mozilla-mobile:master Apr 9, 2021
@pocmo pocmo deleted the content-process-probes branch April 9, 2021 10:36
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
pr:approved PR that has been approved
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants