2
0
mirror of https://github.com/fork-maintainers/iceraven-browser synced 2024-11-07 15:20:38 +00:00
iceraven-browser/docs/metrics.md

90 KiB
Raw Blame History

Metrics

This document enumerates the metrics collected by this project using the Glean SDK. 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.

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.

Data reviews for this ping:

Bugs related to this ping:

  • 1538011
  • 1501822

The following metrics are added to the ping:

Name Type Description Data reviews Extras Expiration Data Sensitivity
activation.activation_id uuid An alternate identifier, not correlated with the client_id, generated once and only sent with the activation ping. 1, 2 2021-04-01 4
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, 2 2021-04-01 4

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 Data Sensitivity
about_page.privacy_notice_tapped event A user tapped on "Privacy notice" item from About page 1, 2 2021-04-01 2
about_page.support_tapped event A user tapped on "Support" item from About page 1, 2 2021-04-01 2
addons.open_addon_in_toolbar_menu event A user interacted with an installed add-on in the toolbar menu 1, 2
  • addon_id: The id of the add-on that was interacted with in the toolbar menu
2021-04-01 2
addons.open_addons_in_settings event A user accessed "Add-ons" from the Settings 1, 2 2021-04-01 2
app_theme.dark_theme_selected event A user selected Dark Theme 1, 2
  • source: The source from where dark theme was selected. The source can be 'SETTINGS' or 'ONBOARDING'
2021-04-01 2
autoplay.setting_changed event A user changed their autoplay setting to either block_cellular, block_audio, or block_all. 1
  • autoplay_setting: The new setting for autoplay: block_cellular, block_audio, or block_all.
2021-02-01 2
autoplay.visited_setting event A user visited the autoplay settings screen 1 2021-02-01 2
bookmarks_management.copied event A user copied a bookmark. 1, 2 2021-04-01 2
bookmarks_management.edited event A user edited the title and/or URL of an existing bookmark. 1, 2 2021-04-01 2
bookmarks_management.folder_add event A user added a new bookmark folder. 1, 2 2021-04-01 2
bookmarks_management.folder_remove event A user removed a bookmark folder. 1, 2 2021-04-01 2
bookmarks_management.moved event A user moved an existing bookmark or folder to another folder. 1, 2 2021-04-01 2
bookmarks_management.multi_removed event A user removed multiple bookmarks at once. 1, 2 2021-04-01 2
bookmarks_management.open_in_new_tab event A user opened a bookmark in a new tab. 1, 2 2021-04-01 2
bookmarks_management.open_in_new_tabs event A user opened multiple bookmarks at once in new tabs. 1, 2 2021-04-01 2
bookmarks_management.open_in_private_tab event A user opened a bookmark in a new private tab. 1, 2 2021-04-01 2
bookmarks_management.open_in_private_tabs event A user opened multiple bookmarks at once in new private tabs. 1, 2 2021-04-01 2
bookmarks_management.removed event A user removed a bookmark item. 1, 2 2021-04-01 2
bookmarks_management.shared event A user shared a bookmark. 1, 2 2021-04-01 2
collections.add_tab_button event A user tapped the "add tab" button in the three dot menu of collections 1, 2 2021-04-01 2
collections.all_tabs_restored event A user tapped "open tabs" from collection menu 1, 2 2021-04-01 1, 2
collections.long_press event A user long pressed on a tab, triggering the collection creation screen 1, 2 2021-04-01 2
collections.removed event A user tapped delete collection from collection menu 1, 2 2021-04-01 1, 2
collections.rename_button event A user pressed the "rename collection" button in the three dot menu 1, 2 2021-04-01 2
collections.renamed event A user renamed a collection 1, 2 2021-04-01 1, 2
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, 2
  • from_screen: A string representing the screen from which the user pressed the save button. Currently one of: browserMenu, homeMenu or home
2021-04-01 2
collections.saved event A user saved a list of tabs to a new collection 1, 2
  • tabs_open: The number of tabs open in the current session
  • tabs_selected: The number of tabs added to the collection
