2
0
mirror of https://github.com/fork-maintainers/iceraven-browser synced 2024-11-02 03:40:16 +00:00
iceraven-browser/docs/metrics.md
Severin Rudie 2e76d82c9a [fenix] 4281 remove qab (https://github.com/mozilla-mobile/fenix/pull/6310)
* For https://github.com/mozilla-mobile/fenix/issues/4281: small ToolbarMenu refactor

This makes it easier to see how items are ordered in the menuItems list

* For 4281: add QAB buttons to menu

* For 4281: removed menu back button per mocks

I double checked with UX, and we'll be relying on the hardware back button for its functionality

* For 4281: add content descriptions for bookmarking

* For 4281: updated BrowserToolbarController for new functionality

* For 4281: provided simple dependencies to browser controller

More complex changes will be in a following commit, for review readability

* For 4281: move toolbar controller dependencies up to BaseBrowserFragment

The functionality they control is being moved into the toolbar menu, which is shared by both normal tabs and custom ones

* For 4281: removed (now unused) code related to QAB

* For 4281: fix test compilation after QAB removal

Tests still need to be expanded to include added functionality

* For 4281: updated menu to show if url is bookmarked

This sloppy workaround is required because TwoStateButton requires that `isInPrimaryState` be a synchronous call, and checking whether or not the current site is bookmarked is quite slow (10-50 MS, in my tests).  After days of work and many attempted solutions, this was the least abhorrent among them.

https://github.com/mozilla-mobile/android-components/issues/4915 was opened against AC to evaluate potentially supporting async `isInPrimaryState` functions.
https://github.com/mozilla-mobile/fenix/issues/6370 was opened against Fenix to investigate the unexpectedly slow call to `BookmarkStorage`.

* For 4281: update reader mode switch

* For 4281: selectively show/hide menu items

* For 4281: add reader mode appearance

* For 4281: update bookmark button when it is clicked

* For 4281: removed unused QAB code

* For 4281: removed QAB robot, updated UI tests

* For 4281: removed QuickActionSheet metrics

Since this behavior now lives in the toolbar, it is tracked via Event.BrowserMenuItemTapped

* For 4281: fixed lint errors

* For 4281: add new strings for buttons added to menu

This is necessary because the location change (from QAB to toolbar menu) could affect the grammar in some languages

* For 4281: remove outdated TODOs

* For 4281: removed QAB container

* For 4281: removed back button reference from UI test

This button no longer exists

* For 4821: Fixes a visual defect (extra padding on top of toolbar)

* For 4281: update copy on reader mode

* For 4281: fixed review nits
2019-11-11 17:10:14 -08:00

34 KiB

Metrics

This document enumerates the metrics collected by this project. This project may depend on other projects which also collect metrics. This means you might have to go searching through the dependency tree to get a full picture of everything collected by this project. Sorry about that.

Pings

activation

This ping is intended to provide a measure of the activation of mobile products. It's generated when Fenix starts, right after Glean is initialized. It doesn't include the client_id, since it might be reporting an hashed version of the Google Advertising ID.

The following metrics are added to the ping:

Name Type Description Data reviews Extras Expiration
activation.activation_id uuid An alternate identifier, not correlated with the client_id, generated once and only sent with the activation ping. 1 2020-03-01
activation.identifier string A hashed and salted version of the Google Advertising ID from the device. This will never be sent in a ping that also contains the client_id. 1 2020-03-01

baseline

This is a built-in ping that is assembled out of the box by the Glean SDK. See the Glean SDK documentation for the baseline ping. The following metrics are added to the ping:

Name Type Description Data reviews Extras Expiration
events.total_uri_count counter A counter of URIs visited by the user in the current session, including page reloads. This does not include background page requests and URIs from embedded pages or private browsing. 1 2020-03-01
metrics.search_count labeled_counter The labels for this counter are <search-engine-name>.<source>. If the search engine is bundled with Fenix search-engine-name will be the name of the search engine. If it's a custom search engine (defined: https://github.com/mozilla-mobile/fenix/issues/1607) the value will be custom. source will either be action or suggestion 1, 2 2020-03-01

events

This is a built-in ping that is assembled out of the box by the Glean SDK. See the Glean SDK documentation for the events ping. The following metrics are added to the ping:

Name Type Description Data reviews Extras Expiration
bookmarks_management.copied event A user copied a bookmark. 1 2020-03-01
bookmarks_management.edited event A user edited the title and/or URL of an existing bookmark. 1 2020-03-01
bookmarks_management.folder_add event A user added a new bookmark folder. 1 2020-03-01
bookmarks_management.folder_remove event A user removed a bookmark folder. 1 2020-03-01
bookmarks_management.moved event A user moved an existing bookmark or folder to another folder. 1 2020-03-01
bookmarks_management.multi_removed event A user removed multiple bookmarks at once. 1 2020-03-01
bookmarks_management.open_in_new_tab event A user opened a bookmark in a new tab. 1 2020-03-01
bookmarks_management.open_in_new_tabs event A user opened multiple bookmarks at once in new tabs. 1 2020-03-01
bookmarks_management.open_in_private_tab event A user opened a bookmark in a new private tab. 1 2020-03-01
bookmarks_management.open_in_private_tabs event A user opened multiple bookmarks at once in new private tabs. 1 2020-03-01
bookmarks_management.removed event A user removed a bookmark item. 1 2020-03-01
bookmarks_management.shared event A user shared a bookmark. 1 2020-03-01
collections.add_tab_button event A user tapped the "add tab" button in the three dot menu of collections 1 2020-03-01
collections.all_tabs_restored event A user tapped "open tabs" from collection menu 1 2020-03-01
collections.long_press event A user long pressed on a tab, triggering the collection creation screen 1 2020-03-01
collections.removed event A user tapped delete collection from collection menu 1 2020-03-01
collections.rename_button event A user pressed the "rename collection" button in the three dot menu 1 2020-03-01
collections.renamed event A user renamed a collection 1 2020-03-01
collections.save_button event A user pressed the "save to collection" button on either the home or browser screen, triggering the collection creation screen to open (tab_select_opened) 1
  • from_screen: A string representing the screen from which the user pressed the save button. Currently one of: browserMenu, homeMenu or home
2020-03-01
collections.saved event A user saved a list of tabs to a new collection 1
  • tabs_open: The number of tabs open in the current session
  • tabs_selected: The number of tabs added to the collection
2020-03-01
collections.shared event A user tapped share collection 1 2020-03-01
collections.tab_removed event A user tapped remove tab from collection tab list 1 2020-03-01
collections.tab_restored event A user restored a tab from collection tab list 1 2020-03-01
collections.tab_select_opened event A user opened the select tabs screen (the first step of the collection creation flow) 1 2020-03-01
collections.tabs_added event A user saved a list of tabs to an existing collection 1
  • tabs_open: The number of tabs open in the current session
  • tabs_selected: The number of tabs added to the collection
2020-03-01
context_menu.item_tapped event A user tapped an item in the browsers context menu 1
  • named: The name of the item that was tapped. Available items are open_in_new_tab, open_in_private_tab, open_image_in_new_tab, save_image, share_link, copy_link, copy_image_location
2020-03-01
crash_reporter.closed event The crash reporter was closed 1
  • crash_submitted: A boolean that tells us whether or not the user submitted a crash report
2020-03-01
crash_reporter.opened event The crash reporter was displayed 1 2020-03-01
custom_tab.action_button event A user pressed the action button provided by the launching app 1 2020-03-01
custom_tab.closed event A user closed the custom tab 1 2020-03-01
custom_tab.menu event A user opened the custom tabs menu 1 2020-03-01
error_page.visited_error event A user encountered an error page 1
  • error_type: The error type of the error page encountered
2020-03-01
events.app_opened event A user opened the app 1
  • source: The method used to open Fenix. Possible values are: app_icon, custom_tab or link
2020-03-01
events.browser_menu_action event A browser menu item was tapped 1, 2
  • item: A string containing the name of the item the user tapped. These items include: Settings, Library, Help, Desktop Site toggle on/off, Find in Page, New Tab, Private Tab, Share, Report Site Issue, Back/Forward button, Reload Button, Quit
2020-03-01
events.entered_url event A user entered a url 1
  • autocomplete: A boolean that tells us whether the URL was autofilled by an Autocomplete suggestion
2020-03-01
events.opened_link event A user opened a link with Fenix 1
  • mode: The mode the link was opened in. Either 'PRIVATE' or 'NORMAL'
2020-03-01
events.performed_search event A user performed a search 1, 2
  • source: A string that tells us how the user performed the search. Possible values are: * default.action * default.suggestion * shortcut.action * shortcut.suggestion
2020-03-01
events.preference_toggled event A user toggled a preference switch in settings 1, 2, 3, 4
  • enabled: Whether or not the preference is now enabled
  • preference_key: The preference key for the switch preference the user toggled. We currently track: show_search_suggestions, remote_debugging, telemetry, tracking_protection, search_bookmarks, search_browsing_history, show_clipboard_suggestions, show_search_shortcuts, and open_links_in_a_private_tab
2020-03-01
events.search_bar_tapped event A user tapped the search bar 1
  • source: The view the user was on when they initiated the search (For example: Home or Browser)
2020-03-01
events.whats_new_tapped event A user opened the "what's new" page button 1
  • source: The location from which the user selected the what's new button. Either 'about' or 'home'
2020-03-01
find_in_page.closed event A user closed the find in page UI 1 2020-03-01
find_in_page.next_result event A user clicked the "next result" button 1 2020-03-01
find_in_page.opened event A user opened the find in page UI 1 2020-03-01
find_in_page.previous_result event A user clicked the "previous result" button 1 2020-03-01
find_in_page.searched_page event A user searched the page 1 2020-03-01
history.opened event A user opened the history screen 1 2020-03-01
history.opened_item event A user opened a history item 1 2020-03-01
history.removed event A user removed a history item 1 2020-03-01
history.removed_all event A user removed all history items 1 2020-03-01
history.shared event A user shared a history item 1 2020-03-01
library.closed event A user closed the library 1 2020-03-01
library.opened event A user opened the library 1 2020-03-01
library.selected_item event A user selected a library item 1
  • item: The library item the user selected
2020-03-01
media_notification.pause event A user pressed the pause icon on the media notification 1 2020-03-01
media_notification.play event A user pressed the play icon on the media notification 1 2020-03-01
private_browsing_mode.garbage_icon event A user pressed the garbage can icon on the private browsing home page, deleting all private tabs. 1 2020-03-01
private_browsing_mode.notification_delete event A user pressed the private browsing mode notification's "Delete and Open" button. 1 2020-03-01
private_browsing_mode.notification_open event A user pressed the private browsing mode notification's "Open" button. 1 2020-03-01
private_browsing_mode.notification_tapped event A user pressed the private browsing mode notification itself. 1 2020-03-01
private_browsing_mode.snackbar_undo event A user pressed the "undo" button in the snackbar that is shown when the garbage icon is tapped. 1 2020-03-01
private_browsing_shortcut.cfr_add_shortcut event A user pressed the "Add shortcut" button when the contextual feature recommender appeared. 1 2020-03-01
private_browsing_shortcut.cfr_cancel event A user pressed the "No thanks" button when the contextual feature recommender appeared. 1 2020-03-01
private_browsing_shortcut.create_shortcut event A user pressed the "Add private browsing shortcut" button in settings. 1 2020-03-01
private_browsing_shortcut.pinned_shortcut_priv event A user pressed the pinned private shortcut in Android home screen, opening up a new private search. 1 2020-03-01
private_browsing_shortcut.static_shortcut_priv event A user pressed the long-press shortcut "Open new private tab", opening up a new private search. 1 2020-03-01
private_browsing_shortcut.static_shortcut_tab event A user pressed the long-press shortcut "Open new tab", opening up a new search. 1 2020-03-01
qr_scanner.navigation_allowed event A user tapped "allow" on the prompt, directing the user to the website scanned 1 2020-03-01
qr_scanner.navigation_denied event A user tapped "deny" on the prompt, putting the user back to the scanning view 1 2020-03-01
qr_scanner.opened event A user opened the QR scanner 1 2020-03-01
qr_scanner.prompt_displayed event A user scanned a QR code, causing a confirmation prompt to display asking if they want to navigate to the page 1 2020-03-01
reader_mode.appearance event A user tapped the appearance button 1 2020-03-01
reader_mode.available event Reader mode is available for the current page 1 2020-03-01
reader_mode.closed event A user closed reader mode 1 2020-03-01
reader_mode.opened event A user opened reader mode 1 2020-03-01
search_shortcuts.selected event A user selected a search shortcut engine to use 1
  • engine: The name of the built-in search engine the user selected as a string
2020-03-01
search_widget.new_tab_button event A user pressed anywhere from the Firefox logo until the start of the microphone icon, opening a new tab search screen. 1 2020-03-01
search_widget.voice_button event A user pressed the microphone icon, opening a new voice search screen. 1 2020-03-01
sync_account.closed event A user closed the sync account page 1 2020-03-01
sync_account.opened event A user opened the sync account page 1 2020-03-01
sync_account.send_tab event A user sent the current tab to another FxA device 1 2020-03-01
sync_account.sign_in_to_send_tab event A user pressed the "sign in to send tab" button inside the share tab menu 1 2020-03-01
sync_account.sync_now event A user pressed the sync now button on the sync account page 1 2020-03-01
sync_auth.auto_login event User signed into FxA via an account shared from another locally installed Mozilla application (e.g. Fennec) 1 2020-03-01
sync_auth.closed event A user closed the sync page 1 2020-03-01
sync_auth.opened event A user opened the sync authentication page 1 2020-03-01
sync_auth.other_external event User authenticated via FxA using an unknown mechanism. "Known" mechanisms are currently sign-in, sign-up and pairing 1 2020-03-01
sync_auth.paired event User signed into FxA by pairing with a different Firefox browser, using a QR code 1 2020-03-01
sync_auth.recovered event Account manager automatically recovered FxA authentication state without direct user involvement 1 2020-03-01
sync_auth.scan_pairing event A user pressed the scan pairing button on the sync authentication page 1 2020-03-01
sync_auth.sign_in event A user pressed the sign in button on the sync authentication page and was successfully signed in to FxA 1 2020-03-01
sync_auth.sign_out event A user pressed the sign out button on the sync account page and was successfully signed out of FxA 1 2020-03-01
sync_auth.sign_up event User registered a new Firefox Account, and was signed into it 1 2020-03-01
tab.media_pause event A user pressed the pause icon on a tab from the home screen 1 2020-03-01
tab.media_play event A user pressed the play icon on a tab from the home screen 1 2020-03-01
tracking_protection.etp_setting_changed event A user changed their tracking protection level setting to either strict or standard. 1
  • etp_setting: The new setting for ETP: strict, standard
2020-03-01
tracking_protection.etp_settings event A user opened tracking protection settings through settings. 1 2020-03-01
tracking_protection.etp_shield event A user pressed the tracking protection shield icon in toolbar. 1 2020-03-01
tracking_protection.etp_tracker_list event A user pressed into a list of categorized trackers in tracking protection panel. 1 2020-03-01
tracking_protection.exception_added event A user added a tracking protection exception through the TP toggle in the panel. 1 2020-03-01
tracking_protection.panel_settings event A user opened tracking protection settings from the panel. 1 2020-03-01

metrics

This is a built-in ping that is assembled out of the box by the Glean SDK. See the Glean SDK documentation for the metrics ping. The following metrics are added to the ping:

Name Type Description Data reviews Extras Expiration
experiments.metrics.active_experiment string Records the branch name of the active experiment, if the client is enrolled in the fenix-test-2019-08-05 experiment. This is intended to validate that the service-experiments library properly matches clients to experiments and can take action based on a multi-branched experiment. This is done by recording the experiment branch name in this string metric which allows the experiment to be transparent and unobtrusive to the user. 1 2019-11-01
metrics.adjust_campaign string A string containing the Adjust campaign ID from which the user installed Fenix. This will not send on the first session the user runs. If the install is organic, this will be empty. 1 2020-03-01
metrics.default_browser boolean Is Fenix the default browser? 1 2020-03-01
metrics.default_moz_browser string The name of the default browser on device if and only if it's a Mozilla owned product 1, 2 2020-03-01
metrics.mozilla_products string_list A list of all the Mozilla products installed on device. We currently scan for: Firefox, Firefox Beta, Firefox Aurora, Firefox Nightly, Firefox Fdroid, Firefox Lite, Reference Browser, Reference Browser Debug, Fenix, Focus, and Lockwise. 1, 2 2020-03-01
metrics.search_count labeled_counter The labels for this counter are <search-engine-name>.<source>. If the search engine is bundled with Fenix search-engine-name will be the name of the search engine. If it's a custom search engine (defined: https://github.com/mozilla-mobile/fenix/issues/1607) the value will be custom. source will either be action or suggestion 1, 2 2020-03-01
metrics.total_uri_count string A counter of URIs visited by the user in the current session, including page reloads. This does not include background page requests and URIs from embedded pages or private browsing. 1 2020-03-01
search.default_engine.code string If the search engine is pre-loaded with Fenix this value will be the search engine identifier. If it's a custom search engine (defined: https://github.com/mozilla-mobile/fenix/issues/1607) the value will be "custom" 1, 2 2020-03-01
search.default_engine.name string If the search engine is pre-loaded with Fenix this value will be the search engine name. If it's a custom search engine (defined: https://github.com/mozilla-mobile/fenix/issues/1607) the value will be "custom" 1, 2 2020-03-01
search.default_engine.submission_url string If the search engine is pre-loaded with Fenix this value will be he base URL we use to build the search query for the search engine. For example: https://mysearchengine.com/?query=%s. If it's a custom search engine (defined: https://github.com/mozilla-mobile/fenix/issues/1607) the value will be "custom" 1, 2 2020-03-01