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

[Telemetry] WebExtensions #6174

Closed
vesta0 opened this issue Oct 21, 2019 · 6 comments · Fixed by #8318
Closed

[Telemetry] WebExtensions #6174

vesta0 opened this issue Oct 21, 2019 · 6 comments · Fixed by #8318

Comments

@vesta0
Copy link
Collaborator

vesta0 commented Oct 21, 2019

Description & Product Manager / Data Scientist User Story

  • As a product owner, I want to know how users interact with WebExtensions in Fenix in order to better prioritize related bugs or enhancements.

What questions will you answer with this data?

  • How often users look for/check out add-ons in settings? Is this feature interesting to users? How often users check out the available add-ons VS actually install an add-on?
  • How many user have a specific add-on installed, and how many have the add-on installed and enabled, over a specific time period
  • How often users interact with an installed add-on (in the toolbar menu) to look up or modify settings? This will help us learn whether we should collaborate with the add-on developer to invest in improving settings/UI for individual add-ons.

What probes (suggested, if applicable)

  • User taps on add-ons menu item
  • User installs an add-on
  • User removes an add-on
  • User disabled/enables an add-on
  • User taps on an installed add-on in the toolbar menu to view/modify its setting

Acceptance Criteria (Added by PM)

  • Event pings can be queried via re:dash
  • We are sending telemetry events for the actions listed in the requirements
  • We have documented the telemetry
  • We have asked a data steward to review the telemetry
  • NOT an AC: Data science to create dashboard or further graphs (this will be a separate issue, this issue is only about hooking up the events described and that they can be queried in re-dash)

┆Issue is synchronized with this Jira Task

@vesta0
Copy link
Collaborator Author

vesta0 commented Oct 23, 2019

This will live partially in A-C.

@gabrielluong
Copy link
Member

When an user interacts with an installed add-on in the browser menu, we emit a BrowserMenuFact with the add-on id. To cover the installed/removed/enabled/disabled add-ons, we do a metric ping using the list of enabled and installed add-ons that is emitted via WebExtensionFact.

gabrielluong added a commit to gabrielluong/fenix that referenced this issue Feb 27, 2020
gabrielluong added a commit to gabrielluong/fenix that referenced this issue Feb 28, 2020
@liuche
Copy link
Contributor

liuche commented Feb 29, 2020

@vesta0 I want to make sure we're collecting addon ids in a way that makes sense, so for now, I'm suggesting that we only collect the number of addons. Trying to understand how the environment ping that Desktop uses (to collect addon telemetry) should be used on Fenix, so we can match what Desktop's data collection policies are.

@liuche
Copy link
Contributor

liuche commented Mar 3, 2020

As a follow-up, we should send the installed/removed/enabled/disabled add-ons ids in a separate ping. That way, we won't be mixing any user data, and the Glean SDK should make it straightforward to do. I'll file a bug and send an email to data stewards with that intent to confirm it's acceptable.

In the meantime, let's just collect the number of addons @gabrielluong

@vesta0
Copy link
Collaborator Author

vesta0 commented Mar 3, 2020

Thank you @liuche I am good with this decision.

gabrielluong added a commit to gabrielluong/fenix that referenced this issue Mar 3, 2020
gabrielluong added a commit to gabrielluong/fenix that referenced this issue Apr 1, 2020
@boek boek closed this as completed in #8318 Apr 2, 2020
@gabrielluong gabrielluong added the eng:qa:needed QA Needed label Apr 4, 2020
@gabrielluong gabrielluong reopened this Apr 4, 2020
@gabrielluong gabrielluong added this to Ready for QA in Fenix Sprint Kanban Apr 4, 2020
@AndiAJ
Copy link
Collaborator

AndiAJ commented Apr 6, 2020

Hi, verified as fixed on the latest Nightly Build #20970607 from 4/6 using a Google Pixel 3a (Android 10)

Accessing the Add-ons
✔️ Open the Add-ons Manager VIA Settings | Ping - fcd28562-41d3-4737-962b-4d2ed8cce559

"events": [
        {
          "category": "addons",
          "name": "open_addons_in_settings"

✔️ Open the Add-ons Manager VIA ⋮ Main menu | Ping - 34f8543f-f999-4354-accd-b97df6407e86

      "events": [
        {
          "category": "events",
          "extra": {
            "item": "addons_manager"
          },
          "name": "browser_menu_action"

✔️ Open the Add-on from the ⋮ Main menu | Ping - 19af04bb-d1c0-4edb-9694-efd108a523c1

"events": [
        {
          "category": "addons",
          "name": "open_addon_in_toolbar_menu"

State of the Add-ons in the Metrics ping
✔️ Installed and Enabled | Ping - ebfb07a5-15e5-4e8e-a3e3-e74c6ec903a7

"metrics": {
        "boolean": {
          "addons.has_enabled_addons": true,
          "addons.has_installed_addons": true

✔️ Installed and Disabled | Ping - 4cc4dbc1-1be6-4a75-a1db-06ae6ebab919

"metrics": {
        "boolean": {
          "addons.has_enabled_addons": false,
          "addons.has_installed_addons": true

✔️ After removing the Add-on | Ping - ddd8e802-8ab6-4461-aacd-b666b5052e8d

  "metrics": {
        "boolean": {
          "addons.has_enabled_addons": false,
          "addons.has_installed_addons": false

Logcat
Glean dashboard

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Development

Successfully merging a pull request may close this issue.

4 participants