mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-27 04:38:02 +00:00
bug 1470493 - Render "event" ping events in about:telemetry r=janerik
MozReview-Commit-ID: 8U54Cs6obOs Differential Revision: https://phabricator.services.mozilla.com/D1882 --HG-- extra : moz-landing-system : lando
This commit is contained in:
parent
f53f58d169
commit
9c9f1dff7c
@ -379,10 +379,19 @@ var PingPicker = {
|
||||
|
||||
_updateCurrentPingData() {
|
||||
const subsession = document.getElementById("show-subsession-data").checked;
|
||||
const ping = TelemetryController.getCurrentPingData(subsession);
|
||||
let ping = TelemetryController.getCurrentPingData(subsession);
|
||||
if (!ping) {
|
||||
return;
|
||||
}
|
||||
|
||||
// augment ping payload with event telemetry
|
||||
let eventSnapshot = Telemetry.snapshotEvents(Telemetry.DATASET_RELEASE_CHANNEL_OPTIN, false);
|
||||
for (let process of Object.keys(eventSnapshot)) {
|
||||
if (process in ping.payload.processes) {
|
||||
ping.payload.processes[process].events = eventSnapshot[process].filter(e => !e[1].startsWith("telemetry.test"));
|
||||
}
|
||||
}
|
||||
|
||||
displayPingData(ping, true);
|
||||
},
|
||||
|
||||
@ -1708,6 +1717,47 @@ var KeyedScalars = {
|
||||
},
|
||||
};
|
||||
|
||||
var Events = {
|
||||
/**
|
||||
* Render the event data - if present - from the payload in a simple table.
|
||||
* @param aPayload A payload object to render the data from.
|
||||
*/
|
||||
render(aPayload) {
|
||||
let eventsSection = document.getElementById("events");
|
||||
removeAllChildNodes(eventsSection);
|
||||
|
||||
let processesSelect = document.getElementById("processes");
|
||||
let selectedProcess = processesSelect.selectedOptions.item(0).getAttribute("value");
|
||||
|
||||
if (!aPayload.processes ||
|
||||
!selectedProcess ||
|
||||
!(selectedProcess in aPayload.processes)) {
|
||||
return;
|
||||
}
|
||||
|
||||
let events = aPayload.processes[selectedProcess].events || {};
|
||||
let hasData = Array.from(processesSelect.options).some((option) => {
|
||||
let value = option.getAttribute("value");
|
||||
let evts = aPayload.processes[value].events;
|
||||
return evts && Object.keys(evts).length > 0;
|
||||
});
|
||||
setHasData("events-section", hasData);
|
||||
if (Object.keys(events).length > 0) {
|
||||
const headings = [
|
||||
"timestampHeader",
|
||||
"categoryHeader",
|
||||
"methodHeader",
|
||||
"objectHeader",
|
||||
"valuesHeader",
|
||||
"extraHeader",
|
||||
].map(h => bundle.GetStringFromName(h));
|
||||
|
||||
const table = GenericTable.render(events, headings);
|
||||
eventsSection.appendChild(table);
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
/**
|
||||
* Helper function for showing either the toggle element or "No data collected" message for a section
|
||||
*
|
||||
@ -2306,6 +2356,9 @@ function displayRichPingData(ping, updatePayloadList) {
|
||||
// Show keyed histogram data
|
||||
KeyedHistogramSection.render(payload);
|
||||
|
||||
// Show event data.
|
||||
Events.render(payload);
|
||||
|
||||
// Show captured stacks.
|
||||
CapturedStacks.render(payload);
|
||||
|
||||
|
@ -57,6 +57,9 @@
|
||||
<div class="category" value="keyed-histograms-section">
|
||||
<span class="category-name">&aboutTelemetry.keyedHistogramsSection;</span>
|
||||
</div>
|
||||
<div class="category" value="events-section">
|
||||
<span class="category-name">&aboutTelemetry.eventsSection;</span>
|
||||
</div>
|
||||
<div class="category" value="simple-measurements-section">
|
||||
<span class="category-name">&aboutTelemetry.simpleMeasurementsSection;</span>
|
||||
</div>
|
||||
|
@ -34,6 +34,7 @@
|
||||
<!ENTITY aboutTelemetry.keyedScalarsSection "Keyed Scalars">
|
||||
<!ENTITY aboutTelemetry.histogramsSection "Histograms">
|
||||
<!ENTITY aboutTelemetry.keyedHistogramsSection "Keyed Histograms">
|
||||
<!ENTITY aboutTelemetry.eventsSection "Events">
|
||||
<!ENTITY aboutTelemetry.simpleMeasurementsSection "Simple Measurements">
|
||||
<!ENTITY aboutTelemetry.slowSqlSection "Slow SQL Statements">
|
||||
<!ENTITY aboutTelemetry.addonDetailsSection "Add-on Details">
|
||||
|
@ -94,3 +94,8 @@ memoryMapTitle = Memory map:
|
||||
|
||||
errorFetchingSymbols = An error occurred while fetching symbols. Check that you are connected to the Internet and try again.
|
||||
|
||||
timestampHeader = timestamp
|
||||
categoryHeader = category
|
||||
methodHeader = method
|
||||
objectHeader = object
|
||||
extraHeader = extra
|
||||
|
Loading…
x
Reference in New Issue
Block a user