Closed Bug 1131040 Opened 10 years ago Closed 9 years ago

Add Telemetry probe for Telemetry session payload size

Categories

(Toolkit :: Telemetry, defect)

defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: gfritzsche, Unassigned, Mentored)

References

Details

(Whiteboard: [lang=js] [good next bug])

mreid suggested adding a Telemetry probe to track session payload sizes.
While it wouldnt be much work to track the serialized ping size (say keyed histogram per ping type), i wonder if we wouldn't be better off to track this server-side?
I was going to say the same thing.
We already track the payload size on the server, but currently only broken down by update channel. Adding it as a histogram would allow you to break it down by all the other dimensions on telemetry.m.o (most notably by buildid)
Couldn't you just inject in on the server though? What is the specific use collecting it on the client?
The advantage to collecting it as a histogram on the client is that it appears on telemetry.mozilla.org for free, so you can compare the aggregate distribution by all the dimensions available there. It would also trigger regression alerts (via "medusa") if the distribution changes significantly. These can both be done on the server side, but it seems easier to use existing functionality.
Ok, good points. Is a keyed histogram of (pingType -> pingSize) ok or do we want the session payload size specifically?
Keyed histograms don't have any of the above benefits (at least not yet), so I would prefer measuring the main ping.
Mentor: gfritzsche
OS: Mac OS X → All
Hardware: x86 → All
Assignee: nobody → qeole
Status: NEW → ASSIGNED
Hmm, I'm quite busy for now actually. I may take this bug again later if no one has worked on it in between.
Assignee: qeole → nobody
Status: ASSIGNED → NEW
Whiteboard: [lang=js] [good next bug]
Hey can I work on this? What needs to be done here?
Flags: needinfo?(gfritzsche)
Looking at this again i'm not so sure that this is best done client-side. mreid, can't we look at this in kibana or something? and don't we need monitoring for server-side metrics anyway? Submitting extra data when we already have it on the server seems off. If we wanted to do this: We do already track the ping sizes for pings that we removed from disk (TELEMETRY_DISCARDED_SEND_PINGS_SIZE_MB, TELEMETRY_PING_SIZE_EXCEEDED_PENDING). We can only usefully measure payload sizes after we serialized this, which is not a super-cheap operation. So, the best single location to measure this would be after we already serialized the ping for sending (http://mzl.la/1URZrSn) and only the full ping size, not just the payload size. Given that we now have keyed histogram support in the dashboard, we could make it keyed (pingType -> pingSize).
Flags: needinfo?(gfritzsche) → needinfo?(mreid)
I am content to WONTFIX this bug for now - I am actively working on monitors and reporting for payload size on the server (Bug 1171628), and if it is an expensive operation on the client it is probably not worth the impact.
Flags: needinfo?(mreid)
Thanks, closing then.
Status: NEW → RESOLVED
Closed: 9 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.