2021-04-01 1, 2
collections.shared event A user tapped share collection 1, 2 2021-04-01 1, 2
collections.tab_removed event A user tapped remove tab from collection tab list 1, 2 2021-04-01 1, 2
collections.tab_restored event A user restored a tab from collection tab list 1, 2 2021-04-01 1, 2
collections.tab_select_opened event A user opened the select tabs screen (the first step of the collection creation flow) 1, 2 2021-04-01 1, 2
collections.tabs_added event A user saved a list of tabs to an existing collection 1, 2
  • tabs_open: The number of tabs open in the current session
  • tabs_selected: The number of tabs added to the collection
2021-04-01 1, 2
context_menu.item_tapped event A user tapped an item in the browsers context menu 1, 2, 3
  • 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, share_image
2021-04-01 2
contextual_hint.tracking_protection.dismiss event The enhanced tracking protection contextual hint was dismissed by pressing the close button 1, 2 2021-04-01 2
contextual_hint.tracking_protection.display event The enhanced tracking protection contextual hint was displayed. 1, 2 2021-04-01 2
contextual_hint.tracking_protection.inside_tap event The user tapped inside of the etp contextual hint (which brings up the etp panel for this site). 1, 2 2021-04-01 2
contextual_hint.tracking_protection.outside_tap event The user tapped outside of the etp contextual hint (which has no effect). 1, 2 2021-04-01 2
crash_reporter.closed event The crash reporter was closed 1, 2
  • crash_submitted: A boolean that tells us whether or not the user submitted a crash report
2021-04-01 2
crash_reporter.opened event The crash reporter was displayed 1, 2 2021-04-01 2
custom_tab.action_button event A user pressed the action button provided by the launching app 1, 2 2021-04-01 2
custom_tab.closed event A user closed the custom tab 1, 2 2021-04-01 2
custom_tab.menu event A user opened the custom tabs menu 1, 2 2021-04-01 2
download_notification.cancel event A user cancelled a download in the download notification 1, 2 2021-04-01 2
download_notification.in_app_open event A user opened a downloaded file in the in-app notification link 1, 2 2021-04-01 2
download_notification.in_app_try_again event A user tapped on try again when a download fails in the in-app notification link 1, 2 2021-04-01 2
download_notification.open event A user opened a downloaded file in the download notification 1, 2 2021-04-01 2
download_notification.pause event A user paused a download in the download notification 1, 2 2021-04-01 2
download_notification.resume event A user resumed a download in the download notification 1, 2 2021-04-01 2
download_notification.try_again event A user tapped on try again when a download fails in the download notification 1, 2 2021-04-01 2
error_page.visited_error event A user encountered an error page 1, 2
  • error_type: The error type of the error page encountered
2021-04-01 2
events.app_opened event A user opened the app (from cold start, to the homescreen or browser) 1, 2
  • source: The method used to open Fenix. Possible values are: app_icon, custom_tab or link
2021-04-01 2
events.app_opened_all_startup event A user opened the app to the HomeActivity. The HomeActivity encompasses the home screen, browser screen, settings screen, collections and other screens in the nav_graph. This differs from the app_opened probe because it measures all startups, not just cold startup. Note: There is a short gap between the time application goes into background and the time android reports the application going into the background. Note: This metric does not record souce when app opened from task switcher: open application -> press home button -> open recent tasks -> choose fenix. In this case will report [source = unknown, type = hot, has_saved_instance_state = false]. 1, 2, 3, 4
  • first_frame_pre_draw_nanos: the number of nanoseconds the application took to launch. This is the time difference between application launch(user pressing app_icon, launching a link) and until the first view is about to be drawn on the screen. If the time is not captured, this extra key will not be reported.
  • has_saved_instance_state: boolean value whether or not startup type has a savedInstance. using savedInstance, HomeActivity's previous state can be restored. This is an optional key since it is not applicable to all the cases. for example, when we are doing a hot start up, we cant have a savedInstanceState therefore we report only [APP_ICON, HOT] instead of [APP_ICON, HOT, false].
  • source: The method used to open Fenix. Possible values are app_icon, custom_tab, link or unknown. unknown is for startup sources where we can't pinpoint the cause. One UNKNOWN case is the app switcher where we don't know what variables to check to ensure this startup wasn't caused by something else.
  • type: the startup type for opening fenix. the application and HomeActivity either needs to be created or started again. possible values are cold, warm, hot or error. Error is for impossible cases. Please file a bug if you see the error case. app created AND HomeActivity created = cold app started AND HomeActivity created = warm app started AND HomeActivity started = hot app created AND HomeActivity started = error Some applications such as gmail launches the default browser in the background. So when we eventually click a link, browser is already started in the background. This means that custom_tab will mostly report warm startup type.
