зеркало из https://github.com/mozilla/gecko-dev.git
Bug 711195 - Perform the range checks for non-boolean telemetry pings at compile time; r=taras
This commit is contained in:
Родитель
90498fe0fa
Коммит
581a72d7fb
|
@ -111,6 +111,17 @@ struct TelemetryHistogram {
|
||||||
PRUint32 histogramType;
|
PRUint32 histogramType;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
// Perform the checks at the beginning of HistogramGet at compile time, so
|
||||||
|
// that if people add incorrect histogram definitions, they get compiler
|
||||||
|
// errors.
|
||||||
|
#define HISTOGRAM(id, min, max, bucket_count, histogram_type, b) \
|
||||||
|
PR_STATIC_ASSERT(nsITelemetry::HISTOGRAM_ ## histogram_type == nsITelemetry::HISTOGRAM_BOOLEAN || \
|
||||||
|
(min < max && bucket_count > 2 && min >= 1));
|
||||||
|
|
||||||
|
#include "TelemetryHistograms.h"
|
||||||
|
|
||||||
|
#undef HISTOGRAM
|
||||||
|
|
||||||
const TelemetryHistogram gHistograms[] = {
|
const TelemetryHistogram gHistograms[] = {
|
||||||
#define HISTOGRAM(id, min, max, bucket_count, histogram_type, b) \
|
#define HISTOGRAM(id, min, max, bucket_count, histogram_type, b) \
|
||||||
{ NULL, NS_STRINGIFY(id), min, max, bucket_count, nsITelemetry::HISTOGRAM_ ## histogram_type },
|
{ NULL, NS_STRINGIFY(id), min, max, bucket_count, nsITelemetry::HISTOGRAM_ ## histogram_type },
|
||||||
|
|
|
@ -70,7 +70,7 @@ HISTOGRAM(CYCLE_COLLECTOR_COLLECTED, 1, 100000, 50, EXPONENTIAL, "Number of obje
|
||||||
/**
|
/**
|
||||||
* GC telemetry
|
* GC telemetry
|
||||||
*/
|
*/
|
||||||
HISTOGRAM(GC_REASON, 0, 20, 20, LINEAR, "Reason (enum value) for initiating a GC")
|
HISTOGRAM(GC_REASON, 1, 20, 20, LINEAR, "Reason (enum value) for initiating a GC")
|
||||||
HISTOGRAM_BOOLEAN(GC_IS_COMPARTMENTAL, "Is it a compartmental GC?")
|
HISTOGRAM_BOOLEAN(GC_IS_COMPARTMENTAL, "Is it a compartmental GC?")
|
||||||
HISTOGRAM_BOOLEAN(GC_IS_SHAPE_REGEN, "Is it a shape regenerating GC?")
|
HISTOGRAM_BOOLEAN(GC_IS_SHAPE_REGEN, "Is it a shape regenerating GC?")
|
||||||
HISTOGRAM(GC_MS, 1, 10000, 50, EXPONENTIAL, "Time spent running JS GC (ms)")
|
HISTOGRAM(GC_MS, 1, 10000, 50, EXPONENTIAL, "Time spent running JS GC (ms)")
|
||||||
|
@ -273,7 +273,7 @@ HISTOGRAM(PLACES_AUTOCOMPLETE_1ST_RESULT_TIME_MS, 50, 500, 10, EXPONENTIAL, "PLA
|
||||||
/**
|
/**
|
||||||
* Updater telemetry.
|
* Updater telemetry.
|
||||||
*/
|
*/
|
||||||
HISTOGRAM(UPDATE_STATUS, 0, 16004, 18, LINEAR, "Updater: the status of the latest update performed")
|
HISTOGRAM(UPDATE_STATUS, 1, 16004, 18, LINEAR, "Updater: the status of the latest update performed")
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Thunderbird-specific telemetry.
|
* Thunderbird-specific telemetry.
|
||||||
|
|
Загрузка…
Ссылка в новой задаче