155 lines
5 KiB
JavaScript
155 lines
5 KiB
JavaScript
// Module ID: 6407
|
|
// Function ID: 57603
|
|
// Name: getMetricsAggregatorForClient
|
|
// Dependencies: [6307, 6310, 6312, 6338, 6316, 6339, 6311, 6408, 6325, 6345, 6346]
|
|
|
|
// Module 6407 (getMetricsAggregatorForClient)
|
|
import "errorCallback";
|
|
import module_6310 from "module_6310";
|
|
|
|
function getMetricsAggregatorForClient(on) {
|
|
const globalSingleton = require(6312) /* getGlobalSingleton */.getGlobalSingleton("globalMetricsAggregators", () => {
|
|
const weakMap = new WeakMap();
|
|
return weakMap;
|
|
});
|
|
const value = globalSingleton.get(on);
|
|
if (value) {
|
|
return value;
|
|
} else {
|
|
const prototype = arg1.prototype;
|
|
const tmp5 = new arg1(on);
|
|
require = tmp5;
|
|
on.on("flush", () => tmp5.flush());
|
|
on.on("close", () => tmp5.close());
|
|
const result = globalSingleton.set(on, tmp5);
|
|
return tmp5;
|
|
}
|
|
const obj = require(6312) /* getGlobalSingleton */;
|
|
}
|
|
function addToMetricsAggregator(arg0, COUNTER_METRIC_TYPE, arg2, arg3, arg4) {
|
|
let environment;
|
|
let release;
|
|
let tags;
|
|
let timestamp;
|
|
let unit;
|
|
if (arguments.length > 4) {
|
|
if (undefined !== arguments[4]) {
|
|
let obj = arguments[4];
|
|
}
|
|
let client = obj.client;
|
|
if (!client) {
|
|
client = require(6338) /* getCurrentScope */.getClient();
|
|
const obj2 = require(6338) /* getCurrentScope */;
|
|
}
|
|
if (client) {
|
|
const activeSpan = require(6316) /* spanTimeInputToSeconds */.getActiveSpan();
|
|
let rootSpan;
|
|
if (activeSpan) {
|
|
rootSpan = require(6316) /* spanTimeInputToSeconds */.getRootSpan(activeSpan);
|
|
const obj4 = require(6316) /* spanTimeInputToSeconds */;
|
|
}
|
|
let description = rootSpan;
|
|
if (rootSpan) {
|
|
description = require(6316) /* spanTimeInputToSeconds */.spanToJSON(rootSpan).description;
|
|
const obj5 = require(6316) /* spanTimeInputToSeconds */;
|
|
}
|
|
({ unit, timestamp, tags } = obj);
|
|
const options = client.getOptions();
|
|
({ release, environment } = options);
|
|
obj = {};
|
|
if (release) {
|
|
obj.release = release;
|
|
}
|
|
if (environment) {
|
|
obj.environment = environment;
|
|
}
|
|
if (description) {
|
|
obj.transaction = description;
|
|
}
|
|
if (require(6339).DEBUG_BUILD) {
|
|
const logger = require(6311) /* consoleSandbox */.logger;
|
|
const _HermesInternal = HermesInternal;
|
|
logger.log("Adding value of " + arg3 + " to " + COUNTER_METRIC_TYPE + " metric " + arg2);
|
|
}
|
|
const obj7 = getMetricsAggregatorForClient(client, arg0);
|
|
const _Object = Object;
|
|
obj7.add(COUNTER_METRIC_TYPE, arg2, arg3, unit, Object.assign({}, obj, tags), timestamp);
|
|
const obj3 = require(6316) /* spanTimeInputToSeconds */;
|
|
}
|
|
}
|
|
obj = {};
|
|
}
|
|
function distribution(arg0, arg1, replaced) {
|
|
addToMetricsAggregator(arg0, require(6408).DISTRIBUTION_METRIC_TYPE, arg1, ensureNumber(replaced), arg3);
|
|
}
|
|
function ensureNumber(replaced) {
|
|
let parsed = replaced;
|
|
if ("string" === typeof replaced) {
|
|
const _parseInt = parseInt;
|
|
parsed = parseInt(replaced);
|
|
}
|
|
return parsed;
|
|
}
|
|
|
|
export const metrics = {
|
|
increment(arg0, arg1) {
|
|
let num = 1;
|
|
if (arguments.length > 2) {
|
|
num = 1;
|
|
if (undefined !== arguments[2]) {
|
|
num = arguments[2];
|
|
}
|
|
}
|
|
let tmp;
|
|
if (arguments.length > 3) {
|
|
tmp = arguments[3];
|
|
}
|
|
addToMetricsAggregator(arg0, require(6408).COUNTER_METRIC_TYPE, arg1, ensureNumber(num), tmp);
|
|
},
|
|
distribution,
|
|
set(arg0, arg1, arg2, arg3) {
|
|
addToMetricsAggregator(arg0, require(6408).SET_METRIC_TYPE, arg1, arg2, arg3);
|
|
},
|
|
gauge(arg0, arg1, replaced) {
|
|
addToMetricsAggregator(arg0, require(6408).GAUGE_METRIC_TYPE, arg1, ensureNumber(replaced), arg3);
|
|
},
|
|
timing(arg0, name) {
|
|
const _require = arg0;
|
|
const dependencyMap = name;
|
|
let closure_2 = arg2;
|
|
let str = "second";
|
|
if (arguments.length > 3) {
|
|
str = "second";
|
|
if (undefined !== arguments[3]) {
|
|
str = arguments[3];
|
|
}
|
|
}
|
|
let tmp;
|
|
if (arguments.length > 4) {
|
|
tmp = arguments[4];
|
|
}
|
|
const addToMetricsAggregator = tmp;
|
|
if ("function" === typeof arg2) {
|
|
let timestampInSecondsResult = _require(6325).timestampInSeconds();
|
|
const distribution = timestampInSecondsResult;
|
|
const obj2 = _require(6325);
|
|
let obj = { op: "metrics.timing", name, startTime: timestampInSecondsResult, onlyIfParent: true };
|
|
return _require(6345).startSpanManual(obj, (arg0) => {
|
|
const callback = arg0;
|
|
return callback(name[10]).handleCallbackErrors(() => outer1_2(), () => {
|
|
|
|
}, () => {
|
|
const timestampInSecondsResult = lib(table[8]).timestampInSeconds();
|
|
const diff = timestampInSecondsResult - outer1_4;
|
|
timestampInSecondsResult(lib, outer1_1, diff, Object.assign({}, outer1_3, { unit: "second" }));
|
|
lib.end(timestampInSecondsResult);
|
|
});
|
|
});
|
|
} else {
|
|
const _Object = Object;
|
|
obj = { unit: str };
|
|
distribution(arg0, name, arg2, Object.assign({}, tmp, obj));
|
|
}
|
|
},
|
|
getMetricsAggregatorForClient
|
|
};
|