@oneuptime/common 10.0.20 → 10.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Server/API/TelemetryAPI.ts +208 -0
- package/Server/API/UserCallAPI.ts +29 -0
- package/Server/API/UserEmailAPI.ts +29 -0
- package/Server/API/UserSmsAPI.ts +29 -0
- package/Server/API/UserWhatsAppAPI.ts +29 -0
- package/Server/Services/LogAggregationService.ts +251 -0
- package/Server/Utils/VM/VMRunner.ts +10 -0
- package/Types/Log/LogQueryParser.ts +252 -0
- package/Types/Log/LogQueryToFilter.ts +131 -0
- package/UI/Components/CopyTextButton/CopyTextButton.tsx +3 -3
- package/UI/Components/LogsViewer/LogsViewer.tsx +166 -93
- package/UI/Components/LogsViewer/components/ActiveFilterChips.tsx +58 -0
- package/UI/Components/LogsViewer/components/FacetSection.tsx +119 -0
- package/UI/Components/LogsViewer/components/FacetValueRow.tsx +102 -0
- package/UI/Components/LogsViewer/components/HistogramTooltip.tsx +122 -0
- package/UI/Components/LogsViewer/components/LiveLogsToggle.tsx +4 -4
- package/UI/Components/LogsViewer/components/LogDetailsPanel.tsx +22 -26
- package/UI/Components/LogsViewer/components/LogSearchBar.tsx +360 -0
- package/UI/Components/LogsViewer/components/LogSearchHelp.tsx +128 -0
- package/UI/Components/LogsViewer/components/LogSearchSuggestions.tsx +64 -0
- package/UI/Components/LogsViewer/components/LogTimeRangePicker.tsx +199 -0
- package/UI/Components/LogsViewer/components/LogsFacetSidebar.tsx +172 -0
- package/UI/Components/LogsViewer/components/LogsFilterCard.tsx +27 -57
- package/UI/Components/LogsViewer/components/LogsHistogram.tsx +268 -0
- package/UI/Components/LogsViewer/components/LogsPagination.tsx +12 -10
- package/UI/Components/LogsViewer/components/LogsTable.tsx +33 -32
- package/UI/Components/LogsViewer/components/LogsViewerToolbar.tsx +16 -18
- package/UI/Components/LogsViewer/components/severityColors.ts +31 -0
- package/UI/Components/LogsViewer/components/severityTheme.ts +25 -25
- package/UI/Components/LogsViewer/types.ts +20 -0
- package/build/dist/Server/API/TelemetryAPI.js +136 -0
- package/build/dist/Server/API/TelemetryAPI.js.map +1 -1
- package/build/dist/Server/API/UserCallAPI.js +17 -0
- package/build/dist/Server/API/UserCallAPI.js.map +1 -1
- package/build/dist/Server/API/UserEmailAPI.js +17 -0
- package/build/dist/Server/API/UserEmailAPI.js.map +1 -1
- package/build/dist/Server/API/UserSmsAPI.js +17 -0
- package/build/dist/Server/API/UserSmsAPI.js.map +1 -1
- package/build/dist/Server/API/UserWhatsAppAPI.js +17 -0
- package/build/dist/Server/API/UserWhatsAppAPI.js.map +1 -1
- package/build/dist/Server/Services/LogAggregationService.js +163 -0
- package/build/dist/Server/Services/LogAggregationService.js.map +1 -0
- package/build/dist/Server/Utils/VM/VMRunner.js +10 -0
- package/build/dist/Server/Utils/VM/VMRunner.js.map +1 -1
- package/build/dist/Types/Log/LogQueryParser.js +200 -0
- package/build/dist/Types/Log/LogQueryParser.js.map +1 -0
- package/build/dist/Types/Log/LogQueryToFilter.js +96 -0
- package/build/dist/Types/Log/LogQueryToFilter.js.map +1 -0
- package/build/dist/UI/Components/CopyTextButton/CopyTextButton.js +3 -3
- package/build/dist/UI/Components/CopyTextButton/CopyTextButton.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/LogsViewer.js +64 -42
- package/build/dist/UI/Components/LogsViewer/LogsViewer.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/ActiveFilterChips.js +24 -0
- package/build/dist/UI/Components/LogsViewer/components/ActiveFilterChips.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/FacetSection.js +46 -0
- package/build/dist/UI/Components/LogsViewer/components/FacetSection.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/FacetValueRow.js +35 -0
- package/build/dist/UI/Components/LogsViewer/components/FacetValueRow.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/HistogramTooltip.js +64 -0
- package/build/dist/UI/Components/LogsViewer/components/HistogramTooltip.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/LiveLogsToggle.js +4 -4
- package/build/dist/UI/Components/LogsViewer/components/LiveLogsToggle.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogDetailsPanel.js +19 -21
- package/build/dist/UI/Components/LogsViewer/components/LogDetailsPanel.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogSearchBar.js +230 -0
- package/build/dist/UI/Components/LogsViewer/components/LogSearchBar.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/LogSearchHelp.js +84 -0
- package/build/dist/UI/Components/LogsViewer/components/LogSearchHelp.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/LogSearchSuggestions.js +27 -0
- package/build/dist/UI/Components/LogsViewer/components/LogSearchSuggestions.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/LogTimeRangePicker.js +100 -0
- package/build/dist/UI/Components/LogsViewer/components/LogTimeRangePicker.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/LogsFacetSidebar.js +104 -0
- package/build/dist/UI/Components/LogsViewer/components/LogsFacetSidebar.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/LogsFilterCard.js +14 -35
- package/build/dist/UI/Components/LogsViewer/components/LogsFilterCard.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogsHistogram.js +127 -0
- package/build/dist/UI/Components/LogsViewer/components/LogsHistogram.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/LogsPagination.js +9 -9
- package/build/dist/UI/Components/LogsViewer/components/LogsPagination.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogsTable.js +31 -30
- package/build/dist/UI/Components/LogsViewer/components/LogsTable.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/LogsViewerToolbar.js +7 -8
- package/build/dist/UI/Components/LogsViewer/components/LogsViewerToolbar.js.map +1 -1
- package/build/dist/UI/Components/LogsViewer/components/severityColors.js +22 -0
- package/build/dist/UI/Components/LogsViewer/components/severityColors.js.map +1 -0
- package/build/dist/UI/Components/LogsViewer/components/severityTheme.js +25 -25
- package/build/dist/UI/Components/LogsViewer/components/severityTheme.js.map +1 -1
- package/package.json +1 -1
|
@@ -3,3 +3,23 @@ export interface LiveLogsOptions {
|
|
|
3
3
|
onToggle: (next: boolean) => void;
|
|
4
4
|
isDisabled?: boolean;
|
|
5
5
|
}
|
|
6
|
+
|
|
7
|
+
export interface HistogramBucket {
|
|
8
|
+
time: string;
|
|
9
|
+
severity: string;
|
|
10
|
+
count: number;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
export interface FacetValue {
|
|
14
|
+
value: string;
|
|
15
|
+
count: number;
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export type FacetData = Record<string, Array<FacetValue>>;
|
|
19
|
+
|
|
20
|
+
export interface ActiveFilter {
|
|
21
|
+
facetKey: string;
|
|
22
|
+
value: string;
|
|
23
|
+
displayKey: string;
|
|
24
|
+
displayValue: string;
|
|
25
|
+
}
|
|
@@ -5,6 +5,9 @@ import BadDataException from "../../Types/Exception/BadDataException";
|
|
|
5
5
|
import CommonAPI from "./CommonAPI";
|
|
6
6
|
import TelemetryType from "../../Types/Telemetry/TelemetryType";
|
|
7
7
|
import TelemetryAttributeService from "../Services/TelemetryAttributeService";
|
|
8
|
+
import LogAggregationService from "../Services/LogAggregationService";
|
|
9
|
+
import ObjectID from "../../Types/ObjectID";
|
|
10
|
+
import OneUptimeDate from "../../Types/Date";
|
|
8
11
|
const router = Express.getRouter();
|
|
9
12
|
router.post("/telemetry/metrics/get-attributes", UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
10
13
|
return getAttributes(req, res, next, TelemetryType.Metric);
|
|
@@ -36,5 +39,138 @@ const getAttributes = async (req, res, next, telemetryType) => {
|
|
|
36
39
|
next(err);
|
|
37
40
|
}
|
|
38
41
|
};
|
|
42
|
+
// --- Log Histogram Endpoint ---
|
|
43
|
+
router.post("/telemetry/logs/histogram", UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
44
|
+
try {
|
|
45
|
+
const databaseProps = await CommonAPI.getDatabaseCommonInteractionProps(req);
|
|
46
|
+
if (!(databaseProps === null || databaseProps === void 0 ? void 0 : databaseProps.tenantId)) {
|
|
47
|
+
return Response.sendErrorResponse(req, res, new BadDataException("Invalid Project ID"));
|
|
48
|
+
}
|
|
49
|
+
const body = req.body;
|
|
50
|
+
const startTime = body["startTime"]
|
|
51
|
+
? OneUptimeDate.fromString(body["startTime"])
|
|
52
|
+
: OneUptimeDate.addRemoveHours(OneUptimeDate.getCurrentDate(), -1);
|
|
53
|
+
const endTime = body["endTime"]
|
|
54
|
+
? OneUptimeDate.fromString(body["endTime"])
|
|
55
|
+
: OneUptimeDate.getCurrentDate();
|
|
56
|
+
const bucketSizeInMinutes = body["bucketSizeInMinutes"] ||
|
|
57
|
+
computeDefaultBucketSize(startTime, endTime);
|
|
58
|
+
const serviceIds = body["serviceIds"]
|
|
59
|
+
? body["serviceIds"].map((id) => {
|
|
60
|
+
return new ObjectID(id);
|
|
61
|
+
})
|
|
62
|
+
: undefined;
|
|
63
|
+
const severityTexts = body["severityTexts"]
|
|
64
|
+
? body["severityTexts"]
|
|
65
|
+
: undefined;
|
|
66
|
+
const bodySearchText = body["bodySearchText"]
|
|
67
|
+
? body["bodySearchText"]
|
|
68
|
+
: undefined;
|
|
69
|
+
const traceIds = body["traceIds"]
|
|
70
|
+
? body["traceIds"]
|
|
71
|
+
: undefined;
|
|
72
|
+
const spanIds = body["spanIds"]
|
|
73
|
+
? body["spanIds"]
|
|
74
|
+
: undefined;
|
|
75
|
+
const request = {
|
|
76
|
+
projectId: databaseProps.tenantId,
|
|
77
|
+
startTime,
|
|
78
|
+
endTime,
|
|
79
|
+
bucketSizeInMinutes,
|
|
80
|
+
serviceIds,
|
|
81
|
+
severityTexts,
|
|
82
|
+
bodySearchText,
|
|
83
|
+
traceIds,
|
|
84
|
+
spanIds,
|
|
85
|
+
};
|
|
86
|
+
const buckets = await LogAggregationService.getHistogram(request);
|
|
87
|
+
return Response.sendJsonObjectResponse(req, res, {
|
|
88
|
+
buckets: buckets,
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
catch (err) {
|
|
92
|
+
next(err);
|
|
93
|
+
}
|
|
94
|
+
});
|
|
95
|
+
// --- Log Facets Endpoint ---
|
|
96
|
+
router.post("/telemetry/logs/facets", UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
97
|
+
try {
|
|
98
|
+
const databaseProps = await CommonAPI.getDatabaseCommonInteractionProps(req);
|
|
99
|
+
if (!(databaseProps === null || databaseProps === void 0 ? void 0 : databaseProps.tenantId)) {
|
|
100
|
+
return Response.sendErrorResponse(req, res, new BadDataException("Invalid Project ID"));
|
|
101
|
+
}
|
|
102
|
+
const body = req.body;
|
|
103
|
+
const facetKeys = body["facetKeys"]
|
|
104
|
+
? body["facetKeys"]
|
|
105
|
+
: ["severityText", "serviceId"];
|
|
106
|
+
const startTime = body["startTime"]
|
|
107
|
+
? OneUptimeDate.fromString(body["startTime"])
|
|
108
|
+
: OneUptimeDate.addRemoveHours(OneUptimeDate.getCurrentDate(), -1);
|
|
109
|
+
const endTime = body["endTime"]
|
|
110
|
+
? OneUptimeDate.fromString(body["endTime"])
|
|
111
|
+
: OneUptimeDate.getCurrentDate();
|
|
112
|
+
const limit = body["limit"] || 10;
|
|
113
|
+
const serviceIds = body["serviceIds"]
|
|
114
|
+
? body["serviceIds"].map((id) => {
|
|
115
|
+
return new ObjectID(id);
|
|
116
|
+
})
|
|
117
|
+
: undefined;
|
|
118
|
+
const severityTexts = body["severityTexts"]
|
|
119
|
+
? body["severityTexts"]
|
|
120
|
+
: undefined;
|
|
121
|
+
const bodySearchText = body["bodySearchText"]
|
|
122
|
+
? body["bodySearchText"]
|
|
123
|
+
: undefined;
|
|
124
|
+
const traceIds = body["traceIds"]
|
|
125
|
+
? body["traceIds"]
|
|
126
|
+
: undefined;
|
|
127
|
+
const spanIds = body["spanIds"]
|
|
128
|
+
? body["spanIds"]
|
|
129
|
+
: undefined;
|
|
130
|
+
const facets = {};
|
|
131
|
+
for (const facetKey of facetKeys) {
|
|
132
|
+
const request = {
|
|
133
|
+
projectId: databaseProps.tenantId,
|
|
134
|
+
startTime,
|
|
135
|
+
endTime,
|
|
136
|
+
facetKey,
|
|
137
|
+
limit,
|
|
138
|
+
serviceIds,
|
|
139
|
+
severityTexts,
|
|
140
|
+
bodySearchText,
|
|
141
|
+
traceIds,
|
|
142
|
+
spanIds,
|
|
143
|
+
};
|
|
144
|
+
facets[facetKey] = await LogAggregationService.getFacetValues(request);
|
|
145
|
+
}
|
|
146
|
+
return Response.sendJsonObjectResponse(req, res, {
|
|
147
|
+
facets: facets,
|
|
148
|
+
});
|
|
149
|
+
}
|
|
150
|
+
catch (err) {
|
|
151
|
+
next(err);
|
|
152
|
+
}
|
|
153
|
+
});
|
|
154
|
+
// --- Helpers ---
|
|
155
|
+
function computeDefaultBucketSize(startTime, endTime) {
|
|
156
|
+
const diffMs = endTime.getTime() - startTime.getTime();
|
|
157
|
+
const diffMinutes = diffMs / (1000 * 60);
|
|
158
|
+
if (diffMinutes <= 60) {
|
|
159
|
+
return 1;
|
|
160
|
+
}
|
|
161
|
+
if (diffMinutes <= 360) {
|
|
162
|
+
return 5;
|
|
163
|
+
}
|
|
164
|
+
if (diffMinutes <= 1440) {
|
|
165
|
+
return 15;
|
|
166
|
+
}
|
|
167
|
+
if (diffMinutes <= 10080) {
|
|
168
|
+
return 60;
|
|
169
|
+
}
|
|
170
|
+
if (diffMinutes <= 43200) {
|
|
171
|
+
return 360;
|
|
172
|
+
}
|
|
173
|
+
return 1440;
|
|
174
|
+
}
|
|
39
175
|
export default router;
|
|
40
176
|
//# sourceMappingURL=TelemetryAPI.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TelemetryAPI.js","sourceRoot":"","sources":["../../../../Server/API/TelemetryAPI.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,OAKN,MAAM,kBAAkB,CAAC;AAC1B,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AACzC,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AACtE,OAAO,SAAS,MAAM,aAAa,CAAC;AAEpC,OAAO,aAAa,MAAM,qCAAqC,CAAC;AAChE,OAAO,yBAAyB,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"TelemetryAPI.js","sourceRoot":"","sources":["../../../../Server/API/TelemetryAPI.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,11 +72,28 @@ export default class UserCallAPI extends BaseAPI {
|
|
|
72
72
|
}
|
|
73
73
|
});
|
|
74
74
|
this.router.post(`/user-call/resend-verification-code`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
75
|
+
var _a, _b, _c;
|
|
75
76
|
try {
|
|
76
77
|
req = req;
|
|
77
78
|
if (!req.body.itemId) {
|
|
78
79
|
return Response.sendErrorResponse(req, res, new BadDataException("Invalid item ID"));
|
|
79
80
|
}
|
|
81
|
+
const item = await this.service.findOneById({
|
|
82
|
+
id: req.body["itemId"],
|
|
83
|
+
props: {
|
|
84
|
+
isRoot: true,
|
|
85
|
+
},
|
|
86
|
+
select: {
|
|
87
|
+
userId: true,
|
|
88
|
+
},
|
|
89
|
+
});
|
|
90
|
+
if (!item) {
|
|
91
|
+
return Response.sendErrorResponse(req, res, new BadDataException("Item not found"));
|
|
92
|
+
}
|
|
93
|
+
if (((_a = item.userId) === null || _a === void 0 ? void 0 : _a.toString()) !==
|
|
94
|
+
((_c = (_b = req === null || req === void 0 ? void 0 : req.userAuthorization) === null || _b === void 0 ? void 0 : _b.userId) === null || _c === void 0 ? void 0 : _c.toString())) {
|
|
95
|
+
return Response.sendErrorResponse(req, res, new BadDataException("Invalid user ID"));
|
|
96
|
+
}
|
|
80
97
|
await this.service.resendVerificationCode(req.body.itemId);
|
|
81
98
|
return Response.sendEmptySuccessResponse(req, res);
|
|
82
99
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserCallAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserCallAPI.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"UserCallAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserCallAPI.ts"],"names":[],"mappings":"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"}
|
|
@@ -74,11 +74,28 @@ export default class UserEmailAPI extends BaseAPI {
|
|
|
74
74
|
});
|
|
75
75
|
this.router.post(`${(_b = new this.entityType()
|
|
76
76
|
.getCrudApiPath()) === null || _b === void 0 ? void 0 : _b.toString()}/resend-verification-code`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
77
|
+
var _a, _b, _c;
|
|
77
78
|
try {
|
|
78
79
|
req = req;
|
|
79
80
|
if (!req.body.itemId) {
|
|
80
81
|
return Response.sendErrorResponse(req, res, new BadDataException("Invalid item ID"));
|
|
81
82
|
}
|
|
83
|
+
const item = await this.service.findOneById({
|
|
84
|
+
id: req.body["itemId"],
|
|
85
|
+
props: {
|
|
86
|
+
isRoot: true,
|
|
87
|
+
},
|
|
88
|
+
select: {
|
|
89
|
+
userId: true,
|
|
90
|
+
},
|
|
91
|
+
});
|
|
92
|
+
if (!item) {
|
|
93
|
+
return Response.sendErrorResponse(req, res, new BadDataException("Item not found"));
|
|
94
|
+
}
|
|
95
|
+
if (((_a = item.userId) === null || _a === void 0 ? void 0 : _a.toString()) !==
|
|
96
|
+
((_c = (_b = req === null || req === void 0 ? void 0 : req.userAuthorization) === null || _b === void 0 ? void 0 : _b.userId) === null || _c === void 0 ? void 0 : _c.toString())) {
|
|
97
|
+
return Response.sendErrorResponse(req, res, new BadDataException("Invalid user ID"));
|
|
98
|
+
}
|
|
82
99
|
await this.service.resendVerificationCode(req.body.itemId);
|
|
83
100
|
return Response.sendEmptySuccessResponse(req, res);
|
|
84
101
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserEmailAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserEmailAPI.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"UserEmailAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserEmailAPI.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,MAAM,iCAAiC,CAAC;AAC7D,OAAO,gBAEN,MAAM,8BAA8B,CAAC;AACtC,OAAO,2BAA2B,MAAM,yCAAyC,CAAC;AAOlF,OAAO,QAAQ,MAAM,mBAAmB,CAAC;AACzC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,gBAAgB,MAAM,wCAAwC,CAAC;AACtE,OAAO,QAAQ,MAAM,sBAAsB,CAAC;AAC5C,OAAO,SAAS,MAAM,uCAAuC,CAAC;AAE9D,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,OAGzC;IACC;;QACE,KAAK,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC;QAEnC,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,MAAA,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC,cAAc,EAAE,0CAAE,QAAQ,EAAE,SAAS,EAC9D,cAAc,CAAC,iBAAiB,EAChC,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,IAAkB,EAAE,EAAE;;YACtE,IAAI,CAAC;gBACH,GAAG,GAAG,GAAuB,CAAC;gBAE9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACrB,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,CACxC,CAAC;gBACJ,CAAC;gBAED,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBACnB,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,gBAAgB,CAAC,cAAc,CAAC,CACrC,CAAC;gBACJ,CAAC;gBAED,kDAAkD;gBAClD,MAAM,IAAI,GAAqB,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;oBAC5D,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACtB,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;oBACD,MAAM,EAAE;wBACN,MAAM,EAAE,IAAI;wBACZ,SAAS,EAAE,IAAI;wBACf,gBAAgB,EAAE,IAAI;qBACvB;iBACF,CAAC,CAAC;gBAEH,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CACvC,CAAC;gBACJ,CAAC;gBAED,eAAe;gBAEf,IACE,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ,EAAE;qBACvB,MAAA,MAAC,GAAwB,aAAxB,GAAG,uBAAH,GAAG,CAAuB,iBAAiB,0CAAE,MAAM,0CAAE,QAAQ,EAAE,CAAA,EAChE,CAAC;oBACD,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,CACxC,CAAC;gBACJ,CAAC;gBAED,IAAI,IAAI,CAAC,gBAAgB,KAAK,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC;oBAC/C,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,gBAAgB,CAAC,cAAc,CAAC,CACrC,CAAC;gBACJ,CAAC;gBAED,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;oBAC/B,EAAE,EAAE,IAAI,CAAC,EAAG;oBACZ,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;oBACD,IAAI,EAAE;wBACJ,UAAU,EAAE,IAAI;qBACjB;iBACF,CAAC,CAAC;gBAEH,4DAA4D;gBAC5D,IAAI,CAAC;oBACH,MAAM,2BAA2B,CAAC,4CAA4C,CAC5E;wBACE,SAAS,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAU,CAAC,QAAQ,EAAE,CAAC;wBACnD,MAAM,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAO,CAAC,QAAQ,EAAE,CAAC;wBAC7C,kBAAkB,EAAE;4BAClB,WAAW,EAAE,IAAI,CAAC,EAAG;yBACtB;qBACF,CACF,CAAC;gBACJ,CAAC;gBAAC,OAAO,CAAC,EAAE,CAAC;oBACX,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;gBAClB,CAAC;gBAED,OAAO,QAAQ,CAAC,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACrD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;QACH,CAAC,CACF,CAAC;QAEF,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,GAAG,MAAA,IAAI,IAAI,CAAC,UAAU,EAAE;aACrB,cAAc,EAAE,0CACf,QAAQ,EAAE,2BAA2B,EACzC,cAAc,CAAC,iBAAiB,EAChC,KAAK,EAAE,GAAmB,EAAE,GAAoB,EAAE,IAAkB,EAAE,EAAE;;YACtE,IAAI,CAAC;gBACH,GAAG,GAAG,GAAuB,CAAC;gBAE9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACrB,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,CACxC,CAAC;gBACJ,CAAC;gBAED,MAAM,IAAI,GAAqB,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;oBAC5D,EAAE,EAAE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC;oBACtB,KAAK,EAAE;wBACL,MAAM,EAAE,IAAI;qBACb;oBACD,MAAM,EAAE;wBACN,MAAM,EAAE,IAAI;qBACb;iBACF,CAAC,CAAC;gBAEH,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CACvC,CAAC;gBACJ,CAAC;gBAED,IACE,CAAA,MAAA,IAAI,CAAC,MAAM,0CAAE,QAAQ,EAAE;qBACvB,MAAA,MAAC,GAAwB,aAAxB,GAAG,uBAAH,GAAG,CAAuB,iBAAiB,0CAAE,MAAM,0CAAE,QAAQ,EAAE,CAAA,EAChE,CAAC;oBACD,OAAO,QAAQ,CAAC,iBAAiB,CAC/B,GAAG,EACH,GAAG,EACH,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,CACxC,CAAC;gBACJ,CAAC;gBAED,MAAM,IAAI,CAAC,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAE3D,OAAO,QAAQ,CAAC,wBAAwB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACrD,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC;YACnB,CAAC;QACH,CAAC,CACF,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -72,11 +72,28 @@ export default class UserSMSAPI extends BaseAPI {
|
|
|
72
72
|
}
|
|
73
73
|
});
|
|
74
74
|
this.router.post(`/user-sms/resend-verification-code`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
75
|
+
var _a, _b, _c;
|
|
75
76
|
try {
|
|
76
77
|
req = req;
|
|
77
78
|
if (!req.body.itemId) {
|
|
78
79
|
return Response.sendErrorResponse(req, res, new BadDataException("Invalid item ID"));
|
|
79
80
|
}
|
|
81
|
+
const item = await this.service.findOneById({
|
|
82
|
+
id: req.body["itemId"],
|
|
83
|
+
props: {
|
|
84
|
+
isRoot: true,
|
|
85
|
+
},
|
|
86
|
+
select: {
|
|
87
|
+
userId: true,
|
|
88
|
+
},
|
|
89
|
+
});
|
|
90
|
+
if (!item) {
|
|
91
|
+
return Response.sendErrorResponse(req, res, new BadDataException("Item not found"));
|
|
92
|
+
}
|
|
93
|
+
if (((_a = item.userId) === null || _a === void 0 ? void 0 : _a.toString()) !==
|
|
94
|
+
((_c = (_b = req === null || req === void 0 ? void 0 : req.userAuthorization) === null || _b === void 0 ? void 0 : _b.userId) === null || _c === void 0 ? void 0 : _c.toString())) {
|
|
95
|
+
return Response.sendErrorResponse(req, res, new BadDataException("Invalid user ID"));
|
|
96
|
+
}
|
|
80
97
|
await this.service.resendVerificationCode(req.body.itemId);
|
|
81
98
|
return Response.sendEmptySuccessResponse(req, res);
|
|
82
99
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserSmsAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserSmsAPI.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"UserSmsAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserSmsAPI.ts"],"names":[],"mappings":"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"}
|
|
@@ -76,11 +76,28 @@ export default class UserWhatsAppAPI extends BaseAPI {
|
|
|
76
76
|
});
|
|
77
77
|
this.router.post(`${(_b = new this.entityType()
|
|
78
78
|
.getCrudApiPath()) === null || _b === void 0 ? void 0 : _b.toString()}/resend-verification-code`, UserMiddleware.getUserMiddleware, async (req, res, next) => {
|
|
79
|
+
var _a, _b, _c;
|
|
79
80
|
try {
|
|
80
81
|
req = req;
|
|
81
82
|
if (!req.body.itemId) {
|
|
82
83
|
return Response.sendErrorResponse(req, res, new BadDataException("Invalid item ID"));
|
|
83
84
|
}
|
|
85
|
+
const item = await this.service.findOneById({
|
|
86
|
+
id: req.body["itemId"],
|
|
87
|
+
props: {
|
|
88
|
+
isRoot: true,
|
|
89
|
+
},
|
|
90
|
+
select: {
|
|
91
|
+
userId: true,
|
|
92
|
+
},
|
|
93
|
+
});
|
|
94
|
+
if (!item) {
|
|
95
|
+
return Response.sendErrorResponse(req, res, new BadDataException("Item not found"));
|
|
96
|
+
}
|
|
97
|
+
if (((_a = item.userId) === null || _a === void 0 ? void 0 : _a.toString()) !==
|
|
98
|
+
((_c = (_b = req === null || req === void 0 ? void 0 : req.userAuthorization) === null || _b === void 0 ? void 0 : _b.userId) === null || _c === void 0 ? void 0 : _c.toString())) {
|
|
99
|
+
return Response.sendErrorResponse(req, res, new BadDataException("Invalid user ID"));
|
|
100
|
+
}
|
|
84
101
|
await this.service.resendVerificationCode(req.body.itemId);
|
|
85
102
|
return Response.sendEmptySuccessResponse(req, res);
|
|
86
103
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserWhatsAppAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserWhatsAppAPI.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"UserWhatsAppAPI.js","sourceRoot":"","sources":["../../../../Server/API/UserWhatsAppAPI.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
8
|
+
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
|
+
};
|
|
10
|
+
import { SQL, Statement } from "../Utils/AnalyticsDatabase/Statement";
|
|
11
|
+
import LogDatabaseService from "./LogService";
|
|
12
|
+
import TableColumnType from "../../Types/AnalyticsDatabase/TableColumnType";
|
|
13
|
+
import CaptureSpan from "../Utils/Telemetry/CaptureSpan";
|
|
14
|
+
export class LogAggregationService {
|
|
15
|
+
static async getHistogram(request) {
|
|
16
|
+
const statement = LogAggregationService.buildHistogramStatement(request);
|
|
17
|
+
const dbResult = await LogDatabaseService.executeQuery(statement);
|
|
18
|
+
const response = await dbResult.json();
|
|
19
|
+
const rows = response.data || [];
|
|
20
|
+
return rows.map((row) => {
|
|
21
|
+
return {
|
|
22
|
+
time: String(row["bucket"] || ""),
|
|
23
|
+
severity: String(row["severityText"] || "Unspecified"),
|
|
24
|
+
count: Number(row["cnt"] || 0),
|
|
25
|
+
};
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
static async getFacetValues(request) {
|
|
29
|
+
const statement = LogAggregationService.buildFacetStatement(request);
|
|
30
|
+
const dbResult = await LogDatabaseService.executeQuery(statement);
|
|
31
|
+
const response = await dbResult.json();
|
|
32
|
+
const rows = response.data || [];
|
|
33
|
+
return rows
|
|
34
|
+
.map((row) => {
|
|
35
|
+
return {
|
|
36
|
+
value: String(row["val"] || ""),
|
|
37
|
+
count: Number(row["cnt"] || 0),
|
|
38
|
+
};
|
|
39
|
+
})
|
|
40
|
+
.filter((facet) => {
|
|
41
|
+
return facet.value.length > 0;
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
static buildHistogramStatement(request) {
|
|
45
|
+
const intervalSeconds = request.bucketSizeInMinutes * 60;
|
|
46
|
+
const statement = SQL `
|
|
47
|
+
SELECT
|
|
48
|
+
toStartOfInterval(time, INTERVAL ${{
|
|
49
|
+
type: TableColumnType.Number,
|
|
50
|
+
value: intervalSeconds,
|
|
51
|
+
}} SECOND) AS bucket,
|
|
52
|
+
severityText,
|
|
53
|
+
count() AS cnt
|
|
54
|
+
FROM ${LogAggregationService.TABLE_NAME}
|
|
55
|
+
WHERE projectId = ${{
|
|
56
|
+
type: TableColumnType.ObjectID,
|
|
57
|
+
value: request.projectId,
|
|
58
|
+
}}
|
|
59
|
+
AND time >= ${{
|
|
60
|
+
type: TableColumnType.Date,
|
|
61
|
+
value: request.startTime,
|
|
62
|
+
}}
|
|
63
|
+
AND time <= ${{
|
|
64
|
+
type: TableColumnType.Date,
|
|
65
|
+
value: request.endTime,
|
|
66
|
+
}}
|
|
67
|
+
`;
|
|
68
|
+
LogAggregationService.appendCommonFilters(statement, request);
|
|
69
|
+
statement.append(" GROUP BY bucket, severityText ORDER BY bucket ASC");
|
|
70
|
+
return statement;
|
|
71
|
+
}
|
|
72
|
+
static buildFacetStatement(request) {
|
|
73
|
+
var _a;
|
|
74
|
+
const limit = (_a = request.limit) !== null && _a !== void 0 ? _a : LogAggregationService.DEFAULT_FACET_LIMIT;
|
|
75
|
+
const isTopLevelColumn = LogAggregationService.isTopLevelColumn(request.facetKey);
|
|
76
|
+
const escapedKey = LogAggregationService.escapeSingleQuotes(request.facetKey);
|
|
77
|
+
const valueExpression = isTopLevelColumn
|
|
78
|
+
? `toString(${escapedKey})`
|
|
79
|
+
: `JSONExtractRaw(attributes, '${escapedKey}')`;
|
|
80
|
+
// Build with raw SQL for the expression part, then parameterize WHERE values
|
|
81
|
+
const statement = new Statement();
|
|
82
|
+
statement.append(`SELECT ${valueExpression} AS val, count() AS cnt FROM ${LogAggregationService.TABLE_NAME}`);
|
|
83
|
+
statement.append(SQL ` WHERE projectId = ${{
|
|
84
|
+
type: TableColumnType.ObjectID,
|
|
85
|
+
value: request.projectId,
|
|
86
|
+
}} AND time >= ${{
|
|
87
|
+
type: TableColumnType.Date,
|
|
88
|
+
value: request.startTime,
|
|
89
|
+
}} AND time <= ${{
|
|
90
|
+
type: TableColumnType.Date,
|
|
91
|
+
value: request.endTime,
|
|
92
|
+
}}`);
|
|
93
|
+
if (!isTopLevelColumn) {
|
|
94
|
+
statement.append(` AND JSONHas(attributes, '${escapedKey}') = 1`);
|
|
95
|
+
}
|
|
96
|
+
LogAggregationService.appendCommonFilters(statement, request);
|
|
97
|
+
statement.append(SQL ` GROUP BY val ORDER BY cnt DESC LIMIT ${{
|
|
98
|
+
type: TableColumnType.Number,
|
|
99
|
+
value: limit,
|
|
100
|
+
}}`);
|
|
101
|
+
return statement;
|
|
102
|
+
}
|
|
103
|
+
static appendCommonFilters(statement, request) {
|
|
104
|
+
if (request.serviceIds && request.serviceIds.length > 0) {
|
|
105
|
+
const idStrings = request.serviceIds.map((id) => {
|
|
106
|
+
return `'${id.toString()}'`;
|
|
107
|
+
});
|
|
108
|
+
statement.append(` AND serviceId IN (${idStrings.join(",")})`);
|
|
109
|
+
}
|
|
110
|
+
if (request.severityTexts && request.severityTexts.length > 0) {
|
|
111
|
+
const sevStrings = request.severityTexts.map((s) => {
|
|
112
|
+
return `'${LogAggregationService.escapeSingleQuotes(s)}'`;
|
|
113
|
+
});
|
|
114
|
+
statement.append(` AND severityText IN (${sevStrings.join(",")})`);
|
|
115
|
+
}
|
|
116
|
+
if (request.traceIds && request.traceIds.length > 0) {
|
|
117
|
+
const traceStrings = request.traceIds.map((s) => {
|
|
118
|
+
return `'${LogAggregationService.escapeSingleQuotes(s)}'`;
|
|
119
|
+
});
|
|
120
|
+
statement.append(` AND traceId IN (${traceStrings.join(",")})`);
|
|
121
|
+
}
|
|
122
|
+
if (request.spanIds && request.spanIds.length > 0) {
|
|
123
|
+
const spanStrings = request.spanIds.map((s) => {
|
|
124
|
+
return `'${LogAggregationService.escapeSingleQuotes(s)}'`;
|
|
125
|
+
});
|
|
126
|
+
statement.append(` AND spanId IN (${spanStrings.join(",")})`);
|
|
127
|
+
}
|
|
128
|
+
if (request.bodySearchText && request.bodySearchText.trim().length > 0) {
|
|
129
|
+
statement.append(` AND body ILIKE ${{
|
|
130
|
+
type: TableColumnType.Text,
|
|
131
|
+
value: `%${request.bodySearchText.trim()}%`,
|
|
132
|
+
}}`);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
static isTopLevelColumn(key) {
|
|
136
|
+
const topLevelColumns = new Set([
|
|
137
|
+
"severityText",
|
|
138
|
+
"serviceId",
|
|
139
|
+
"traceId",
|
|
140
|
+
"spanId",
|
|
141
|
+
]);
|
|
142
|
+
return topLevelColumns.has(key);
|
|
143
|
+
}
|
|
144
|
+
static escapeSingleQuotes(value) {
|
|
145
|
+
return value.replace(/'/g, "\\'");
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
LogAggregationService.DEFAULT_FACET_LIMIT = 10;
|
|
149
|
+
LogAggregationService.TABLE_NAME = "LogItem";
|
|
150
|
+
__decorate([
|
|
151
|
+
CaptureSpan(),
|
|
152
|
+
__metadata("design:type", Function),
|
|
153
|
+
__metadata("design:paramtypes", [Object]),
|
|
154
|
+
__metadata("design:returntype", Promise)
|
|
155
|
+
], LogAggregationService, "getHistogram", null);
|
|
156
|
+
__decorate([
|
|
157
|
+
CaptureSpan(),
|
|
158
|
+
__metadata("design:type", Function),
|
|
159
|
+
__metadata("design:paramtypes", [Object]),
|
|
160
|
+
__metadata("design:returntype", Promise)
|
|
161
|
+
], LogAggregationService, "getFacetValues", null);
|
|
162
|
+
export default LogAggregationService;
|
|
163
|
+
//# sourceMappingURL=LogAggregationService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LogAggregationService.js","sourceRoot":"","sources":["../../../../Server/Services/LogAggregationService.ts"],"names":[],"mappings":"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"}
|
|
@@ -25,6 +25,16 @@ const BLOCKED_SANDBOX_PROPERTIES = new Set([
|
|
|
25
25
|
"__proto__",
|
|
26
26
|
"prototype",
|
|
27
27
|
"mainModule",
|
|
28
|
+
/*
|
|
29
|
+
* Block Playwright methods that can spawn processes or access internals.
|
|
30
|
+
* Prevents RCE via browser.browserType().launch({executablePath:"/bin/sh"})
|
|
31
|
+
* and traversal via page.context().browser().browserType().launch(...)
|
|
32
|
+
*/
|
|
33
|
+
"browserType", // Browser → BrowserType (which has launch/connect)
|
|
34
|
+
"launch", // BrowserType.launch() spawns a child process
|
|
35
|
+
"launchPersistentContext", // BrowserType.launchPersistentContext() spawns a child process
|
|
36
|
+
"connectOverCDP", // BrowserType.connectOverCDP() connects via Chrome DevTools Protocol
|
|
37
|
+
"newCDPSession", // BrowserContext/Page.newCDPSession() opens raw CDP sessions
|
|
28
38
|
]);
|
|
29
39
|
/**
|
|
30
40
|
* Wraps a host-realm value in a Proxy that blocks prototype-chain traversal.
|