decord/source/7558_BrowserMetricsAggregator.js
2026-08-08 06:10:11 +00:00

107 lines
3.5 KiB
JavaScript

// Module ID: 7558
// Function ID: 7559
// Name: BrowserMetricsAggregator
// Dependencies: [41, 42, 7551, 7468, 7555, 7556, 7459, 7557]
// Module 7558 (BrowserMetricsAggregator)
import _classCallCheck from "_classCallCheck";
import _createClass from "_createClass";
const BrowserMetricsAggregator = require;
class BrowserMetricsAggregator {
constructor(arg0) {
self = this;
tmp = outer1_2(this, self);
this._client = global;
map = new Map();
this._buckets = map;
this._interval = setInterval(() => self.flush(), require("module_7551").DEFAULT_BROWSER_FLUSH_INTERVAL);
return;
}
}
const items = [
{
key: "add",
value: function add(arg0, arg1, diff) {
let str = arg3;
if (arg3 === undefined) {
str = "none";
}
let obj = arg4;
if (arg4 === undefined) {
obj = {};
}
let timestampInSecondsResult = arg5;
if (arg5 === undefined) {
timestampInSecondsResult = BrowserMetricsAggregator(7468).timestampInSeconds();
const obj2 = BrowserMetricsAggregator(7468);
}
const rounded = Math.floor(timestampInSecondsResult);
const sanitizeMetricKeyResult = BrowserMetricsAggregator(7555).sanitizeMetricKey(arg1);
const obj3 = BrowserMetricsAggregator(7555);
const sanitizeTagsResult = BrowserMetricsAggregator(7555).sanitizeTags(obj);
const obj4 = BrowserMetricsAggregator(7555);
const sanitizeUnitResult = BrowserMetricsAggregator(7555).sanitizeUnit(str);
const obj5 = BrowserMetricsAggregator(7555);
const bucketKey = BrowserMetricsAggregator(7555).getBucketKey(arg0, sanitizeMetricKeyResult, sanitizeUnitResult, sanitizeTagsResult);
const _buckets = this._buckets;
const value = _buckets.get(bucketKey);
let num = 0;
if (value) {
num = 0;
if (arg0 === tmp5(7551).SET_METRIC_TYPE) {
num = value.metric.weight;
}
}
if (value) {
const metric = value.metric;
metric.add(diff);
obj = value;
if (value.timestamp < rounded) {
value.timestamp = rounded;
obj = value;
}
} else {
obj = { metric: null, timestamp: null, metricType: null, name: null, unit: null, tags: null };
const tmp16 = new tmp5(7556).METRIC_MAP[arg0](diff);
obj[0] = tmp16;
obj[1] = rounded;
obj[2] = arg0;
obj[3] = sanitizeMetricKeyResult;
obj[4] = sanitizeUnitResult;
obj[5] = sanitizeTagsResult;
const _buckets2 = this._buckets;
const result = _buckets2.set(bucketKey, obj);
}
if (typeof diff === "string") {
diff = obj.metric.weight - num;
}
const obj6 = BrowserMetricsAggregator(7555);
const result1 = BrowserMetricsAggregator(7459).updateMetricSummaryOnActiveSpan(arg0, sanitizeMetricKeyResult, diff, sanitizeUnitResult, obj, bucketKey);
}
},
{
key: "flush",
value: function flush() {
const self = this;
if (0 !== this._buckets.size) {
const _Array = Array;
const _buckets = self._buckets;
const arr = Array.from(_buckets.values());
const result = BrowserMetricsAggregator(7557).captureAggregateMetrics(self._client, arr);
const _buckets2 = self._buckets;
_buckets2.clear();
const obj = BrowserMetricsAggregator(7557);
}
}
},
{
key: "close",
value: function close() {
clearInterval(this._interval);
this.flush();
}
}
];
export const BrowserMetricsAggregator = _createClass(BrowserMetricsAggregator, items);