Web-frontend for aggregated telemetry data
Перейти к файлу
Alessio Placitelli 61ed82c89d Move to the non-public section 2024-11-14 11:52:01 -05:00
assets
dashboard-generator
histogram-simulator
new-pipeline
probe-dictionary
update-orphaning
v2
wrapper
.gitignore
CODE_OF_CONDUCT.md
LICENSE
README.md
favicon.ico
favicon.xcf
index.html Move to the non-public section 2024-11-14 11:52:01 -05:00

README.md

Telemetry Dashboard

This repository contains the source code for telemetry.mozilla.org. The dashboards on this site can be used for everything from checking measure values to figuring out common causes of Firefox hangs.

The main dashboards on telemetry.mozilla.org consume data from Telemetry's backend using Telemetry.js.

This repository also contains the source code for Telemetry.js. The specific files can be found under the v2/ directory.

Deploying Telemetry Dashboard

The telemetry.mozilla.org site is hosted in Github Pages, so it may also be accessed via mozilla.github.io/telemetry-dashboard. In front of Github Pages, there is also a GCP CDN (managed by DSRE).

Updates to the gh-pages branch (also the default branch) will be reflected on telemetry.mozilla.org after a few moments.

Using Telemetry.js

Check out the documentation!

Adding Telemetry Probes

See this MDN article, which outlines the process and details for adding new Telemetry probes to Firefox which can be used with the dashboards.

For setting histogram properties, make sure to check out the histogram simulator, which might help with designing histograms that fit the expected data well.

Contributing to the Telemetry Dashboard

This project is entirely open source, and licensed under the MPL to boot. Contributions welcome!

Getting started

Looking for some task to get started on? Check the list of mentored issues. If you're unsure what to choose, just get in touch.

Communication happens mostly on Github in the comments for issues or pull requests, but we're also active in IRC in #tmo on irc.mozilla.org.

Working on the dashboard

A local webserver is really helpful for running a version of the site on the same machine you're developing on.

  • This can be done as follows (requires Python):

        cd /PATH_TO_REPOSITORY_ROOT
        python -m http.server
        # now visit localhost:8000 in your browser to see the page
    
  • It can also be done with NPM:

        cd /PATH_TO_REPOSITORY_ROOT
        npm install http-server -g
        # now visit localhost:8080 in your browser to see the page
    

Shortlink buttons (in the top right hand corner of the main dashboards) will not work when running the site on local servers. This is because they are shortened with bit.ly, which doesn't allow local links.

Submitting pull requests for the dashboard

For pull requests, it is recommended that you set up a live site hosting your branch. This makes it a lot easier for reviewers to check out the changes.

GitHub Pages is great for this, you can enable this in your forked repository under "Settings", "Github pages" and then share the link in your pull requests comments. The Github help pages have more information.

If you need more than one test site up at a time, try Divshot, a static website hosting service.

Working on Telemetry.js

Telemetry.js (both versions) is pretty straightforward to work on. However, note that sites that use Telemetry.js generally hotlink to the source files - make sure to preserve API backwards compatibility wherever possible.