mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-10 03:45:46 +00:00
Bug 830922 - Include version inside measurement payload. r=gps
This commit is contained in:
parent
c4754f0695
commit
07b6d16e13
@ -627,10 +627,12 @@ HealthReporter.prototype = Object.freeze({
|
||||
};
|
||||
|
||||
for (let [measurementKey, measurement] of provider.measurements) {
|
||||
let name = providerName + "." + measurement.name + "." + measurement.version;
|
||||
let name = providerName + "." + measurement.name;
|
||||
|
||||
let serializer;
|
||||
try {
|
||||
// The measurement is responsible for returning a serializer which
|
||||
// is aware of the measurement version.
|
||||
serializer = measurement.serializer(measurement.SERIALIZE_JSON);
|
||||
} catch (ex) {
|
||||
this._log.warn("Error obtaining serializer for measurement: " + name +
|
||||
|
@ -394,7 +394,7 @@ CurrentSessionMeasurement.prototype = Object.freeze({
|
||||
},
|
||||
|
||||
_serializeJSONSingular: function (data) {
|
||||
let result = {};
|
||||
let result = {"_v": this.version};
|
||||
|
||||
for (let [field, value] of data) {
|
||||
result[field] = value[1];
|
||||
@ -535,7 +535,9 @@ ActiveAddonsMeasurement.prototype = Object.freeze({
|
||||
}
|
||||
|
||||
// Exceptions are caught in the caller.
|
||||
return JSON.parse(data.get("addons")[1]);
|
||||
let result = JSON.parse(data.get("addons")[1]);
|
||||
result._v = this.version;
|
||||
return result;
|
||||
},
|
||||
});
|
||||
|
||||
|
@ -204,8 +204,10 @@ add_task(function test_json_payload_dummy_provider() {
|
||||
print(payload);
|
||||
let o = JSON.parse(payload);
|
||||
|
||||
let name = "DummyProvider.DummyMeasurement";
|
||||
do_check_eq(Object.keys(o.data.last).length, 1);
|
||||
do_check_true("DummyProvider.DummyMeasurement.1" in o.data.last);
|
||||
do_check_true(name in o.data.last);
|
||||
do_check_eq(o.data.last[name]._v, 1);
|
||||
|
||||
reporter._shutdown();
|
||||
});
|
||||
|
@ -111,9 +111,10 @@ add_task(function test_collect() {
|
||||
let serializer = active.serializer(active.SERIALIZE_JSON);
|
||||
let serialized = serializer.singular(data.singular);
|
||||
do_check_eq(typeof(serialized), "object");
|
||||
do_check_eq(Object.keys(serialized).length, 2);
|
||||
do_check_eq(Object.keys(serialized).length, 3); // Our two keys, plus _v.
|
||||
do_check_true("addon0" in serialized);
|
||||
do_check_true("addon1" in serialized);
|
||||
do_check_eq(serialized._v, 1);
|
||||
|
||||
let counts = provider.getMeasurement("counts", 1);
|
||||
data = yield counts.getValues();
|
||||
|
@ -34,6 +34,7 @@ add_task(function test_collect_smoketest() {
|
||||
let serializer = m.serializer(m.SERIALIZE_JSON);
|
||||
let d = serializer.singular(data.singular);
|
||||
|
||||
do_check_eq(d._v, 1);
|
||||
do_check_eq(d.vendor, "Mozilla");
|
||||
do_check_eq(d.name, "xpcshell");
|
||||
do_check_eq(d.id, "xpcshell@tests.mozilla.org");
|
||||
|
@ -170,6 +170,7 @@ add_task(function test_serialization() {
|
||||
let serializer = current.serializer(current.SERIALIZE_JSON);
|
||||
let fields = serializer.singular(data.singular);
|
||||
|
||||
do_check_eq(fields._v, 2);
|
||||
do_check_eq(fields.activeTicks, 0);
|
||||
do_check_eq(fields.startDay, Metrics.dateToDays(recorder.startDate));
|
||||
do_check_eq(fields.main, 500);
|
||||
|
@ -32,6 +32,7 @@ add_task(function test_collect_smoketest() {
|
||||
let serializer = m.serializer(m.SERIALIZE_JSON);
|
||||
let d = serializer.singular(data.singular);
|
||||
|
||||
do_check_eq(d._v, 1);
|
||||
do_check_true(d.cpuCount > 0);
|
||||
do_check_neq(d.name, null);
|
||||
|
||||
|
@ -246,7 +246,7 @@ Measurement.prototype = Object.freeze({
|
||||
},
|
||||
|
||||
_serializeJSONSingular: function (data) {
|
||||
let result = {};
|
||||
let result = {"_v": this.version};
|
||||
|
||||
for (let [field, data] of data) {
|
||||
// There could be legacy fields in storage we no longer care about.
|
||||
@ -278,7 +278,7 @@ Measurement.prototype = Object.freeze({
|
||||
},
|
||||
|
||||
_serializeJSONDay: function (data) {
|
||||
let result = {};
|
||||
let result = {"_v": this.version};
|
||||
|
||||
for (let [field, data] of data) {
|
||||
if (!this._fieldsByName.has(field)) {
|
||||
|
@ -256,15 +256,17 @@ add_task(function test_serialize_json_default() {
|
||||
let serializer = m.serializer(m.SERIALIZE_JSON);
|
||||
let formatted = serializer.singular(data.singular);
|
||||
|
||||
do_check_eq(Object.keys(formatted).length, 2);
|
||||
do_check_eq(Object.keys(formatted).length, 3); // Our keys + _v.
|
||||
do_check_true("last-numeric" in formatted);
|
||||
do_check_true("last-text" in formatted);
|
||||
do_check_eq(formatted["last-numeric"], 6);
|
||||
do_check_eq(formatted["last-text"], "hello");
|
||||
do_check_eq(formatted["_v"], 1);
|
||||
|
||||
formatted = serializer.daily(data.days.getDay(now));
|
||||
do_check_eq(Object.keys(formatted).length, 5);
|
||||
do_check_eq(Object.keys(formatted).length, 6); // Our keys + _v.
|
||||
do_check_eq(formatted["daily-counter"], 2);
|
||||
do_check_eq(formatted["_v"], 1);
|
||||
|
||||
do_check_true(Array.isArray(formatted["daily-discrete-numeric"]));
|
||||
do_check_eq(formatted["daily-discrete-numeric"].length, 2);
|
||||
|
Loading…
Reference in New Issue
Block a user