@futdevpro/nts-dynamo 1.10.12 → 1.10.15
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/build/_models/control-models/endpoint-params.control-model.js +1 -1
- package/build/_models/control-models/endpoint-params.control-model.js.map +1 -1
- package/build/_modules/server/error/error.controller.d.ts +2 -2
- package/build/_modules/server/error/error.controller.d.ts.map +1 -1
- package/build/_modules/server/error/error.controller.js +3 -4
- package/build/_modules/server/error/error.controller.js.map +1 -1
- package/build/_modules/server/error/error.data-service.d.ts +17 -7
- package/build/_modules/server/error/error.data-service.d.ts.map +1 -1
- package/build/_modules/server/error/error.data-service.js +25 -33
- package/build/_modules/server/error/error.data-service.js.map +1 -1
- package/build/_modules/server/server-status/server-status.control-service.d.ts +6 -6
- package/build/_modules/server/server-status/server-status.control-service.d.ts.map +1 -1
- package/build/_modules/server/server-status/server-status.control-service.js +5 -7
- package/build/_modules/server/server-status/server-status.control-service.js.map +1 -1
- package/build/_modules/server/server-status/server-status.controller.d.ts +3 -2
- package/build/_modules/server/server-status/server-status.controller.d.ts.map +1 -1
- package/build/_modules/server/server-status/server-status.controller.js +1 -1
- package/build/_modules/server/server-status/server-status.controller.js.map +1 -1
- package/build/_modules/socket/_models/socket-presence.control-model.d.ts.map +1 -1
- package/build/_modules/socket/_models/socket-presence.control-model.js +7 -6
- package/build/_modules/socket/_models/socket-presence.control-model.js.map +1 -1
- package/build/_modules/socket/_services/socket-client.service.js +1 -1
- package/build/_modules/socket/_services/socket-client.service.js.map +1 -1
- package/build/_modules/socket/_services/socket-server.service.js +20 -20
- package/build/_modules/socket/_services/socket-server.service.js.map +1 -1
- package/build/_modules/socket/app-extended.server.js +5 -5
- package/build/_modules/socket/app-extended.server.js.map +1 -1
- package/build/_modules/usage/usage.data-service.d.ts.map +1 -1
- package/build/_modules/usage/usage.data-service.js +5 -4
- package/build/_modules/usage/usage.data-service.js.map +1 -1
- package/build/_services/base/archive-data.service.d.ts.map +1 -1
- package/build/_services/base/archive-data.service.js +12 -11
- package/build/_services/base/archive-data.service.js.map +1 -1
- package/build/_services/base/data.service.d.ts.map +1 -1
- package/build/_services/base/data.service.js +83 -74
- package/build/_services/base/data.service.js.map +1 -1
- package/build/_services/base/db.service.d.ts.map +1 -1
- package/build/_services/base/db.service.js +34 -33
- package/build/_services/base/db.service.js.map +1 -1
- package/build/_services/core/api.service.js +9 -9
- package/build/_services/core/api.service.js.map +1 -1
- package/build/_services/core/auth.service.d.ts.map +1 -1
- package/build/_services/core/auth.service.js +3 -2
- package/build/_services/core/auth.service.js.map +1 -1
- package/build/_services/core/email.service.js +19 -19
- package/build/_services/core/email.service.js.map +1 -1
- package/build/_services/core/global.service.js +7 -7
- package/build/_services/core/global.service.js.map +1 -1
- package/build/_services/route/routing-module.service.js +5 -5
- package/build/_services/route/routing-module.service.js.map +1 -1
- package/build/_services/server/app.server.js +25 -25
- package/build/_services/server/app.server.js.map +1 -1
- package/package.json +3 -3
- package/src/_models/control-models/endpoint-params.control-model.ts +1 -1
- package/src/_modules/server/error/error.controller.ts +9 -10
- package/src/_modules/server/error/error.data-service.ts +66 -59
- package/src/_modules/server/server-status/server-status.control-service.ts +38 -36
- package/src/_modules/server/server-status/server-status.controller.ts +12 -5
- package/src/_modules/socket/_models/socket-presence.control-model.ts +7 -6
- package/src/_modules/socket/_services/socket-client.service.ts +1 -1
- package/src/_modules/socket/_services/socket-server.service.ts +20 -20
- package/src/_modules/socket/app-extended.server.ts +5 -5
- package/src/_modules/usage/usage.data-service.ts +5 -4
- package/src/_services/base/archive-data.service.ts +12 -11
- package/src/_services/base/data.service.ts +83 -74
- package/src/_services/base/db.service.ts +34 -33
- package/src/_services/core/api.service.ts +9 -9
- package/src/_services/core/auth.service.ts +3 -2
- package/src/_services/core/email.service.ts +19 -19
- package/src/_services/core/global.service.ts +7 -7
- package/src/_services/route/controller.service.ts +1 -1
- package/src/_services/route/routing-module.service.ts +5 -5
- package/src/_services/server/app.server.ts +25 -25
|
@@ -13,14 +13,40 @@ import {
|
|
|
13
13
|
DyFM_Log, DyFM_Shared, DyFM_clone, DyFM_errorFlag, DyFM_Errors
|
|
14
14
|
} from '@futdevpro/fsm-dynamo';
|
|
15
15
|
|
|
16
|
+
export abstract class DyNTS_Error_ControlService<
|
|
17
|
+
T_Error extends DyFM_Error,
|
|
18
|
+
T_Errors extends DyFM_Errors<T_Error>
|
|
19
|
+
> {
|
|
20
|
+
debugLog: boolean = false;
|
|
21
|
+
readonly version: string = DyNTS_global_settings.systemVersion;
|
|
22
|
+
duplicationCounter: number;
|
|
23
|
+
|
|
24
|
+
abstract recordError(data?: T_Errors, alwaysRecord?: boolean): Promise<void>;
|
|
25
|
+
|
|
26
|
+
abstract handleInternalError(
|
|
27
|
+
error: DyFM_AnyError | any,
|
|
28
|
+
issuer: string,
|
|
29
|
+
alwaysRecord?: boolean,
|
|
30
|
+
): Promise<void>;
|
|
31
|
+
|
|
32
|
+
abstract checkErrorIsStringifyableOrResolvable(error: T_Error): T_Error | 'UNRESOLVABLE';
|
|
33
|
+
|
|
34
|
+
abstract getPriorityMultiplierByLevel(level: DyFM_ErrorLevel): number;
|
|
35
|
+
|
|
36
|
+
abstract getErrorsFromDate(
|
|
37
|
+
date: Date,
|
|
38
|
+
issuer: string,
|
|
39
|
+
): Promise<T_Errors[]>;
|
|
40
|
+
}
|
|
16
41
|
|
|
17
42
|
export class DyNTS_Error_DataService<
|
|
18
|
-
T_Error extends
|
|
19
|
-
|
|
43
|
+
T_Error extends DyFM_Error,
|
|
44
|
+
T_Errors extends DyFM_Errors<T_Error>
|
|
45
|
+
> extends DyNTS_DataService<T_Errors> implements DyNTS_Error_ControlService<T_Error, T_Errors> {
|
|
20
46
|
|
|
21
47
|
debugLog: boolean = false;
|
|
22
48
|
readonly version: string = DyNTS_global_settings.systemVersion;
|
|
23
|
-
|
|
49
|
+
duplicationCounter: number;
|
|
24
50
|
|
|
25
51
|
/* constructor(
|
|
26
52
|
set: {
|
|
@@ -30,13 +56,13 @@ export class DyNTS_Error_DataService<
|
|
|
30
56
|
dataParams: DyFM_DataModel_Params<T_Error>
|
|
31
57
|
) {
|
|
32
58
|
super(
|
|
33
|
-
new
|
|
59
|
+
new FDP_Errors(set?.data) as T_Error,
|
|
34
60
|
dataParams,
|
|
35
61
|
set.issuer
|
|
36
62
|
);
|
|
37
63
|
} */
|
|
38
64
|
|
|
39
|
-
async recordError(data?:
|
|
65
|
+
async recordError(data?: T_Errors, alwaysRecord?: boolean): Promise<void> {
|
|
40
66
|
try {
|
|
41
67
|
if (
|
|
42
68
|
!alwaysRecord &&
|
|
@@ -60,7 +86,7 @@ export class DyNTS_Error_DataService<
|
|
|
60
86
|
new Error('error data is not defined')
|
|
61
87
|
),
|
|
62
88
|
|
|
63
|
-
errorCode: `${DyNTS_global_settings.systemShortCodeName}|
|
|
89
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-EDS-RE1`,
|
|
64
90
|
});
|
|
65
91
|
}
|
|
66
92
|
|
|
@@ -74,12 +100,12 @@ export class DyNTS_Error_DataService<
|
|
|
74
100
|
data.message += '\n' + data.exception.split('() (at <')[0];
|
|
75
101
|
}
|
|
76
102
|
|
|
77
|
-
const duplicateError:
|
|
103
|
+
const duplicateError: T_Errors = await this.findData({
|
|
78
104
|
version: data.version,
|
|
79
105
|
message: data.message,
|
|
80
|
-
} as DyFM_DBFilter<
|
|
106
|
+
} as DyFM_DBFilter<T_Errors>, true);
|
|
81
107
|
|
|
82
|
-
data.d_error = this.checkErrorIsStringifyableOrResolvable(data.d_error) as
|
|
108
|
+
data.d_error = this.checkErrorIsStringifyableOrResolvable(data.d_error) as T_Error;
|
|
83
109
|
|
|
84
110
|
try {
|
|
85
111
|
JSON.stringify(data);
|
|
@@ -113,10 +139,10 @@ export class DyNTS_Error_DataService<
|
|
|
113
139
|
this.duplicationCounter = duplicateError.count + 1;
|
|
114
140
|
|
|
115
141
|
await this.updateData({
|
|
116
|
-
filterBy: { _id: duplicateError._id } as DyFM_DBFilter<
|
|
142
|
+
filterBy: { _id: duplicateError._id } as DyFM_DBFilter<T_Errors>,
|
|
117
143
|
update: {
|
|
118
144
|
$inc: { count: 1, priority: this.getPriorityMultiplierByLevel(data?.level) },
|
|
119
|
-
} as DyNTS_DBUpdate<
|
|
145
|
+
} as DyNTS_DBUpdate<T_Errors>,
|
|
120
146
|
});
|
|
121
147
|
|
|
122
148
|
// ezt majd ha leülepedett, hogy biztos nem kellenek a deep duplication-ök
|
|
@@ -165,48 +191,11 @@ export class DyNTS_Error_DataService<
|
|
|
165
191
|
error
|
|
166
192
|
),
|
|
167
193
|
|
|
168
|
-
errorCode: `${DyNTS_global_settings.systemShortCodeName}|
|
|
194
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-EDS-RE0`,
|
|
169
195
|
}); */
|
|
170
196
|
}
|
|
171
197
|
}
|
|
172
198
|
|
|
173
|
-
async preProcessWBError(): Promise<void> {
|
|
174
|
-
try {
|
|
175
|
-
const innerError = this.data?.error;
|
|
176
|
-
|
|
177
|
-
if (
|
|
178
|
-
innerError &&
|
|
179
|
-
!innerError?.message &&
|
|
180
|
-
!innerError?.userMessage &&
|
|
181
|
-
!innerError?.d_error?.message &&
|
|
182
|
-
!innerError?.d_error?.userMessage
|
|
183
|
-
) {
|
|
184
|
-
delete this.data.error;
|
|
185
|
-
}
|
|
186
|
-
|
|
187
|
-
const innerDError: DyFM_Error = this.data?.d_error;
|
|
188
|
-
|
|
189
|
-
if (
|
|
190
|
-
innerDError &&
|
|
191
|
-
!innerDError?._message &&
|
|
192
|
-
!innerDError?.__userMessage &&
|
|
193
|
-
!innerDError?._errorCode
|
|
194
|
-
) {
|
|
195
|
-
delete this.data.d_error;
|
|
196
|
-
}
|
|
197
|
-
|
|
198
|
-
} catch (error) {
|
|
199
|
-
throw new DyFM_Error({
|
|
200
|
-
...this.getDefaultErrorSettings(
|
|
201
|
-
'preProcessWBError',
|
|
202
|
-
error
|
|
203
|
-
),
|
|
204
|
-
|
|
205
|
-
errorCode: `${DyNTS_global_settings.systemShortCodeName}|FDPNTS-EDS-PPE0`,
|
|
206
|
-
});
|
|
207
|
-
}
|
|
208
|
-
}
|
|
209
|
-
|
|
210
199
|
async handleInternalError(
|
|
211
200
|
error: DyFM_AnyError | any,
|
|
212
201
|
issuer: string,
|
|
@@ -233,7 +222,7 @@ export class DyNTS_Error_DataService<
|
|
|
233
222
|
),
|
|
234
223
|
|
|
235
224
|
additionalContent: (error as DyFM_Error)?.additionalContent,
|
|
236
|
-
}) as
|
|
225
|
+
}) as T_Errors;
|
|
237
226
|
} else {
|
|
238
227
|
this.data = new DyFM_Errors({
|
|
239
228
|
issuer: issuer,
|
|
@@ -247,10 +236,10 @@ export class DyNTS_Error_DataService<
|
|
|
247
236
|
|
|
248
237
|
message: (error as Error)?.message,
|
|
249
238
|
exceptionObj: (error as Error)?.stack?.split('\n'),
|
|
250
|
-
}) as
|
|
239
|
+
}) as T_Errors;
|
|
251
240
|
}
|
|
252
241
|
|
|
253
|
-
/* if (!(error as
|
|
242
|
+
/* if (!(error as FDP_Errors)?.flag?.includes('WB-ERROR-OBJECT')) {
|
|
254
243
|
DyFM_Log.H_error('__ERROR__:', error);
|
|
255
244
|
} */
|
|
256
245
|
|
|
@@ -261,12 +250,12 @@ export class DyNTS_Error_DataService<
|
|
|
261
250
|
!(error instanceof DyFM_Error)
|
|
262
251
|
) {
|
|
263
252
|
DyFM_Log.H_error(
|
|
264
|
-
`
|
|
253
|
+
`DyNTS_Error_DataService handling InternalError...`,
|
|
265
254
|
`\n ERROR:`, error
|
|
266
255
|
);
|
|
267
256
|
} else {
|
|
268
257
|
error.logSimple(
|
|
269
|
-
`
|
|
258
|
+
`DyNTS_Error_DataService handling InternalError...`
|
|
270
259
|
);
|
|
271
260
|
}
|
|
272
261
|
} catch (error) {
|
|
@@ -277,18 +266,18 @@ export class DyNTS_Error_DataService<
|
|
|
277
266
|
error
|
|
278
267
|
),
|
|
279
268
|
|
|
280
|
-
errorCode: `${DyNTS_global_settings.systemShortCodeName}|
|
|
269
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-EDS-HIE0`,
|
|
281
270
|
}); */
|
|
282
271
|
}
|
|
283
272
|
}
|
|
284
273
|
|
|
285
|
-
|
|
274
|
+
checkErrorIsStringifyableOrResolvable(error: T_Error): T_Error | 'UNRESOLVABLE' {
|
|
286
275
|
try {
|
|
287
276
|
JSON.stringify(error);
|
|
288
277
|
} catch (err) {
|
|
289
278
|
DyFM_Log.error('error data is not stringifyable! trying to resolve...');
|
|
290
279
|
|
|
291
|
-
error = DyFM_Shared.resolveCirculation(error) as
|
|
280
|
+
error = DyFM_Shared.resolveCirculation(error) as T_Error;
|
|
292
281
|
|
|
293
282
|
try {
|
|
294
283
|
JSON.stringify(error);
|
|
@@ -307,10 +296,10 @@ export class DyNTS_Error_DataService<
|
|
|
307
296
|
}
|
|
308
297
|
}
|
|
309
298
|
|
|
310
|
-
return error;
|
|
299
|
+
return error as T_Error;
|
|
311
300
|
}
|
|
312
301
|
|
|
313
|
-
|
|
302
|
+
getPriorityMultiplierByLevel(level: DyFM_ErrorLevel): number {
|
|
314
303
|
switch (level) {
|
|
315
304
|
case DyFM_ErrorLevel.critical:
|
|
316
305
|
case DyFM_ErrorLevel.fatal:
|
|
@@ -334,4 +323,22 @@ export class DyNTS_Error_DataService<
|
|
|
334
323
|
}
|
|
335
324
|
}
|
|
336
325
|
|
|
326
|
+
async getErrorsFromDate(
|
|
327
|
+
date: Date,
|
|
328
|
+
issuer: string,
|
|
329
|
+
): Promise<T_Errors[]> {
|
|
330
|
+
try {
|
|
331
|
+
return await this.findDataList({ __created: { $gte: date } });
|
|
332
|
+
} catch (error) {
|
|
333
|
+
throw new DyFM_Error({
|
|
334
|
+
...this.getDefaultErrorSettings(
|
|
335
|
+
'getErrorsFromDate',
|
|
336
|
+
error
|
|
337
|
+
),
|
|
338
|
+
|
|
339
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-EDS-GED0`,
|
|
340
|
+
});
|
|
341
|
+
}
|
|
342
|
+
}
|
|
343
|
+
|
|
337
344
|
}
|
|
@@ -9,15 +9,19 @@ import { version as _serverVersion } from '../../../../package.json';
|
|
|
9
9
|
import { DyNTS_SingletonService } from '../../../_services/base/singleton.service';
|
|
10
10
|
import { DyNTS_DataService } from '../../../_services/base/data.service';
|
|
11
11
|
import { DyNTS_global_settings } from '../../../_collections/global-settings.const';
|
|
12
|
-
import { DyNTS_Error_DataService } from '../error/error.data-service';
|
|
12
|
+
import { DyNTS_Error_ControlService, DyNTS_Error_DataService } from '../error/error.data-service';
|
|
13
|
+
|
|
14
|
+
|
|
13
15
|
|
|
14
16
|
export abstract class DyNTS_ServerStatus_ControlService<
|
|
15
|
-
T_Error extends
|
|
16
|
-
|
|
17
|
+
T_Error extends DyFM_Error,
|
|
18
|
+
T_Errors extends DyFM_Errors<T_Error>,
|
|
19
|
+
T_ServerStatus extends DyFM_ServerStatus,
|
|
20
|
+
T_Error_ControlService extends DyNTS_Error_ControlService<T_Error, T_Errors>
|
|
17
21
|
> extends DyNTS_SingletonService {
|
|
18
22
|
|
|
19
|
-
/* static getInstance():
|
|
20
|
-
return
|
|
23
|
+
/* static getInstance(): DyNTS_ServerStatus_ControlService {
|
|
24
|
+
return DyNTS_ServerStatus_ControlService.getSingletonInstance();
|
|
21
25
|
} */
|
|
22
26
|
|
|
23
27
|
/* protected constructor() {
|
|
@@ -27,16 +31,16 @@ export abstract class DyNTS_ServerStatus_ControlService<
|
|
|
27
31
|
throw new DyFM_Error({
|
|
28
32
|
message: 'getErrorDataService() method not implemented in ServerStatus_ControlService.',
|
|
29
33
|
status: 500,
|
|
30
|
-
errorCode: `${DyNTS_global_settings.systemShortCodeName}|
|
|
34
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-GED0',
|
|
31
35
|
});
|
|
32
36
|
}
|
|
33
37
|
} */
|
|
34
38
|
|
|
35
|
-
protected abstract
|
|
36
|
-
set?: { data?:
|
|
37
|
-
):
|
|
39
|
+
protected abstract getErrorControlService?(
|
|
40
|
+
set?: { data?: T_Errors, issuer?: string }
|
|
41
|
+
): T_Error_ControlService;
|
|
38
42
|
|
|
39
|
-
/* protected abstract error_DS:
|
|
43
|
+
/* protected abstract error_DS: DyNTS_Error_DataService<T_Error>; */
|
|
40
44
|
|
|
41
45
|
protected readonly up: Date = new Date();
|
|
42
46
|
|
|
@@ -76,85 +80,83 @@ export abstract class DyNTS_ServerStatus_ControlService<
|
|
|
76
80
|
issuer: string
|
|
77
81
|
): Promise<DyFM_Error_Statistics> {
|
|
78
82
|
try {
|
|
79
|
-
const error_DS:
|
|
80
|
-
this.
|
|
81
|
-
/* new
|
|
83
|
+
const error_DS: T_Error_ControlService =
|
|
84
|
+
this.getErrorControlService({ issuer: issuer });
|
|
85
|
+
/* new DyNTS_Error_DataService({ issuer: issuer }); */
|
|
82
86
|
|
|
83
87
|
const from: Date = DyFM_Time.getDateByRelativeDate(range);
|
|
84
|
-
const errors:
|
|
85
|
-
__created: { $gte: from },
|
|
86
|
-
});
|
|
88
|
+
const errors: T_Errors[] = await error_DS.getErrorsFromDate(from, issuer);
|
|
87
89
|
|
|
88
90
|
return {
|
|
89
91
|
range: range,
|
|
90
92
|
|
|
91
93
|
allErrors: errors.length,
|
|
92
94
|
allAllErrors: errors.reduce(
|
|
93
|
-
(sum: number, error:
|
|
95
|
+
(sum: number, error: T_Errors): number => sum + error.count,
|
|
94
96
|
0
|
|
95
97
|
),
|
|
96
98
|
|
|
97
99
|
serverErrors:
|
|
98
100
|
errors.filter(
|
|
99
|
-
(error:
|
|
101
|
+
(error: T_Errors): boolean => error.source.includes('SERVER')
|
|
100
102
|
).length,
|
|
101
103
|
clientErrors:
|
|
102
104
|
errors.filter(
|
|
103
|
-
(error:
|
|
105
|
+
(error: T_Errors): boolean => !error.source.includes('SERVER')
|
|
104
106
|
).length,
|
|
105
107
|
allServerErrors:
|
|
106
108
|
errors.filter(
|
|
107
|
-
(error:
|
|
109
|
+
(error: T_Errors): boolean => error.source.includes('SERVER')
|
|
108
110
|
).reduce(
|
|
109
|
-
(sum: number, error:
|
|
111
|
+
(sum: number, error: T_Errors): number => sum + error.count, 0
|
|
110
112
|
),
|
|
111
113
|
allClientErrors:
|
|
112
114
|
errors.filter(
|
|
113
|
-
(error:
|
|
115
|
+
(error: T_Errors): boolean => !error.source.includes('SERVER')
|
|
114
116
|
).reduce(
|
|
115
|
-
(sum: number, error:
|
|
117
|
+
(sum: number, error: T_Errors): number => sum + error.count, 0
|
|
116
118
|
),
|
|
117
119
|
|
|
118
120
|
infoErrors:
|
|
119
121
|
errors.filter(
|
|
120
|
-
(error:
|
|
122
|
+
(error: T_Errors): boolean => error.level === DyFM_ErrorLevel.info
|
|
121
123
|
).length,
|
|
122
124
|
warningErrors:
|
|
123
125
|
errors.filter(
|
|
124
|
-
(error:
|
|
126
|
+
(error: T_Errors): boolean => error.level === DyFM_ErrorLevel.warning
|
|
125
127
|
).length,
|
|
126
128
|
errorErrors:
|
|
127
129
|
errors.filter(
|
|
128
|
-
(error:
|
|
130
|
+
(error: T_Errors): boolean => error.level === DyFM_ErrorLevel.error
|
|
129
131
|
).length,
|
|
130
132
|
criticalErrors:
|
|
131
133
|
errors.filter(
|
|
132
|
-
(error:
|
|
134
|
+
(error: T_Errors): boolean => error.level === DyFM_ErrorLevel.critical
|
|
133
135
|
).length,
|
|
134
136
|
|
|
135
137
|
allInfoErrors:
|
|
136
138
|
errors.filter(
|
|
137
|
-
(error:
|
|
139
|
+
(error: T_Errors): boolean => error.level === DyFM_ErrorLevel.info
|
|
138
140
|
).reduce(
|
|
139
|
-
(sum: number, error:
|
|
141
|
+
(sum: number, error: T_Errors): number => sum + error.count, 0
|
|
140
142
|
),
|
|
141
143
|
allWarningErrors:
|
|
142
144
|
errors.filter(
|
|
143
|
-
(error:
|
|
145
|
+
(error: T_Errors): boolean => error.level === DyFM_ErrorLevel.warning
|
|
144
146
|
).reduce(
|
|
145
|
-
(sum: number, error:
|
|
147
|
+
(sum: number, error: T_Errors): number => sum + error.count, 0
|
|
146
148
|
),
|
|
147
149
|
allErrorErrors:
|
|
148
150
|
errors.filter(
|
|
149
|
-
(error:
|
|
151
|
+
(error: T_Errors): boolean => error.level === DyFM_ErrorLevel.error
|
|
150
152
|
).reduce(
|
|
151
|
-
(sum: number, error:
|
|
153
|
+
(sum: number, error: T_Errors): number => sum + error.count, 0
|
|
152
154
|
),
|
|
153
155
|
allCriticalErrors:
|
|
154
156
|
errors.filter(
|
|
155
|
-
(error:
|
|
157
|
+
(error: T_Errors): boolean => error.level === DyFM_ErrorLevel.critical
|
|
156
158
|
).reduce(
|
|
157
|
-
(sum: number, error:
|
|
159
|
+
(sum: number, error: T_Errors): number => sum + error.count, 0
|
|
158
160
|
),
|
|
159
161
|
} as DyFM_Error_Statistics;
|
|
160
162
|
} catch (error) {
|
|
@@ -165,7 +167,7 @@ export abstract class DyNTS_ServerStatus_ControlService<
|
|
|
165
167
|
issuer
|
|
166
168
|
),
|
|
167
169
|
|
|
168
|
-
errorCode: `${DyNTS_global_settings.systemShortCodeName}|
|
|
170
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSS-GES0`,
|
|
169
171
|
});
|
|
170
172
|
}
|
|
171
173
|
}
|
|
@@ -6,6 +6,7 @@ import { DyNTS_ServerStatus_ControlService } from './server-status.control-servi
|
|
|
6
6
|
import { DyNTS_Controller } from '../../../_services/route/controller.service';
|
|
7
7
|
import { DyNTS_Endpoint_Params } from '../../../_models/control-models/endpoint-params.control-model';
|
|
8
8
|
import { DyNTS_global_settings } from '../../../_collections/global-settings.const';
|
|
9
|
+
import { DyNTS_Error_DataService } from '../error/error.data-service';
|
|
9
10
|
|
|
10
11
|
|
|
11
12
|
/**
|
|
@@ -22,13 +23,19 @@ import { DyNTS_global_settings } from '../../../_collections/global-settings.con
|
|
|
22
23
|
*
|
|
23
24
|
*/
|
|
24
25
|
export abstract class DyNTS_ServerStatus_Controller<
|
|
25
|
-
T_Error extends
|
|
26
|
+
T_Error extends DyFM_Error,
|
|
27
|
+
T_Errors extends DyFM_Errors<T_Error>,
|
|
26
28
|
T_ServerStatus extends DyFM_ServerStatus,
|
|
27
|
-
T_ServerStatusService extends DyNTS_ServerStatus_ControlService<
|
|
29
|
+
T_ServerStatusService extends DyNTS_ServerStatus_ControlService<
|
|
30
|
+
T_Error,
|
|
31
|
+
T_Errors,
|
|
32
|
+
T_ServerStatus,
|
|
33
|
+
DyNTS_Error_DataService<T_Error, T_Errors>
|
|
34
|
+
>
|
|
28
35
|
> extends DyNTS_Controller {
|
|
29
36
|
|
|
30
|
-
/* static getInstance():
|
|
31
|
-
return
|
|
37
|
+
/* static getInstance(): DyNTS_ServerStatus_Controller {
|
|
38
|
+
return DyNTS_ServerStatus_Controller.getSingletonInstance();
|
|
32
39
|
} */
|
|
33
40
|
|
|
34
41
|
protected abstract readonly server_CS: T_ServerStatusService;
|
|
@@ -40,7 +47,7 @@ export abstract class DyNTS_ServerStatus_Controller<
|
|
|
40
47
|
/* if (!this.getServerService) {
|
|
41
48
|
throw new DyFM_Error({
|
|
42
49
|
message: 'getServerService() method not implemented in ServerStatus_Controller.',
|
|
43
|
-
errorCode: `${DyNTS_global_settings.systemShortCodeName}|
|
|
50
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SSC-001`,
|
|
44
51
|
});
|
|
45
52
|
} */
|
|
46
53
|
|
|
@@ -3,6 +3,7 @@ import {
|
|
|
3
3
|
DyFM_AnyError, DyFM_Error, DyFM_Error_Settings, DyFM_Log
|
|
4
4
|
} from '@futdevpro/fsm-dynamo';
|
|
5
5
|
import * as SocketIO from 'socket.io';
|
|
6
|
+
import { DyNTS_global_settings } from '../../..';
|
|
6
7
|
|
|
7
8
|
/**
|
|
8
9
|
* socket handling and clarification is under development
|
|
@@ -53,7 +54,7 @@ export class DyNTS_SocketPresence {
|
|
|
53
54
|
),
|
|
54
55
|
set?.issuer
|
|
55
56
|
),
|
|
56
|
-
errorCode:
|
|
57
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SD0-C00`,
|
|
57
58
|
additionalContent: { set: set },
|
|
58
59
|
});
|
|
59
60
|
}
|
|
@@ -83,7 +84,7 @@ export class DyNTS_SocketPresence {
|
|
|
83
84
|
set?.issuer
|
|
84
85
|
),
|
|
85
86
|
|
|
86
|
-
errorCode:
|
|
87
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SD0-C01`,
|
|
87
88
|
});
|
|
88
89
|
}
|
|
89
90
|
|
|
@@ -112,7 +113,7 @@ export class DyNTS_SocketPresence {
|
|
|
112
113
|
),
|
|
113
114
|
issuer
|
|
114
115
|
),
|
|
115
|
-
errorCode:
|
|
116
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SPC-EE1`,
|
|
116
117
|
});
|
|
117
118
|
}
|
|
118
119
|
|
|
@@ -126,7 +127,7 @@ export class DyNTS_SocketPresence {
|
|
|
126
127
|
/* errors.push(
|
|
127
128
|
new DyFM_Error({
|
|
128
129
|
status: 500,
|
|
129
|
-
errorCode:
|
|
130
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SPC-EE2',
|
|
130
131
|
addECToUserMsg: true,
|
|
131
132
|
message:
|
|
132
133
|
`Emitting event '${event}' on socket(${this.serviceName})-(${index}) failed!`+
|
|
@@ -179,7 +180,7 @@ export class DyNTS_SocketPresence {
|
|
|
179
180
|
issuer
|
|
180
181
|
),
|
|
181
182
|
|
|
182
|
-
errorCode:
|
|
183
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SPC-EE3`,
|
|
183
184
|
additionalContent: {
|
|
184
185
|
inactiveSockets: inactiveSockets,
|
|
185
186
|
errors: errors,
|
|
@@ -196,7 +197,7 @@ export class DyNTS_SocketPresence {
|
|
|
196
197
|
),
|
|
197
198
|
issuer
|
|
198
199
|
),
|
|
199
|
-
errorCode:
|
|
200
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SPC-EE3`,
|
|
200
201
|
});
|
|
201
202
|
}
|
|
202
203
|
}
|
|
@@ -125,7 +125,7 @@ export abstract class DyNTS_SocketClient_ServiceBase extends DyNTS_SingletonServ
|
|
|
125
125
|
DyFM_Log.error(`socket-client(${this.params?.name}) Service setup failed!`, error);
|
|
126
126
|
|
|
127
127
|
throw new DyFM_Error({
|
|
128
|
-
errorCode:
|
|
128
|
+
errorCode: `${DyNTS_global_settings.systemShortCodeName}|DyNTS-SCS-001`,
|
|
129
129
|
error: error,
|
|
130
130
|
});
|
|
131
131
|
}
|