2021-06-01 2
events.app_received_intent event The system received an Intent for the HomeActivity. An intent is received an external entity wants to the app to display content. Intents can be received when the app is closed at which point the app will be opened or when the app is already opened at which point the already open app will make changes such as loading a url. This can be used loosely as a heuristic for when the user requested to open the app. The HomeActivity encompasses the home screen and browser screen but may include other screens. This differs from the app_opened probe because it measures all startups, not just cold startup. 1, 2
  • source: The method used to open Fenix. Possible values are app_icon, custom_tab, link or unknown
2021-06-01
events.browser_menu_action event A browser menu item was tapped 1, 2, 3, 4
  • item: A string containing the name of the item the user tapped. These items include: Settings, Help, Desktop Site toggle on/off, Find in Page, New Tab, Private Tab, Share, Report Site Issue, Back/Forward button, Reload Button, Quit, Reader Mode On, Reader Mode Off, Open In app, Add To Top Sites, Add-ons Manager, Bookmarks, History
2021-04-01 2
events.entered_url event A user entered a url 1, 2
  • autocomplete: A boolean that tells us whether the URL was autofilled by an Autocomplete suggestion
2021-04-01 2
events.opened_link event A user opened a link with Fenix 1, 2 2021-04-01 2
events.performed_search event A user performed a search 1, 2, 3
  • source: A string that tells us how the user performed the search. Possible values are: * default.action * default.suggestion * shortcut.action * shortcut.suggestion
