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

For #5312 - Add Telemetry for Tracking Protection #5414

Merged
merged 1 commit into from
Sep 23, 2019

Conversation

ekager
Copy link
Contributor

@ekager ekager commented Sep 18, 2019

Pull Request checklist

  • Quality: This PR builds and passes detekt/ktlint checks (A pre-push hook is recommended)
  • 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

After merge

  • Milestone: Make sure issues finished by this pull request are added to the milestone of the version currently in development.

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

@ekager ekager requested review from a team as code owners September 18, 2019 20:03
@ekager
Copy link
Contributor Author

ekager commented Sep 18, 2019

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 often users interact with tracking protection panel
  • How often users have to add a site exception because of site problems
  • How often users edit tracking protection settings
  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?
  • Usefulness and discoverability of tracking protection panel
  • How often users change the tracking protection settings to a lower level of protection
  1. What alternative methods did you consider to answer these questions? Why were they not sufficient?
  • We currently record if TP is on/off but we have more granular options now and more UI surrounding TP
  1. Can current instrumentation answer these questions?
  • Currently there are no events to track this.
  1. List all proposed measurements and indicate the category of data collection for each measurement, using the Firefox data collection categories on the found on the Mozilla wiki.
  • All data is Category 2.
  1. How long will this data be collected?
  • Until 03/01/2020
  1. What populations will you measure?
  • All release, beta, and nightly users with telemetry enabled.
  1. Please provide a general description of how you will analyze this data.
  • Glean / Amplitude
  1. Where do you intend to share the results of your analysis?
  • Only on Glean, Amplitude and with mobile teams.

@ekager ekager requested a review from boek September 18, 2019 20:20
@codecov-io
Copy link

codecov-io commented Sep 18, 2019

Codecov Report

Merging #5414 into master will decrease coverage by 0.04%.
The diff coverage is 0%.

Impacted file tree graph

@@             Coverage Diff              @@
##             master    #5414      +/-   ##
============================================
- Coverage     13.09%   13.05%   -0.05%     
  Complexity      289      289              
============================================
  Files           252      252              
  Lines         10367    10403      +36     
  Branches       1504     1512       +8     
============================================
  Hits           1358     1358              
- Misses         8916     8952      +36     
  Partials         93       93
Impacted Files Coverage Δ Complexity Δ
...la/fenix/components/metrics/GleanMetricsService.kt 0.74% <0%> (-0.04%) 1 <0> (ø)
...a/org/mozilla/fenix/browser/BaseBrowserFragment.kt 0% <0%> (ø) 0 <0> (ø) ⬇️
...va/org/mozilla/fenix/components/metrics/Metrics.kt 25.12% <0%> (-0.9%) 0 <0> (ø)
...a/org/mozilla/fenix/exceptions/ExceptionDomains.kt 0% <0%> (ø) 0 <0> (ø) ⬇️
.../trackingprotection/TrackingProtectionPanelView.kt 0% <0%> (ø) 0 <0> (ø) ⬇️
...ava/org/mozilla/fenix/settings/SettingsFragment.kt 0% <0%> (ø) 0 <0> (ø) ⬇️
...zilla/fenix/settings/TrackingProtectionFragment.kt 0% <0%> (ø) 0 <0> (ø) ⬇️
...rotection/TrackingProtectionPanelDialogFragment.kt 0% <0%> (ø) 0 <0> (ø) ⬇️

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 c866ae1...002fdac. Read the comment docs.

Copy link
Contributor

@sblatz sblatz 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, one nit 😄

docs/metrics.md Outdated Show resolved Hide resolved
@sblatz sblatz added needs:data-review PR is awaiting a data review pr:do-not-land labels Sep 19, 2019
@sblatz
Copy link
Contributor

sblatz commented Sep 20, 2019

This just has a do not land until @boek can do a data review :)

@sblatz
Copy link
Contributor

sblatz commented Sep 20, 2019

@ekager did we ever hear back from @vesta0 about adding tracking protection setting (standard/off/strict) to the "core ping"? I feel like it's actually more useful there.

@ekager
Copy link
Contributor Author

ekager commented Sep 20, 2019

I think we want to specifically know when users feel they need to change the default TP settings and how often they do that?

@ekager ekager force-pushed the 5312-telemetry-etp branch 2 times, most recently from 1ad40df to a696015 Compare September 20, 2019 23:38
Copy link
Contributor

@liuche liuche left a comment

Choose a reason for hiding this comment

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

A few nits - data-review+ on addressing them

Data Review Form (to be filled by Data Stewards)

  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, metrics.yaml generated docs in metrics.md

  1. Is there a control mechanism that allows the user to turn the data collection on and off?

Yes, Fenix data controls

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

Expires 3/2020

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

Type 2, user interactions with and selection of different tracking protection settings

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

Default on

  1. Does the instrumentation include the addition of any new identifiers (whether anonymous or otherwise; e.g., username, random IDs, etc. See the appendix for more details)?

No

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

yes

  1. Does there need to be a check-in in the future to determine whether to renew the data?

No, has expiry

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

No

app/metrics.yaml Outdated
exception_added:
type: event
description: >
A user added a TP exception through the TP toggle in the panel.
Copy link
Contributor

Choose a reason for hiding this comment

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

Nit: can we spell out TP, since this is for docs, and TP is a less common abbreviation

app/metrics.yaml Outdated
panel_settings:
type: event
description: >
A user opened ETP settings from the panel.
Copy link
Contributor

Choose a reason for hiding this comment

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

Same nit: ETP is more common, but might as well spell it out too "Enhanced Tracking Protection (ETP)"

app/metrics.yaml Outdated
etp_shield:
type: event
description: >
A user pressed the TP shield icon in toolbar.
Copy link
Contributor

Choose a reason for hiding this comment

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

same nit

notification_emails:
- [email protected]
expires: "2020-03-01"
etp_shield:
Copy link
Contributor

Choose a reason for hiding this comment

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

I'm on the fence whether we should rename this telemetry probe to enhanced_tracking_protection_toolbar_shield

app/metrics.yaml Outdated
etp_tracker_list:
type: event
description: >
A user pressed into tracker list display in panel.
Copy link
Contributor

Choose a reason for hiding this comment

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

"entered tracking protection settings from toolbar panel"?

@liuche liuche removed the request for review from boek September 21, 2019 00:05
@liuche liuche added pr:needs-changes PRs that need some changes/fixes before they can land and removed pr:do-not-land needs:data-review PR is awaiting a data review labels Sep 21, 2019
@liuche
Copy link
Contributor

liuche commented Sep 21, 2019

Make sure to regenerate md docs after changes too!

@ekager ekager removed the pr:needs-changes PRs that need some changes/fixes before they can land label Sep 23, 2019
@ekager ekager merged commit 9d9ff95 into mozilla-mobile:master Sep 23, 2019
@ekager ekager deleted the 5312-telemetry-etp branch September 23, 2019 15:29
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants