t-comm
Version:
专业、稳定、纯粹的工具库
109 lines (106 loc) • 3.44 kB
JavaScript
import { b as __awaiter, c as __generator, _ as __assign } from '../../tslib.es6-096fffdd.js';
import { fetchCloudData } from '../../tencent-cloud/base/base.mjs';
import 'axios';
function getRUMAllProject(_a) {
var secretId = _a.secretId,
secretKey = _a.secretKey;
return __awaiter(this, void 0, void 0, function () {
return __generator(this, function (_b) {
return [2 /*return*/, fetchCloudData({
secretId: secretId,
secretKey: secretKey,
action: 'DescribeProjects',
payload: JSON.stringify({
Limit: 1000,
Offset: 0
})
}).then(function (res) {
var resp = res.data.Response || {};
return {
data: resp.ProjectSet || [],
total: resp.TotalCount || 0
};
})["catch"](function (err) {
console.log('[getRUMAllProject] err: ', err);
})];
});
});
}
function getRUMScoreInfo(_a) {
var secretId = _a.secretId,
secretKey = _a.secretKey,
startTime = _a.startTime,
endTime = _a.endTime;
return __awaiter(this, void 0, void 0, function () {
return __generator(this, function (_b) {
return [2 /*return*/, fetchCloudData({
secretId: secretId,
secretKey: secretKey,
action: 'DescribeScores',
payload: JSON.stringify({
StartTime: startTime,
EndTime: endTime
})
}).then(function (res) {
var resp = res.data.Response || {};
return resp.ScoreSet || [];
})["catch"](function (err) {
console.log('[getRUMScores] err: ', err);
})];
});
});
}
function getRUMScores(_a) {
var secretId = _a.secretId,
secretKey = _a.secretKey,
startTime = _a.startTime,
endTime = _a.endTime;
return __awaiter(this, void 0, void 0, function () {
var scoreList, project, projectMap, score;
return __generator(this, function (_b) {
switch (_b.label) {
case 0:
return [4 /*yield*/, getRUMScoreInfo({
secretId: secretId,
secretKey: secretKey,
startTime: startTime,
endTime: endTime
})];
case 1:
scoreList = _b.sent();
return [4 /*yield*/, getRUMAllProject({
secretId: secretId,
secretKey: secretKey
})];
case 2:
project = _b.sent();
projectMap = project.data.reduce(function (acc, item) {
acc[item.ID] = item;
return acc;
}, {});
score = scoreList.map(function (item) {
var projectInfo = projectMap[item.ProjectID] || {};
return __assign(__assign({}, item), {
PagePv: +item.PagePv,
PageUv: +item.PageUv,
PageDuration: +item.PageDuration,
PageError: +item.PageError,
ApiNum: +item.ApiNum,
ApiFail: +item.ApiFail,
ApiDuration: +item.ApiDuration,
StaticNum: +item.StaticNum,
StaticFail: +item.StaticFail,
StaticDuration: +item.StaticDuration,
Score: +item.Score,
ProjectName: projectInfo.Name,
GroupName: projectInfo.InstanceName || '',
CreateUser: projectInfo.Creator,
ProjectId: item.ProjectID
});
});
return [2 /*return*/, score];
}
});
});
}
export { getRUMAllProject, getRUMScores };