2021-04-01 2
events.preference_toggled event A user toggled a boolean preference in settings 1, 2, 3, 4, 5, 6, 7, 8
  • enabled: Whether or not the preference is now enabled
  • preference_key: The preference key for the boolean (true/false) 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, open_links_in_a_private_tab (bug in implementation https://github.com/mozilla-mobile/fenix/issues/7384), pref_key_sync_logins, pref_key_sync_bookmarks, pref_key_sync_history, pref_key_show_voice_search, and pref_key_show_search_suggestions_in_private.
2021-06-01 1, 2
events.search_bar_tapped event A user tapped the search bar 1, 2
  • source: The view the user was on when they initiated the search (For example: Home or Browser)
2021-04-01 2
events.tab_counter_menu_action event A tab counter menu item was tapped 1, 2
  • item: A string containing the name of the item the user tapped. These items are: New tab, New private tab, Close tab
2021-04-01 2
events.whats_new_tapped event A user opened the "what's new" page button 1, 2 2021-04-01 2
find_in_page.closed event A user closed the find in page UI 1, 2 2021-08-01 2
find_in_page.opened event A user opened the find in page UI 1, 2 2021-08-01 2
find_in_page.searched_page event A user searched the page 1, 2 2021-08-01 2
history.opened event A user opened the history screen 1, 2 2021-08-01 2
history.opened_item event A user opened a history item 1, 2 2021-08-01 2
history.removed event A user removed a history item 1, 2 2021-08-01 2
history.removed_all event A user removed all history items 1, 2 2021-08-01 2
history.shared event A user shared a history item 1, 2 2021-08-01 2
login_dialog.cancelled event The login dialog prompt was cancelled 1 2021-02-01 2
login_dialog.displayed event The login dialog prompt was displayed 1 2021-02-01 2
login_dialog.never_save event The login dialog prompt "never save" button was pressed 1 2021-02-01 2
login_dialog.saved event The login dialog prompt "save" button was pressed 1 2021-02-01 2
logins.copy_login event A user copied a piece of a login in saved logins 1, 2 2021-08-01 2
logins.delete_saved_login event A user confirms delete of a saved login 1, 2 2021-08-01 2
logins.open_individual_login event A user accessed an individual login in saved logins 1, 2 2021-08-01 2
logins.open_login_editor event A user entered the edit screen for an individual saved login 1, 2 2021-08-01 2
logins.open_logins event A user accessed Logins in Settings 1, 2 2021-08-01 2
logins.save_edited_login event A user saves changes made to an individual login 1, 2 2021-08-01 2
logins.save_logins_setting_changed event A user changed their setting for asking to save logins 1, 2
  • setting: The new setting for saving logins the user selected. Either ask_to_save or never_save
2021-08-01 2
logins.view_password_login event A user viewed a password in an individual saved login 1, 2 2021-08-01 2
master_password.displayed event The master password migration dialog was displayed 1 2021-03-01 2
master_password.migration event Logins were successfully migrated using a master password. 1 2021-03-01 2
media_notification.pause event A user pressed the pause icon on the media notification 1, 2 2021-08-01 2
media_notification.play event A user pressed the play icon on the media notification 1, 2 2021-08-01 2
media_state.pause event Media playback was paused. 1, 2 2021-08-01 2
media_state.play event Media started playing. 1, 2 2021-08-01 2
media_state.stop event Media playback has ended. 1, 2 2021-08-01 2
onboarding.finish event The user taps starts browsing and ends the onboarding experience. 1, 2 2021-08-01 2
onboarding.fxa_auto_signin event The onboarding automatic sign in card was tapped. 1, 2 2021-08-01 2
onboarding.fxa_manual_signin event The onboarding manual sign in card was tapped. 1, 2 2021-08-01 2
onboarding.pref_toggled_private_browsing event The private browsing preference was selected from the onboarding card. 1, 2 2021-08-01 2
onboarding.pref_toggled_theme_picker event The device theme was chosen using the theme picker onboarding card. 1, 2
  • theme: A string that indicates the theme LIGHT, DARK, or FOLLOW DEVICE. Default: FOLLOW DEVICE
2021-08-01 2
onboarding.pref_toggled_toolbar_position event The toolbar position preference was chosen from the onboarding card. 1, 2
  • position: A string that indicates the position of the toolbar TOP or BOTTOM. Default: BOTTOM
2021-08-01 2
onboarding.pref_toggled_tracking_prot event The tracking protection preference was chosen from the onboarding card. 1, 2
  • setting: A string that indicates the Tracking Protection policy STANDARD or STRICT. Default: Toggle ON, STANDARD
2021-08-01 2
onboarding.privacy_notice event The onboarding privacy notice card was tapped. 1, 2 2021-08-01 2
pocket.pocket_top_site_clicked event A user clicked on the trending Pocket top site 1, 2 2021-08-01 2
pocket.pocket_top_site_removed event A user removed the trending Pocket top site 1, 2 2021-08-01 2
private_browsing_mode.notification_tapped event A user pressed the private browsing mode notification itself. 1, 2 2021-08-01 2
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, 2 2021-08-01 2
private_browsing_shortcut.cfr_add_shortcut event A user pressed the "Add shortcut" button when the contextual feature recommender appeared. 1, 2 2021-08-01 2
private_browsing_shortcut.cfr_cancel event A user pressed the "No thanks" button when the contextual feature recommender appeared. 1, 2 2021-08-01 2
private_browsing_shortcut.create_shortcut event A user pressed the "Add private browsing shortcut" button in settings. 1, 2 2021-08-01 2
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, 2 2021-08-01 2
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, 2 2021-08-01 2
private_browsing_shortcut.static_shortcut_tab event A user pressed the long-press shortcut "Open new tab", opening up a new search. 1, 2 2021-08-01 2
progressive_web_app.background event A user puts the PWA into the background. 1
  • time_ms: The current time in ms when the PWA was backgrounded.
2021-03-01 2
progressive_web_app.foreground event A user brings the PWA into the foreground. 1
  • time_ms: The current time in ms when the PWA was brought to the foreground.
2021-03-01 2
progressive_web_app.homescreen_tap event A user taps on PWA homescreen icon 1 2021-03-01 2
progressive_web_app.install_tap event A user installs a PWA. Could be a shortcut or added to homescreen. 1 2021-03-01 2
reader_mode.appearance event A user tapped the appearance button 1, 2 2021-08-01 2
reader_mode.available event Reader mode is available for the current page 1, 2 2021-08-01 2
reader_mode.closed event A user closed reader mode 1, 2 2021-08-01 2
reader_mode.opened event A user opened reader mode 1, 2 2021-08-01 2
search_shortcuts.selected event A user selected a search shortcut engine to use 1, 2
  • engine: The name of the built-in search engine the user selected as a string
2021-08-01
search_suggestions.enable_in_private event A user enabled receiving search suggestions in private sessions 1, 2 2021-08-01 1, 2
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, 2 2021-08-01 2
search_widget.voice_button event A user pressed the microphone icon, opening a new voice search screen. 1, 2 2021-08-01 2
sync_account.opened event A user opened the sync account page 1, 2 2021-08-01 2
sync_account.send_tab event A user sent the current tab to another FxA device 1, 2 2021-08-01 2
sync_account.sign_in_to_send_tab event A user pressed the "sign in to send tab" button inside the share tab menu 1, 2 2021-08-01 2
sync_account.sync_now event A user pressed the sync now button on the sync account page 1, 2 2021-08-01 2
sync_auth.closed event A user closed the sync page 1, 2 2021-08-01 2
sync_auth.opened event A user opened the sync authentication page 1, 2 2021-08-01 2
sync_auth.other_external event User authenticated via FxA using an unknown mechanism. "Known" mechanisms are currently sign-in, sign-up and pairing 1, 2 2021-08-01 1, 2
sync_auth.paired event User signed into FxA by pairing with a different Firefox browser, using a QR code 1, 2 2021-08-01 1, 2
sync_auth.recovered event Account manager automatically recovered FxA authentication state without direct user involvement 1, 2 2021-08-01 1, 2
sync_auth.scan_pairing event A user pressed the scan pairing button on the sync authentication page 1, 2 2021-08-01 2
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, 2 2021-08-01 2
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, 2 2021-08-01 2
sync_auth.sign_up event User registered a new Firefox Account, and was signed into it 1, 2 2021-08-01 1, 2
sync_auth.use_email event A user chose to use their email to sign in instead of scanning a QR code, counterpart to "scan_pairing" 1, 2 2021-08-01 2
sync_auth.use_email_problem event A user chose to use their email to sign in after an account problem 1, 2 2021-08-01 2
tab.media_pause event A user pressed the pause icon on a tab from the home screen 1, 2 2021-08-01 2
tab.media_play event A user pressed the play icon on a tab from the home screen 1, 2 2021-08-01 2
tabs.setting_opened event The tab settings were opened. 1 2021-08-01 2
tabs_tray.close_all_tabs event A user tapped the close all tabs button in the three dot menu within the tabs tray 1, 2 2021-08-01 2
tabs_tray.closed event A user closed the tabs tray 1, 2 2021-08-01 2
tabs_tray.closed_existing_tab event A user closed an existing tab 1, 2 2021-08-01 2
tabs_tray.menu_opened event A user opened three three dot menu in the tabs tray 1, 2 2021-08-01 2
tabs_tray.new_private_tab_tapped event A user opened a new private tab 1, 2 2021-08-01 2
tabs_tray.new_tab_tapped event A user opened a new tab 1, 2 2021-08-01 2
tabs_tray.normal_mode_tapped event A user switched to normal mode 1, 2 2021-08-01 2
tabs_tray.opened event A user opened the tabs tray 1, 2 2021-08-01 2
tabs_tray.opened_existing_tab event A user opened an existing tab 1, 2 2021-08-01 2
tabs_tray.private_mode_tapped event A user switched to private mode 1, 2 2021-08-01 2
tabs_tray.save_to_collection event A user tapped the save to collection button in the tabs tray 1, 2 2021-08-01 2
tabs_tray.share_all_tabs event A user tapped the share all tabs button in the three dot menu within the tabs tray 1, 2 2021-08-01 2
tip.closed event The tip was closed 1, 2
  • identifier: The identifier of the tip closed
2021-08-01 2
tip.displayed event The tip was displayed 1, 2
  • identifier: The identifier of the tip displayed
2021-08-01 2
tip.pressed event The tip's button was pressed 1, 2
  • identifier: The identifier of the tip the action was taken on
2021-08-01 2
toolbar_settings.changed_position event The user selected a new position for the toolbar 1, 2
  • position: A string that indicates the new position of the toolbar TOP or BOTTOM
2021-08-01 2
top_sites.long_press event A user long pressed on a top site 1, 2
  • type: The type of top site. Options are: "FRECENCY," "DEFAULT," or "PINNED."
2021-08-01 2
top_sites.open_default event A user opened a default top site 1, 2 2021-08-01 2
top_sites.open_frecency event A user opened a frecency top site 1, 2 2021-08-01 2
top_sites.open_in_new_tab event A user opens a new tab based on a top site item 1, 2 2021-08-01 2
top_sites.open_in_private_tab event A user opens a new private tab based on a top site item 1, 2 2021-08-01 2
top_sites.open_pinned event A user opened a pinned top site 1, 2 2021-08-01 2
top_sites.remove event A user removes a top site item 1, 2 2021-08-01 2
top_sites.swipe_carousel event A user swiped to change the page of the top sites carousel 1, 2
  • page: The page number the carousel is now on
2021-08-01 2
tracking_protection.etp_setting_changed event A user changed their tracking protection level setting to either strict, standard, or custom. 1, 2, 3
  • etp_setting: The new setting for ETP: strict, standard, custom
2021-08-01 2
tracking_protection.etp_settings event A user opened tracking protection settings through settings. 1, 2 2021-08-01 2
tracking_protection.etp_shield event A user pressed the tracking protection shield icon in toolbar. 1, 2 2021-08-01 2
tracking_protection.etp_tracker_list event A user pressed into a list of categorized trackers in tracking protection panel. 1, 2 2021-08-01 2
tracking_protection.exception_added event A user added a tracking protection exception through the TP toggle in the panel. 1, 2 2021-08-01 2
tracking_protection.panel_settings event A user opened tracking protection settings from the panel. 1, 2 2021-08-01 2
user_specified_search_engines.custom_engine_added event A user added a new custom search engine 1, 2 2021-08-01 2
user_specified_search_engines.custom_engine_deleted event A user deleted a custom search engine 1, 2 2021-08-01 2
voice_search.tapped event A user selected the voice search button on the search screen. 1, 2 2021-08-01 2

first-session

This ping is intended to capture the source of the app install on the first session.

This ping includes the client id.

Data reviews for this ping:

Bugs related to this ping:

The following metrics are added to the ping:

Name Type Description Data reviews Extras Expiration Data Sensitivity
first_session.adgroup string The name of the AdGroup that was used to source this installation. 1, 2 2021-08-01 1, 2
first_session.campaign string The name of the campaign that is responsible for this installation. 1, 2 2021-08-01 1, 2
first_session.creative string The identifier of the creative material that the user interacted with. 1, 2 2021-08-01 1, 2
first_session.network string The name of the Network that sourced this installation. 1, 2 2021-08-01 1, 2
first_session.timestamp datetime The Glean generated date and time of the installation. This is unique per app install, though the rest of the data in this ping is from Adjust and will remain static across installs. 1, 2 2021-08-01 1, 2

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 Data Sensitivity
addons.enabled_addons string_list A list of all enabled add-ons on the device. 1, 2 2021-04-01 2
addons.has_enabled_addons boolean Whether or not the user has enabled add-ons on the device. 1, 2 2021-04-01 2
addons.has_installed_addons boolean Whether or not the user has installed add-ons on the device. 1, 2 2021-04-01 2
addons.installed_addons string_list A list of all installed add-ons on the device. 1, 2 2021-04-01 2
browser.search.ad_clicks labeled_counter Records clicks of adverts on SERP pages. The key format is . 1, 2 2021-08-01 2
browser.search.in_content labeled_counter Records the type of interaction a user has on SERP pages. 1, 2 2021-08-01 2
browser.search.with_ads labeled_counter Records counts of SERP pages with adverts displayed. The key format is . 1, 2 2021-08-01 2
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 but may be incremented without user interaction by website scripts that programmatically redirect to a new location. 1, 2, 3 2021-08-01 2
metrics.adjust_ad_group string A string containing the Adjust ad group 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, 2 2021-08-01 2
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, 2 2021-08-01 1
metrics.adjust_creative string A string containing the Adjust creative 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, 2 2021-08-01 2
metrics.adjust_network string A string containing the Adjust network 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, 2 2021-08-01 2
metrics.close_tab_setting string A string that indicates the setting for tab closing: MANUAL, ONE_DAY, ONE_WEEK, ONE_MONTH 1 2021-08-01 2
metrics.default_browser boolean Is Fenix the default browser? 1, 2 2021-08-01 2
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, 3 2021-08-01 1, 2
metrics.distribution_id string A string containing the distribution identifier. This is currently used to identify installs from Mozilla Online. 1 never 1
metrics.has_open_tabs boolean A boolean that indicates if the user has any open NORMAL tabs. 1, 2 2021-08-01 2
metrics.has_recent_pwas boolean A boolean that indicates if the user has recently used PWAs. See recently_used_pwa_count for the actual count. 1, 2 2021-08-01 2
metrics.has_top_sites boolean A boolean that indicates if the user has top sites 1, 2 2021-08-01 2
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, 3 2021-08-01 1, 2
metrics.recently_used_pwa_count counter A counter that indicates how many PWAs a user has recently used. Threshold for "recency" set in HomeActivity#PWA_RECENTLY_USED_THRESHOLD. Currently we are not told by the OS when a PWA is removed by the user, so we use the "recently used" heuristic to judge how many PWAs are still active, as a proxy for "installed". This value will only be set if the user has at least one recently used PWA. If they have 0, this metric will not be sent, resulting in a null value during analysis on the server-side. To disambiguate between a failed recently_used_pwa_count metric and 0 recent PWAs, please see has_recent_pwas. 1, 2 2021-08-01 2
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 be: action, suggestion, widget or shortcut (depending on the source from which the search started). Also added the other option for the source but it should never enter on this case. 1, 2, 3, 4 2021-08-01 1, 2
metrics.search_widget_installed boolean Whether or not the search widget is installed 1, 2 2021-08-01 2
metrics.tab_view_setting string A string that indicates the setting for tab view: GRID, LIST 1 2021-08-01 2
metrics.tabs_open_count counter A counter that indicates how many NORMAL tabs a user has open. This value will only be set if the user has at least one open tab. If they have 0, this ping will not get sent, resulting in a null value. To disambiguate between a failed tabs_open_count ping and 0 open tabs, please see has_open_tabs. 1, 2 2021-08-01 2
metrics.toolbar_position string A string that indicates the new position of the toolbar TOP or BOTTOM 1, 2 2021-08-01 2
metrics.top_sites_count counter A counter that indicates how many top sites a user has. This value will only be set if the user has at least one top site. If they have 0, this ping will not get sent, resulting in a null value. To disambiguate between a failed top_sites_count ping and 0 top sites, please see has_top_sites. 1, 2 2021-08-01 2
perf.awesomebar.bookmark_suggestions timing_distribution Duration of a bookmarks awesomebar suggestion query. 1 2020-11-15 1, 2
perf.awesomebar.clipboard_suggestions timing_distribution Duration of a clipboard awesomebar suggestion query. 1 2020-11-15 1, 2
perf.awesomebar.history_suggestions timing_distribution Duration of a history awesomebar suggestion query. 1 2020-11-15 1, 2
perf.awesomebar.search_engine_suggestions timing_distribution Duration of a search engine awesomebar suggestion query. 1 2020-11-15 1, 2
perf.awesomebar.session_suggestions timing_distribution Duration of a session awesomebar suggestion query. 1 2020-11-15 1, 2
perf.awesomebar.shortcuts_suggestions timing_distribution Duration of a shortcuts awesomebar suggestion query. 1 2020-11-15 1, 2
perf.awesomebar.synced_tabs_suggestions timing_distribution Duration of a synced tabs awesomebar suggestion query. 1 2020-11-15 1, 2
preferences.accessibility_services string_list Whether or not the user has touch exploration or switch services enabled. These are built into the Android OS, not Fenix prefs. default: "" 1, 2 2021-08-01 2
preferences.open_links_in_a_private_tab string_list Whether or not the user has enabled open links in a private tab. default: false 1, 2 2021-08-01 2
preferences.open_links_in_app string_list Whether or not the user has the open links in apps feature enabled. default: false 1, 2 2021-08-01 2
preferences.remote_debugging string_list Whether or not the user has remote debugging enabled default: false 1, 2 2021-08-01 2
preferences.search_bookmarks string_list Whether or not the user has enabled bookmark search suggestions default: true 1, 2 2021-08-01 2
preferences.search_browsing_history string_list Whether or not the user has enabled browsing history suggestions. default: true 1, 2 2021-08-01 2
preferences.search_suggestions_private string_list Whether or not the user has enabled showing search suggestions in private mode. default: false (we prompt the user, asking them to make a selection) 1, 2 2021-08-01 2
preferences.show_clipboard_suggestions string_list Whether or not the user has enabled clipboard search suggestions. default: true 1, 2 2021-08-01 2
preferences.show_search_shortcuts string_list Whether or not the user has enabled search shortcuts. default: true 1, 2 2021-08-01 2
preferences.show_search_suggestions string_list Whether or not the user has search suggestions enabled default: true 1, 2 2021-08-01 2
preferences.show_voice_search string_list Whether or not the user has enabled the voice search button. default: true 1, 2 2021-08-01 2
preferences.sync string_list Whether or not the user is signed into FxA default: false 1, 2 2021-08-01 2
preferences.sync_items string_list The list of items the user has chosen to sync with FxA. default: "" if the user is signed out. Otherwise defaults to whatever is set in their FxA account. New accounts set: [bookmarks, history, passwords, tabs] 1, 2 2021-08-01 2
preferences.telemetry string_list Whether or not the user has telemetry enabled. Note we should never receive a "false" value for this since telemetry would not send in that case. default: true 1, 2 2021-08-01 2
preferences.theme string_list The theme the user has enabled. "light," "dark," "system," or "battery" default: "system" for API 28+, else "light" 1, 2 2021-08-01 2
preferences.toolbar_position string_list The position of the toolbar default: bottom (defaults to top if the user has accessibility services) 1, 2 2021-08-01 2
preferences.tracking_protection string_list What type of enhanced tracking protection the user has enabled. "standard," "strict," "custom," or "" (if disabled) default: "standard" 1, 2 2021-08-01 2
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, 3 2021-08-01 1, 2
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, 3 2021-08-01 1, 2
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, 3 2021-08-01 1, 2
storage.stats.app_bytes memory_distribution The size of the app's APK and related files as installed: this is expected to be larger than download size. This is the output of StorageStats.getAppBytes so see that for details. This value is only available on Android 8+. A similar value may be available on the Google Play dashboard: we can use this value to see if that value is reliable enough. 1 2021-02-01 1, 2
storage.stats.cache_bytes memory_distribution The size of all cached data in the app. This is the output of StorageStats.getCacheBytes so see that for details. This value is only available on Android 8+. 1 2021-02-01 1, 2
storage.stats.data_dir_bytes memory_distribution The size of all data minus cache_bytes. This is the output of StorageStats.getDataBytes except we subtract the value of cache_bytes so the cache is not measured redundantly; see that method for details. This value is only available on Android 8+. 1 2021-02-01 1, 2
storage.stats.query_stats_duration timing_distribution How long it took to query the device for the StorageStats that contain the file size information. The docs say it may be expensive so we want to ensure it's not too expensive. This value is only available on Android 8+. 1 2021-02-01 1, 2

startup-timeline

This ping is intended to provide an understanding of startup performance.

The ping is intended to be captured by performance testing automation to report results there, in addition to user telemetry. We place these metrics into their own ping in order to isolate them and make this process easier.

Data reviews for this ping:

Bugs related to this ping:

The following metrics are added to the ping:

Name Type Description Data reviews Extras Expiration Data Sensitivity
startup.timeline.clock_ticks_per_second counter The number of clock tick time units that occur in one second on this particular device. This value is expected to be used in conjunction with the framework_start metric. 1, 2 2021-08-01 1
startup.timeline.framework_start timespan The duration the Android framework takes to start before letting us run code in *Application.init. This is calculated from appInitTimestamp - processStartTimestamp. processStartTimestamp is derived from the clock tick time unit, which is expected to be less granular than nanoseconds. Therefore, we convert and round our timestamps to clock ticks before computing the difference and convert back to nanoseconds to report. For debugging purposes, clock_ticks_per_second, which may vary between devices, is also reported as a metric 1, 2 2021-08-01 1
startup.timeline.framework_start_error boolean An error when attempting to record framework_start - the application init timestamp returned a negative value - which is likely indicative of a bug in the implementation. 1, 2 2021-08-01 1
startup.timeline.framework_start_read_error boolean An error when attempting to read stats from /proc pseudo-filesystem - privacy managers can block access to reading these files - the application will catch a file reading exception. 1, 2 2021-08-01 1

Data categories are defined here.