FHR/Telemetry unification plan from Jan 28th meetin
Vladan Djeric
vdjeric at mozilla.com
Wed Jan 28 14:07:15 PST 2015
Meeting attendees: Vladan Djeric, Benjamin Smedberg, Georg Fritzsche, Mark
Reid, Roberto Vitillo, Brendan Colloran, Alessio Placitelli
- Benjamin explained that the primary motivation behind unified pings is
reducing latency of FHR submissions on release and beta channels, as well
as eliminating existing data quality issues
- We're still targeting Nightly 38 (uplift February 22) for merging FHR
and Telemetry
- We decided, as a temporary compromise, that Firefox will maintain two
sets of Telemetry/FHR measurements during a session:
- *One set* represents all the measurements gathered during the session
(current Telemetry behavior). Only one such ping will be sent per session
(no more idle-daily ping)
- This session ping will be in the new, unified ping format
- *Second set* of measurements is reset whenever a new ping is
created because a midnight boundary is crossed (local time) or
because the
environment has changed
- These are the new sub-session pings
- On the server there will be a stitching job that runs every
morning and generates sessions & days from the subsession pings
- The session pings are a temporary transition approach to prevent
Mozilla losing the ability to do Telemetry analyses on the Nightly channel
while the backend session-stitching code is being written and tested
- Adapting about:telemetry is easy with the chosen approach. It will be
messy when we exclusively have subsession pings
- Note: session-stitching will be very tricky for some types of
measurements, e.g. UITelemetry
- We discussed recreating session pings on the client by doing
client-side session stitching instead, but decided keeping two sets of
measurements is simpler and the memory overhead on Nightly
is probably acceptable
- The Telemetry dashboard can easily be re-implemented using sub-session
pings
- Per-session measurements should not be reset when a new sub-session
ping is created. The per-session measurements should *only* be
reported in the last ping of the session
- Most other Perf-team Telemetry dashboards can be fed from
sub-session pings
- We can maintain the current dashboard fed from session-pings for
the time being
- Mark explained the plans for the unified Telemetry/FHR server:
- For Nightly & Aurora channels (low data volume), the server will
store submissions from each client (clientID) in a separate file
- This should make it straightforward to find all the subsessions
belonging to the same session or to re-construct measurements
by calendar
day
- On Beta & Release, there are two options:
1. Pick 1% of all users and store their pings per-ClientID, do the
same for Experiments participants
2. Track the storage locations of all pings on beta/release in a
database and make it easy to get a list of locations by clientID
Todos:
- *Vladan: *Estimate memory overhead of maintaining 2 sets of
measurements in Telemetry
- See my other message from today
- *Mark Reid:* provide timeline for the by-ClientID server API
- *Vladan and Georg:* figure out details of implementing the session
ping (e.g. how to deal with mid-session environment changes in the session
ping)
- Open questions: how to deal with missing session fragments, session
stitching rules by data type, FHR stitching rules, owners for the session
and fhr-stitching rules/code
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/fhr-dev/attachments/20150128/bc25dc91/attachment.html>
More information about the fhr-dev
mailing list