in glean/src/core/metrics/types/timing_distribution.ts [263:283]
accumulateRawSamplesNanos(samples: number[]) {
if (!this.shouldRecord(Context.uploadEnabled)) {
return;
}
const maxSampleTime = convertTimeUnitToNanos(MAX_SAMPLE_TIME, this.timeUnit as TimeUnit);
Context.metricsDatabase.transform(
this,
this.accumulateRawSamplesNanosTransformFn(samples, maxSampleTime)
);
const numTooLongSamples = getNumTooLongSamples(samples, maxSampleTime);
if (numTooLongSamples > 0) {
Context.errorManager.record(
this,
ErrorType.InvalidOverflow,
`${numTooLongSamples} samples are longer than the maximum of ${maxSampleTime}`,
numTooLongSamples
);
}
}