@diia-inhouse/diia-app 31.9.7 → 32.4.0
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/dist/actionExecutor.js +44 -51
- package/dist/actionExecutor.js.map +1 -1
- package/dist/application.js +43 -47
- package/dist/application.js.map +1 -1
- package/dist/applicationHooks.js +15 -21
- package/dist/applicationHooks.js.map +1 -1
- package/dist/baseDeps.js +34 -40
- package/dist/baseDeps.js.map +1 -1
- package/dist/grpc/dynamicClient.js +35 -39
- package/dist/grpc/dynamicClient.js.map +1 -1
- package/dist/grpc/grpcClient.js +44 -48
- package/dist/grpc/grpcClient.js.map +1 -1
- package/dist/grpc/grpcExecutor.js +5 -9
- package/dist/grpc/grpcExecutor.js.map +1 -1
- package/dist/grpc/grpcService.js +119 -121
- package/dist/grpc/grpcService.js.map +1 -1
- package/dist/grpc/index.js +12 -31
- package/dist/grpc/index.js.map +1 -1
- package/dist/grpc/reflectionFix.js +8 -14
- package/dist/grpc/reflectionFix.js.map +1 -1
- package/dist/grpc/schemaReflection/grpcSchemaService.js +4 -11
- package/dist/grpc/schemaReflection/grpcSchemaService.js.map +1 -1
- package/dist/grpc/schemaReflection/index.js +8 -33
- package/dist/grpc/schemaReflection/index.js.map +1 -1
- package/dist/grpc/schemaReflection/jsonSchemaGenerator.js +15 -22
- package/dist/grpc/schemaReflection/jsonSchemaGenerator.js.map +1 -1
- package/dist/grpc/schemaReflection/protoMetadataExtractor.js +18 -25
- package/dist/grpc/schemaReflection/protoMetadataExtractor.js.map +1 -1
- package/dist/grpc/schemaReflection/schemaReflectionClient.js +8 -12
- package/dist/grpc/schemaReflection/schemaReflectionClient.js.map +1 -1
- package/dist/grpc/schemaReflection/schemaReflectionInitializer.js +8 -11
- package/dist/grpc/schemaReflection/schemaReflectionInitializer.js.map +1 -1
- package/dist/grpc/schemaReflection/schemaRegistry.js +1 -5
- package/dist/grpc/schemaReflection/schemaRegistry.js.map +1 -1
- package/dist/grpc/schemaReflection/types.js +4 -8
- package/dist/grpc/schemaReflection/types.js.map +1 -1
- package/dist/grpc/server.js +34 -35
- package/dist/grpc/server.js.map +1 -1
- package/dist/grpc/utils.js +9 -10
- package/dist/grpc/utils.js.map +1 -1
- package/dist/grpc/wrappers.js +8 -15
- package/dist/grpc/wrappers.js.map +1 -1
- package/dist/index.js +12 -38
- package/dist/index.js.map +1 -1
- package/dist/interfaces/action.js +10 -14
- package/dist/interfaces/action.js.map +1 -1
- package/dist/interfaces/actionExecutor.js +1 -2
- package/dist/interfaces/apiService.js +1 -2
- package/dist/interfaces/application.js +1 -2
- package/dist/interfaces/config.js +1 -2
- package/dist/interfaces/deps.js +1 -2
- package/dist/interfaces/errorCode.js +2 -5
- package/dist/interfaces/errorCode.js.map +1 -1
- package/dist/interfaces/featureFlag.js +1 -4
- package/dist/interfaces/featureFlag.js.map +1 -1
- package/dist/interfaces/grpc.js +4 -7
- package/dist/interfaces/grpc.js.map +1 -1
- package/dist/interfaces/index.js +8 -24
- package/dist/interfaces/index.js.map +1 -1
- package/dist/interfaces/moleculer.js +1 -2
- package/dist/interfaces/onInitResults.js +1 -2
- package/dist/interfaces/tracing.js +10 -15
- package/dist/interfaces/tracing.js.map +1 -1
- package/dist/metrics.js +4 -8
- package/dist/metrics.js.map +1 -1
- package/dist/moleculer/moleculerLogger.js +9 -12
- package/dist/moleculer/moleculerLogger.js.map +1 -1
- package/dist/moleculer/moleculerWrapper.js +42 -46
- package/dist/moleculer/moleculerWrapper.js.map +1 -1
- package/dist/plugins/openapi/actionVisitor.js +14 -20
- package/dist/plugins/openapi/actionVisitor.js.map +1 -1
- package/dist/plugins/openapi/index.js +6 -46
- package/dist/plugins/openapi/index.js.map +1 -1
- package/dist/plugins/openapi/parser.js +101 -111
- package/dist/plugins/openapi/parser.js.map +1 -1
- package/dist/plugins/pluginConstants.js +2 -5
- package/dist/plugins/pluginConstants.js.map +1 -1
- package/dist/tracing/index.js +32 -32
- package/dist/tracing/index.js.map +1 -1
- package/dist/types/actionExecutor.d.ts +2 -2
- package/dist/types/application.d.ts +2 -2
- package/dist/types/applicationHooks.d.ts +2 -2
- package/dist/types/baseDeps.d.ts +2 -2
- package/dist/types/grpc/grpcClient.d.ts +1 -1
- package/dist/types/grpc/grpcExecutor.d.ts +1 -1
- package/dist/types/grpc/grpcService.d.ts +4 -5
- package/dist/types/grpc/index.d.ts +6 -6
- package/dist/types/grpc/schemaReflection/grpcSchemaService.d.ts +1 -1
- package/dist/types/grpc/schemaReflection/index.d.ts +7 -7
- package/dist/types/grpc/schemaReflection/jsonSchemaGenerator.d.ts +1 -1
- package/dist/types/grpc/schemaReflection/protoMetadataExtractor.d.ts +1 -1
- package/dist/types/grpc/schemaReflection/schemaReflectionClient.d.ts +1 -1
- package/dist/types/grpc/schemaReflection/schemaReflectionInitializer.d.ts +1 -1
- package/dist/types/grpc/schemaReflection/schemaRegistry.d.ts +1 -1
- package/dist/types/grpc/server.d.ts +2 -2
- package/dist/types/index.d.ts +10 -10
- package/dist/types/interfaces/action.d.ts +2 -3
- package/dist/types/interfaces/actionExecutor.d.ts +1 -1
- package/dist/types/interfaces/application.d.ts +3 -3
- package/dist/types/interfaces/config.d.ts +1 -1
- package/dist/types/interfaces/deps.d.ts +5 -5
- package/dist/types/interfaces/featureFlag.d.ts +1 -1
- package/dist/types/interfaces/grpc.d.ts +1 -2
- package/dist/types/interfaces/index.d.ts +8 -8
- package/dist/types/moleculer/moleculerWrapper.d.ts +2 -2
- package/dist/types/tracing/index.d.ts +1 -1
- package/package.json +73 -62
- package/src/actionExecutor.ts +9 -9
- package/src/application.ts +17 -12
- package/src/applicationHooks.ts +6 -5
- package/src/baseDeps.ts +5 -5
- package/src/grpc/dynamicClient.ts +23 -13
- package/src/grpc/grpcClient.ts +7 -7
- package/src/grpc/grpcExecutor.ts +1 -1
- package/src/grpc/grpcService.ts +17 -14
- package/src/grpc/index.ts +6 -6
- package/src/grpc/reflectionFix.ts +6 -6
- package/src/grpc/schemaReflection/grpcSchemaService.ts +3 -3
- package/src/grpc/schemaReflection/index.ts +7 -7
- package/src/grpc/schemaReflection/jsonSchemaGenerator.ts +4 -4
- package/src/grpc/schemaReflection/protoMetadataExtractor.ts +7 -2
- package/src/grpc/schemaReflection/schemaReflectionClient.ts +2 -2
- package/src/grpc/schemaReflection/schemaReflectionInitializer.ts +5 -4
- package/src/grpc/schemaReflection/schemaRegistry.ts +1 -1
- package/src/grpc/server.ts +12 -4
- package/src/grpc/utils.ts +3 -0
- package/src/grpc/wrappers.ts +4 -6
- package/src/index.ts +19 -10
- package/src/interfaces/action.ts +4 -5
- package/src/interfaces/actionExecutor.ts +1 -1
- package/src/interfaces/application.ts +3 -3
- package/src/interfaces/config.ts +1 -1
- package/src/interfaces/deps.ts +5 -5
- package/src/interfaces/featureFlag.ts +1 -1
- package/src/interfaces/grpc.ts +1 -2
- package/src/interfaces/index.ts +8 -8
- package/src/moleculer/moleculerWrapper.ts +12 -9
- package/src/plugins/openapi/actionVisitor.ts +3 -4
- package/src/plugins/openapi/index.ts +1 -3
- package/src/plugins/openapi/parser.ts +8 -13
- package/src/tracing/index.ts +12 -6
package/dist/actionExecutor.js
CHANGED
|
@@ -1,17 +1,11 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
const diia_metrics_1 = require("@diia-inhouse/diia-metrics");
|
|
10
|
-
const errors_1 = require("@diia-inhouse/errors");
|
|
11
|
-
const types_1 = require("@diia-inhouse/types");
|
|
12
|
-
const utils_1 = require("@diia-inhouse/utils");
|
|
13
|
-
const tracing_1 = require("./interfaces/tracing");
|
|
14
|
-
class ActionExecutor {
|
|
1
|
+
import { SpanStatusCode, context, propagation, trace } from '@opentelemetry/api';
|
|
2
|
+
import pTimeout from 'p-timeout';
|
|
3
|
+
import { RequestMechanism, RequestStatus } from '@diia-inhouse/diia-metrics';
|
|
4
|
+
import { ErrorType } from '@diia-inhouse/errors';
|
|
5
|
+
import { SessionType, } from '@diia-inhouse/types';
|
|
6
|
+
import { utils } from '@diia-inhouse/utils';
|
|
7
|
+
import { ATTR_MESSAGE_ID, ATTR_MESSAGE_TYPE, ATTR_MESSAGING_SYSTEM } from './interfaces/tracing.js';
|
|
8
|
+
export class ActionExecutor {
|
|
15
9
|
asyncLocalStorage;
|
|
16
10
|
logger;
|
|
17
11
|
validator;
|
|
@@ -27,12 +21,12 @@ class ActionExecutor {
|
|
|
27
21
|
this.metrics = metrics;
|
|
28
22
|
this.redlock = redlock;
|
|
29
23
|
}
|
|
30
|
-
async execute(
|
|
31
|
-
const { action, transport, tracingMetadata, spanKind, actionArguments } =
|
|
32
|
-
const tracer =
|
|
33
|
-
const telemetryActiveContext =
|
|
24
|
+
async execute(executeParams) {
|
|
25
|
+
const { action, transport, tracingMetadata, spanKind, actionArguments } = executeParams;
|
|
26
|
+
const tracer = trace.getTracer(this.systemServiceName);
|
|
27
|
+
const telemetryActiveContext = propagation.extract(context.active(), tracingMetadata);
|
|
34
28
|
let actionName = action.name;
|
|
35
|
-
if (transport ===
|
|
29
|
+
if (transport === RequestMechanism.Grpc && this.isGrpcAction(action)) {
|
|
36
30
|
if (action.grpcMethod?.path) {
|
|
37
31
|
actionName = action.grpcMethod?.path;
|
|
38
32
|
}
|
|
@@ -48,7 +42,7 @@ class ActionExecutor {
|
|
|
48
42
|
const span = tracer.startSpan(`handle ${actionName}`, {
|
|
49
43
|
kind: spanKind,
|
|
50
44
|
attributes: {
|
|
51
|
-
[
|
|
45
|
+
[ATTR_MESSAGING_SYSTEM]: transport,
|
|
52
46
|
...(source !== 'unknown' && { 'messaging.caller': source }),
|
|
53
47
|
},
|
|
54
48
|
}, activeContext);
|
|
@@ -59,8 +53,8 @@ class ActionExecutor {
|
|
|
59
53
|
destination: this.systemServiceName,
|
|
60
54
|
route: actionName,
|
|
61
55
|
};
|
|
62
|
-
span.addEvent('message', { [
|
|
63
|
-
return await
|
|
56
|
+
span.addEvent('message', { [ATTR_MESSAGE_ID]: 1, [ATTR_MESSAGE_TYPE]: 'RECEIVED' });
|
|
57
|
+
return await context.with(trace.setSpan(telemetryActiveContext, span), async () => {
|
|
64
58
|
const logData = this.buildLogData(actionArguments);
|
|
65
59
|
const { params, session, headers } = actionArguments;
|
|
66
60
|
const alsData = { logData: this.logger.prepareContext(logData), session, headers };
|
|
@@ -71,7 +65,7 @@ class ActionExecutor {
|
|
|
71
65
|
if (actionLockResource && this.redlock) {
|
|
72
66
|
const lockResource = `${action.name}.${actionLockResource}`;
|
|
73
67
|
try {
|
|
74
|
-
lock = await (
|
|
68
|
+
lock = await pTimeout(this.redlock.lock(lockResource, this.actionLockTtl).catch((err) => {
|
|
75
69
|
this.logger.error(`Caught error while acquiring lock for action: ${actionName}`, { err });
|
|
76
70
|
}), action.tryLockTimeout ?? Infinity, () => { });
|
|
77
71
|
}
|
|
@@ -81,24 +75,24 @@ class ActionExecutor {
|
|
|
81
75
|
}
|
|
82
76
|
try {
|
|
83
77
|
const validationSchema = { params: { type: 'object', props: action.validationRules } };
|
|
84
|
-
const validationErrorType = session?.sessionType ===
|
|
78
|
+
const validationErrorType = session?.sessionType === SessionType.Partner ? ErrorType.Operated : undefined;
|
|
85
79
|
this.validator.validate(actionArguments, validationSchema, validationErrorType);
|
|
86
80
|
if (headers) {
|
|
87
81
|
headers.serviceCode = action.getServiceCode?.(actionArguments);
|
|
88
82
|
}
|
|
89
83
|
const res = await action.handler(actionArguments);
|
|
90
84
|
this.logger.info(`ACT IN RESULT: ${actionName}`, res);
|
|
91
|
-
this.metrics.responseTotalTimerMetric.observeSeconds({ ...defaultLabels, status:
|
|
92
|
-
span.setStatus({ code:
|
|
93
|
-
span.addEvent('message', { [
|
|
85
|
+
this.metrics.responseTotalTimerMetric.observeSeconds({ ...defaultLabels, status: RequestStatus.Successful }, process.hrtime.bigint() - startTime);
|
|
86
|
+
span.setStatus({ code: SpanStatusCode.OK });
|
|
87
|
+
span.addEvent('message', { [ATTR_MESSAGE_ID]: 2, [ATTR_MESSAGE_TYPE]: 'SENT' });
|
|
94
88
|
return res;
|
|
95
89
|
}
|
|
96
90
|
catch (err) {
|
|
97
91
|
this.logger.error(`ACT IN FAILED: ${actionName}`, { err, version: action.actionVersion, params, session });
|
|
98
|
-
|
|
92
|
+
utils.handleError(err, (apiErr) => {
|
|
99
93
|
this.metrics.responseTotalTimerMetric.observeSeconds({
|
|
100
94
|
...defaultLabels,
|
|
101
|
-
status:
|
|
95
|
+
status: RequestStatus.Failed,
|
|
102
96
|
errorType: apiErr.getType(),
|
|
103
97
|
statusCode: apiErr.getCode(),
|
|
104
98
|
}, process.hrtime.bigint() - startTime);
|
|
@@ -107,9 +101,9 @@ class ActionExecutor {
|
|
|
107
101
|
code: apiErr.getCode(),
|
|
108
102
|
name: apiErr.getName(),
|
|
109
103
|
});
|
|
110
|
-
span.setStatus({ code:
|
|
104
|
+
span.setStatus({ code: SpanStatusCode.ERROR, message: apiErr.getMessage() });
|
|
111
105
|
});
|
|
112
|
-
span.addEvent('message', { [
|
|
106
|
+
span.addEvent('message', { [ATTR_MESSAGE_ID]: 2, [ATTR_MESSAGE_TYPE]: 'SENT' });
|
|
113
107
|
throw err;
|
|
114
108
|
}
|
|
115
109
|
finally {
|
|
@@ -121,51 +115,51 @@ class ActionExecutor {
|
|
|
121
115
|
}
|
|
122
116
|
buildLogData(actionArguments) {
|
|
123
117
|
const session = 'session' in actionArguments ? actionArguments.session : null;
|
|
124
|
-
const sessionType = session?.sessionType ??
|
|
118
|
+
const sessionType = session?.sessionType ?? SessionType.None;
|
|
125
119
|
const logData = {
|
|
126
120
|
sessionType,
|
|
127
121
|
...actionArguments.headers,
|
|
128
122
|
};
|
|
129
123
|
switch (sessionType) {
|
|
130
|
-
case
|
|
131
|
-
case
|
|
132
|
-
case
|
|
133
|
-
case
|
|
124
|
+
case SessionType.PortalUser:
|
|
125
|
+
case SessionType.EResidentApplicant:
|
|
126
|
+
case SessionType.EResident:
|
|
127
|
+
case SessionType.User: {
|
|
134
128
|
const { user: { identifier }, } = session;
|
|
135
129
|
logData.userIdentifier = identifier;
|
|
136
130
|
break;
|
|
137
131
|
}
|
|
138
|
-
case
|
|
132
|
+
case SessionType.ServiceUser: {
|
|
139
133
|
const { serviceUser: { login }, } = session;
|
|
140
134
|
logData.sessionOwnerId = login;
|
|
141
135
|
break;
|
|
142
136
|
}
|
|
143
|
-
case
|
|
137
|
+
case SessionType.Partner: {
|
|
144
138
|
const { partner: { _id: id }, } = session;
|
|
145
|
-
logData.sessionOwnerId = id
|
|
139
|
+
logData.sessionOwnerId = id;
|
|
146
140
|
break;
|
|
147
141
|
}
|
|
148
|
-
case
|
|
142
|
+
case SessionType.Acquirer: {
|
|
149
143
|
const { acquirer: { _id: id }, } = session;
|
|
150
|
-
logData.sessionOwnerId = id
|
|
144
|
+
logData.sessionOwnerId = id;
|
|
151
145
|
break;
|
|
152
146
|
}
|
|
153
|
-
case
|
|
147
|
+
case SessionType.Temporary: {
|
|
154
148
|
const { temporary: { mobileUid }, } = session;
|
|
155
149
|
logData.sessionOwnerId = mobileUid;
|
|
156
150
|
break;
|
|
157
151
|
}
|
|
158
|
-
case
|
|
152
|
+
case SessionType.ServiceEntrance: {
|
|
159
153
|
const { entrance: { acquirerId }, } = session;
|
|
160
|
-
logData.sessionOwnerId = acquirerId
|
|
154
|
+
logData.sessionOwnerId = acquirerId;
|
|
161
155
|
break;
|
|
162
156
|
}
|
|
163
|
-
case
|
|
157
|
+
case SessionType.None: {
|
|
164
158
|
break;
|
|
165
159
|
}
|
|
166
160
|
default: {
|
|
167
161
|
const unexpectedSessionType = sessionType;
|
|
168
|
-
this.logger.warn(`Unexpected session type for the logData: ${unexpectedSessionType}`);
|
|
162
|
+
this.logger.warn(`Unexpected session type for the logData: ${String(unexpectedSessionType)}`);
|
|
169
163
|
}
|
|
170
164
|
}
|
|
171
165
|
return logData;
|
|
@@ -174,16 +168,15 @@ class ActionExecutor {
|
|
|
174
168
|
return 'grpcMethod' in action;
|
|
175
169
|
}
|
|
176
170
|
compareSpanContext(customContext) {
|
|
177
|
-
const customSpanContext =
|
|
178
|
-
const activeSpan =
|
|
171
|
+
const customSpanContext = trace.getSpanContext(customContext);
|
|
172
|
+
const activeSpan = trace.getSpan(context.active());
|
|
179
173
|
const activeSpanContext = activeSpan ? activeSpan.spanContext() : null;
|
|
180
|
-
let parentContext =
|
|
174
|
+
let parentContext = context.active();
|
|
181
175
|
if (customSpanContext) {
|
|
182
176
|
const isMatchingTrace = activeSpanContext?.traceId === customSpanContext?.traceId;
|
|
183
|
-
parentContext = isMatchingTrace ?
|
|
177
|
+
parentContext = isMatchingTrace ? context.active() : customContext;
|
|
184
178
|
}
|
|
185
179
|
return parentContext;
|
|
186
180
|
}
|
|
187
181
|
}
|
|
188
|
-
exports.ActionExecutor = ActionExecutor;
|
|
189
182
|
//# sourceMappingURL=actionExecutor.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actionExecutor.js","sourceRoot":"","sources":["../src/actionExecutor.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"actionExecutor.js","sourceRoot":"","sources":["../src/actionExecutor.ts"],"names":[],"mappings":"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"}
|
package/dist/application.js
CHANGED
|
@@ -1,21 +1,20 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
const
|
|
15
|
-
const
|
|
16
|
-
const
|
|
17
|
-
|
|
18
|
-
class Application extends applicationHooks_1.ApplicationHooks {
|
|
1
|
+
import { AsyncLocalStorage } from 'node:async_hooks';
|
|
2
|
+
import { createRequire } from 'node:module';
|
|
3
|
+
import { hostname } from 'node:os';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
import { InjectionMode, asClass, asValue, createContainer, listModules, } from 'awilix';
|
|
6
|
+
import lodash from 'lodash';
|
|
7
|
+
import pluralize from 'pluralize';
|
|
8
|
+
import { Counter, Observer } from '@diia-inhouse/diia-metrics';
|
|
9
|
+
import { Env, EnvService } from '@diia-inhouse/env';
|
|
10
|
+
import { ApplicationHooks } from './applicationHooks.js';
|
|
11
|
+
import { getBaseDeps } from './baseDeps.js';
|
|
12
|
+
import { nodeEnvAllowedFields } from './metrics.js';
|
|
13
|
+
// oxlint-disable-next-line typescript/unbound-method
|
|
14
|
+
const { camelCase, upperFirst } = lodash;
|
|
15
|
+
const { singular } = pluralize;
|
|
16
|
+
const requireFromHere = createRequire(import.meta.url);
|
|
17
|
+
export class Application extends ApplicationHooks {
|
|
19
18
|
serviceName;
|
|
20
19
|
nodeTracerProvider;
|
|
21
20
|
container;
|
|
@@ -39,19 +38,18 @@ class Application extends applicationHooks_1.ApplicationHooks {
|
|
|
39
38
|
super();
|
|
40
39
|
this.serviceName = serviceName;
|
|
41
40
|
this.nodeTracerProvider = nodeTracerProvider;
|
|
42
|
-
this.baseContainer =
|
|
43
|
-
serviceName:
|
|
44
|
-
systemServiceName:
|
|
45
|
-
hostName:
|
|
46
|
-
envService:
|
|
41
|
+
this.baseContainer = createContainer({ injectionMode: InjectionMode.CLASSIC }).register({
|
|
42
|
+
serviceName: asValue(this.serviceName),
|
|
43
|
+
systemServiceName: asValue(EnvService.getVar('APP_NAME', 'string', null) || this.serviceName),
|
|
44
|
+
hostName: asValue(EnvService.getVar('POD_NAME', 'string', null) || hostname()),
|
|
45
|
+
envService: asClass(EnvService).singleton(),
|
|
47
46
|
// prettier-ignore
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
injector: () => ({ options: loggerOptions }),
|
|
47
|
+
logger: asClass(requireFromHere(loggerPkg).default, {
|
|
48
|
+
injector: () => ({ options: { redactDisabled: EnvService.getVar('NODE_ENV', 'string') === Env.Sandbox, ...loggerOptions } }),
|
|
51
49
|
}).singleton(),
|
|
52
|
-
asyncLocalStorage:
|
|
50
|
+
asyncLocalStorage: asValue(new AsyncLocalStorage()),
|
|
53
51
|
});
|
|
54
|
-
this.nodeEnvObserver = new
|
|
52
|
+
this.nodeEnvObserver = new Observer('diia_node_env', nodeEnvAllowedFields, 'Indicates the NODE_ENV environment value', {
|
|
55
53
|
onCollect: () => ({
|
|
56
54
|
labels: { env: this.baseContainer.resolve('envService').getEnv() },
|
|
57
55
|
value: 1,
|
|
@@ -105,17 +103,17 @@ class Application extends applicationHooks_1.ApplicationHooks {
|
|
|
105
103
|
}
|
|
106
104
|
defaultNameFormatter(folderName, depsDir) {
|
|
107
105
|
return (_, descriptor) => {
|
|
108
|
-
const parsedPath =
|
|
106
|
+
const parsedPath = path.parse(descriptor.path);
|
|
109
107
|
const fileName = parsedPath.name;
|
|
110
108
|
const dependencyPath = parsedPath.dir
|
|
111
|
-
.split(`${depsDir ?? this.getDepsDir()}${
|
|
112
|
-
.split(
|
|
113
|
-
.map((p) =>
|
|
109
|
+
.split(`${depsDir ?? this.getDepsDir()}${path.sep}${folderName}`)[1]
|
|
110
|
+
.split(path.sep)
|
|
111
|
+
.map((p) => upperFirst(p));
|
|
114
112
|
if (fileName !== 'index') {
|
|
115
|
-
dependencyPath.push(
|
|
113
|
+
dependencyPath.push(upperFirst(fileName));
|
|
116
114
|
}
|
|
117
|
-
const dependencyType =
|
|
118
|
-
return
|
|
115
|
+
const dependencyType = upperFirst(singular(folderName));
|
|
116
|
+
return camelCase(`${dependencyPath.join('')}${dependencyType}`);
|
|
119
117
|
};
|
|
120
118
|
}
|
|
121
119
|
extractDepsFromFolder(options) {
|
|
@@ -126,7 +124,7 @@ class Application extends applicationHooks_1.ApplicationHooks {
|
|
|
126
124
|
fileMask = `{*.js,${adapter}/**/*.js}`;
|
|
127
125
|
}
|
|
128
126
|
const directory = `${depsDir ?? this.getDepsDir()}/${folderName}/${fileMask}`;
|
|
129
|
-
const modules =
|
|
127
|
+
const modules = listModules(directory);
|
|
130
128
|
return modules;
|
|
131
129
|
}
|
|
132
130
|
async extractDependenciesFromModules(modules, depsDir) {
|
|
@@ -142,7 +140,7 @@ class Application extends applicationHooks_1.ApplicationHooks {
|
|
|
142
140
|
const { folderName, filePath, file } = dep;
|
|
143
141
|
const options = this.defaultFoldersWithDeps[folderName] ?? { folderName };
|
|
144
142
|
const { groupName, nameFormatter = this.defaultNameFormatter(folderName, depsDir) } = options;
|
|
145
|
-
const { name } =
|
|
143
|
+
const { name } = path.parse(filePath);
|
|
146
144
|
const registrationName = nameFormatter(name, { path: filePath });
|
|
147
145
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
148
146
|
const module = await file();
|
|
@@ -161,7 +159,7 @@ class Application extends applicationHooks_1.ApplicationHooks {
|
|
|
161
159
|
for (const module of modules) {
|
|
162
160
|
const { name, path: modulePath } = module;
|
|
163
161
|
const registrationName = nameFormatter(name, { ...module, value: '' });
|
|
164
|
-
const dependency = await import(
|
|
162
|
+
const dependency = await import(path.resolve(modulePath));
|
|
165
163
|
const defaultExport = dependency.default?.default ?? dependency.default;
|
|
166
164
|
if (typeof defaultExport === 'function') {
|
|
167
165
|
dependencies.push({ groupName, registrationName, dependency: defaultExport });
|
|
@@ -171,7 +169,7 @@ class Application extends applicationHooks_1.ApplicationHooks {
|
|
|
171
169
|
return this;
|
|
172
170
|
}
|
|
173
171
|
registerDependency(dependency, registrationName, groupName) {
|
|
174
|
-
this.baseContainer.register(registrationName,
|
|
172
|
+
this.baseContainer.register(registrationName, asClass(dependency, {
|
|
175
173
|
injector: (c) => {
|
|
176
174
|
const logger = c.resolve('logger');
|
|
177
175
|
const childLogger = logger.child?.({ regName: registrationName });
|
|
@@ -184,12 +182,12 @@ class Application extends applicationHooks_1.ApplicationHooks {
|
|
|
184
182
|
}
|
|
185
183
|
registerGroup(groupName) {
|
|
186
184
|
if (!Object.keys(this.baseContainer.registrations).includes(groupName)) {
|
|
187
|
-
this.baseContainer.register(groupName,
|
|
185
|
+
this.baseContainer.register(groupName, asValue([]));
|
|
188
186
|
}
|
|
189
187
|
this.groupedDepsNames[groupName] = this.groupedDepsNames[groupName] || [];
|
|
190
188
|
}
|
|
191
189
|
getDepsDir() {
|
|
192
|
-
return
|
|
190
|
+
return path.resolve(this.config?.depsDir ?? 'dist');
|
|
193
191
|
}
|
|
194
192
|
registerDependencies(dependencies) {
|
|
195
193
|
for (const dependency of dependencies) {
|
|
@@ -215,7 +213,7 @@ class Application extends applicationHooks_1.ApplicationHooks {
|
|
|
215
213
|
const { ExternalCommunicator, ExternalEventBus, ScheduledTask, EventBus, Task } = await import('@diia-inhouse/diia-queue');
|
|
216
214
|
asyncCommunicationClasses.push(ExternalCommunicator, ExternalEventBus, ScheduledTask, EventBus, Task);
|
|
217
215
|
}
|
|
218
|
-
return await
|
|
216
|
+
return await getBaseDeps(config);
|
|
219
217
|
}
|
|
220
218
|
async start() {
|
|
221
219
|
if (!this.container) {
|
|
@@ -278,14 +276,14 @@ class Application extends applicationHooks_1.ApplicationHooks {
|
|
|
278
276
|
process.on('SIGQUIT', (signal) => this.onShutDown(`On ${signal} shutdown`));
|
|
279
277
|
process.on('SIGTERM', (signal) => this.onShutDown(`On ${signal} shutdown`));
|
|
280
278
|
}
|
|
281
|
-
const UncaughtExceptionMetric = new
|
|
279
|
+
const UncaughtExceptionMetric = new Counter('uncaught_exceptions_total', [], 'Indicates the number of uncaught exceptions', {
|
|
282
280
|
registry: this.baseContainer.resolve('metrics').pushGatewayRegistry,
|
|
283
281
|
});
|
|
284
282
|
process.on('uncaughtException', async (err) => {
|
|
285
283
|
UncaughtExceptionMetric.increment({});
|
|
286
284
|
this.baseContainer?.resolve('logger').error('On uncaughtException', { err });
|
|
287
285
|
});
|
|
288
|
-
const UnhandledRejectionMetric = new
|
|
286
|
+
const UnhandledRejectionMetric = new Counter('unhandled_rejections_total', [], 'Indicates the number of unhandled rejections', {
|
|
289
287
|
registry: this.baseContainer.resolve('metrics').pushGatewayRegistry,
|
|
290
288
|
});
|
|
291
289
|
process.on('unhandledRejection', async (err) => {
|
|
@@ -306,10 +304,8 @@ class Application extends applicationHooks_1.ApplicationHooks {
|
|
|
306
304
|
catch (err) {
|
|
307
305
|
this.baseContainer?.resolve('logger').error('Failed to stop service. Shutdown completed', { err });
|
|
308
306
|
}
|
|
309
|
-
// eslint-disable-next-line unicorn/no-process-exit
|
|
310
307
|
setImmediate(() => process.exit(error ? 1 : 0));
|
|
311
308
|
}
|
|
312
309
|
}
|
|
313
|
-
|
|
314
|
-
exports.default = Application;
|
|
310
|
+
export default Application;
|
|
315
311
|
//# sourceMappingURL=application.js.map
|
package/dist/application.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":";;;;;;AAAA,uDAAoD;AACpD,qCAAkC;AAClC,0DAA4B;AAG5B,mCAUe;AAEf,mCAA8C;AAC9C,yCAAoC;AAGpC,6DAA6E;AAC7E,2CAA8C;AAG9C,yDAAqD;AACrD,yCAAwC;AAcxC,uCAAkE;AAElE,MAAa,WAA6C,SAAQ,mCAA0B;IA0BnE;IACA;IA1BrB,SAAS,CAAsC;IAErC,yBAAyB,GAAqB,EAAE,CAAA;IAElD,MAAM,CAA0B;IAEhC,aAAa,CAAoD;IAEjE,gBAAgB,GAA6B,EAAE,CAAA;IAE/C,sBAAsB,GAA8C;QACxE,OAAO,EAAE,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE;QAC3D,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE;QACrD,cAAc,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,mBAAmB,EAAE;QAChF,cAAc,EAAE,EAAE,UAAU,EAAE,gBAAgB,EAAE,SAAS,EAAE,mBAAmB,EAAE;QAChF,sBAAsB,EAAE,EAAE,UAAU,EAAE,wBAAwB,EAAE,SAAS,EAAE,2BAA2B,EAAE;QACxG,QAAQ,EAAE,EAAE,UAAU,EAAE,UAAU,EAAE;QACpC,WAAW,EAAE,EAAE,UAAU,EAAE,aAAa,EAAE,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE;QACzE,YAAY,EAAE,EAAE,UAAU,EAAE,cAAc,EAAE,aAAa,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,YAAY,EAAE;QAC1F,KAAK,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE;KACjC,CAAA;IAEgB,eAAe,CAA4B;IAE5D,YACqB,WAAmB,EACnB,kBAAsC,EACvD,aAA4B,EAC5B,SAAS,GAAG,2BAA2B;QAEvC,KAAK,EAAE,CAAA;QALU,gBAAW,GAAX,WAAW,CAAQ;QACnB,uBAAkB,GAAlB,kBAAkB,CAAoB;QAKvD,IAAI,CAAC,aAAa,GAAG,IAAA,wBAAe,EAAoC,EAAE,aAAa,EAAE,sBAAa,CAAC,OAAO,EAAE,CAAC,CAAC,QAAQ,CAAC;YACvH,WAAW,EAAE,IAAA,gBAAO,EAAC,IAAI,CAAC,WAAW,CAAC;YACtC,iBAAiB,EAAE,IAAA,gBAAO,EAAC,gBAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC;YAC7F,QAAQ,EAAE,IAAA,gBAAO,EAAC,gBAAU,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,IAAA,kBAAQ,GAAE,CAAC;YAC9E,UAAU,EAAE,IAAA,gBAAO,EAAC,gBAAU,CAAC,CAAC,SAAS,EAAE;YAE3C,kBAAkB;YAClB,+DAA+D;YAC/D,MAAM,EAAE,IAAA,gBAAO,EAAC,OAAO,CAAC,SAAS,CAAC,CAAC,OAA4B,EAAE;gBAC7D,QAAQ,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC;aAC/C,CAAC,CAAC,SAAS,EAAE;YACd,iBAAiB,EAAE,IAAA,gBAAO,EAAC,IAAI,oCAAiB,EAAW,CAAC;SAC/D,CAAC,CAAA;QACF,IAAI,CAAC,eAAe,GAAG,IAAI,uBAAQ,CAC/B,eAAe,EACf,8BAAoB,EACpB,0CAA0C,EAC1C;YACI,SAAS,EAAE,GAAuE,EAAE,CAAC,CAAC;gBAClF,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE;gBAClE,KAAK,EAAE,CAAC;aACX,CAAC;SACL,CACJ,CAAA;IACL,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAiD;QAC7D,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,CAAA;QAE3D,MAAM,UAAU,CAAC,IAAI,EAAE,CAAA;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;QAEzD,OAAO,IAAI,CAAA;IACf,CAAC;IAED,WAAW,CAAC,MAAwC;QAChD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;QACxD,CAAC;QAED,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACtC,CAAC;IAED,SAAS;QACL,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAA;QAC1D,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAA;IACtB,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAsE;QAChF,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;QACvD,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAA;QAEzC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QAErC,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;QAE9D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa;aAC9B,WAAW,EAAyB;aACpC,QAAQ,CAAC,OAAsD,CAAC,CAAA;QAErE,OAAO,IAAI,CAAA;IACf,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,YAAoC;QACjD,IAAI,CAAC,iBAAiB,EAAE,CAAA;QAExB,IAAI,YAAY,EAAE,MAAM,EAAE,CAAC;YACvB,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAA;QAC3C,CAAC;aAAM,CAAC;YACJ,MAAM,IAAI,CAAC,sBAAsB,EAAE,CAAA;QACvC,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,aAAa,EAAE,CAAA;QAEhC,OAAO;YACH,GAAG,GAAG;YACN,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAC5B,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC;SAC7B,CAAA;IACL,CAAC;IAED,oBAAoB,CAAC,UAAkB,EAAE,OAAgB;QACrD,OAAO,CAAC,CAAC,EAAE,UAAU,EAAE,EAAE;YACrB,MAAM,UAAU,GAAG,mBAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,CAAA;YAC9C,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAA;YAChC,MAAM,cAAc,GAAG,UAAU,CAAC,GAAG;iBAChC,KAAK,CAAC,GAAG,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,GAAG,mBAAI,CAAC,GAAG,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;iBACnE,KAAK,CAAC,mBAAI,CAAC,GAAG,CAAC;iBACf,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAA,mBAAU,EAAC,CAAC,CAAC,CAAC,CAAA;YAE9B,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;gBACvB,cAAc,CAAC,IAAI,CAAC,IAAA,mBAAU,EAAC,QAAQ,CAAC,CAAC,CAAA;YAC7C,CAAC;YAED,MAAM,cAAc,GAAG,IAAA,mBAAU,EAAC,IAAA,oBAAQ,EAAC,UAAU,CAAC,CAAC,CAAA;YAEvD,OAAO,IAAA,kBAAS,EAAC,GAAG,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,cAAc,EAAE,CAAC,CAAA;QACnE,CAAC,CAAA;IACL,CAAC;IAED,qBAAqB,CAAC,OAAkC;QACpD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,OAAO,CAAA;QACvC,IAAI,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,SAAS,CAAA;QAE5C,IAAI,UAAU,KAAK,cAAc,EAAE,CAAC;YAChC,MAAM,OAAO,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAA;YAE1D,QAAQ,GAAG,SAAS,OAAO,WAAW,CAAA;QAC1C,CAAC;QAED,MAAM,SAAS,GAAG,GAAG,OAAO,IAAI,IAAI,CAAC,UAAU,EAAE,IAAI,UAAU,IAAI,QAAQ,EAAE,CAAA;QAC7E,MAAM,OAAO,GAAG,IAAA,oBAAW,EAAC,SAAS,CAAC,CAAA;QAEtC,OAAO,OAAO,CAAA;IAClB,CAAC;IAED,KAAK,CAAC,8BAA8B,CAChC,OAA+D,EAC/D,OAAe;QAEf,OAAO,GAAG,IAAI,CAAC,gCAAgC,CAAC,OAAO,CAAC,CAAA;QAExD,MAAM,gBAAgB,GAA6E,EAAE,CAAA;QACrG,KAAK,MAAM,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;YACxD,KAAK,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnD,gBAAgB,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;YACzD,CAAC;QACL,CAAC;QAED,MAAM,YAAY,GAA0B,EAAE,CAAA;QAC9C,KAAK,MAAM,GAAG,IAAI,gBAAgB,EAAE,CAAC;YACjC,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,GAAG,CAAA;YAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,EAAE,CAAA;YAEzE,MAAM,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,GAAG,OAAO,CAAA;YAC7F,MAAM,EAAE,IAAI,EAAE,GAAG,mBAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;YACrC,MAAM,gBAAgB,GAAG,aAAa,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAA4B,CAAC,CAAA;YAE1F,8DAA8D;YAC9D,MAAM,MAAM,GAAQ,MAAM,IAAI,EAAE,CAAA;YAEhC,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO,EAAE,OAAO,IAAI,MAAM,CAAC,OAAO,CAAA;YAE/D,YAAY,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAA;QAC5F,CAAC;QAED,OAAO,YAAY,CAAA;IACvB,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,OAAkC;QACvD,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,SAAS,EAAE,GAAG,OAAO,CAAA;QAClH,MAAM,OAAO,GAAG,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAA;QAEnD,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;QACjC,CAAC;QAED,MAAM,YAAY,GAA0B,EAAE,CAAA;QAC9C,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,MAAM,CAAA;YACzC,MAAM,gBAAgB,GAAG,aAAa,CAAC,IAAI,EAAE,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAA;YACtE,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,mBAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;YACzD,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,EAAE,OAAO,IAAI,UAAU,CAAC,OAAO,CAAA;YAEvE,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE,CAAC;gBACtC,YAAY,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,aAAa,EAAE,CAAC,CAAA;YACjF,CAAC;QACL,CAAC;QAED,IAAI,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAA;QAEvC,OAAO,IAAI,CAAA;IACf,CAAC;IAEO,kBAAkB,CAAC,UAA+B,EAAE,gBAAwB,EAAE,SAA6B;QAC/G,IAAI,CAAC,aAAa,CAAC,QAAQ,CACvB,gBAAgB,EAChB,IAAA,gBAAO,EAAC,UAAU,EAAE;YAChB,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;gBACZ,MAAM,MAAM,GAAG,CAAC,CAAC,OAAO,CAAS,QAAQ,CAAC,CAAA;gBAC1C,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,gBAAgB,EAAE,CAAC,CAAA;gBAEjE,OAAO,EAAE,MAAM,EAAE,WAAW,IAAI,MAAM,EAAE,CAAA;YAC5C,CAAC;SACJ,CAAC,CAAC,SAAS,EAAE,CACjB,CAAA;QAED,IAAI,SAAS,EAAE,CAAC;YACZ,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAA;QAC3D,CAAC;IACL,CAAC;IAEO,aAAa,CAAC,SAAiB;QACnC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;YACrE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAA,gBAAO,EAAC,EAAE,CAAC,CAAC,CAAA;QACvD,CAAC;QAED,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,gBAAgB,CAAC,SAAS,CAAC,IAAI,EAAE,CAAA;IAC7E,CAAC;IAEO,UAAU;QACd,OAAO,mBAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,IAAI,MAAM,CAAC,CAAA;IACvD,CAAC;IAEO,oBAAoB,CAAC,YAAmC;QAC5D,KAAK,MAAM,UAAU,IAAI,YAAY,EAAE,CAAC;YACpC,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,UAAU,CAAA;YAE7E,IAAI,SAAS,EAAE,CAAC;gBACZ,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAA;YACjC,CAAC;YAED,IAAI,OAAO,aAAa,KAAK,UAAU,EAAE,CAAC;gBACtC,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,gBAAgB,EAAE,SAAS,CAAC,CAAA;YACvE,CAAC;QACL,CAAC;QAED,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,CAAA;QACxG,KAAK,MAAM,EAAE,SAAS,EAAE,IAAI,gBAAgB,EAAE,CAAC;YAC3C,IAAI,CAAC,aAAa,CAAC,SAAU,CAAC,CAAA;QAClC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,WAAW;QACrB,MAAM,EAAE,MAAM,EAAE,yBAAyB,EAAE,GAAG,IAAI,CAAA;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACV,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAA;QACtE,CAAC;QAED,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;YAChB,MAAM,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,MAAM,MAAM,CAAC,0BAA0B,CAAC,CAAA;YAE1H,yBAAyB,CAAC,IAAI,CAAC,oBAAoB,EAAE,gBAAgB,EAAE,aAAa,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;QACzG,CAAC;QAED,OAAO,MAAM,IAAA,sBAAW,EAAC,MAAM,CAAC,CAAA;IACpC,CAAC;IAEO,KAAK,CAAC,KAAK;QACf,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YAClB,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;QACnE,CAAC;QAED,KAAK,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;YAC/E,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,OAAO,CAAW,aAAa,CAAC,CAAA;YAE7D,KAAK,MAAM,UAAU,IAAI,WAAW,EAAE,CAAC;gBACnC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAA;YAClD,CAAC;QACL,CAAC;QAED,OAAO,MAAM,IAAI,CAAC,eAAe,EAAE,CAAA;IACvC,CAAC;IAEO,KAAK,CAAC,IAAI;QACd,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,cAAc,EAAE,CAAA;QAC/B,CAAC;gBAAS,CAAC;YACP,IAAI,CAAC;gBACD,MAAM,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,CAAA;YAC9C,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACX,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAClF,CAAC;QACL,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,sBAAsB;QAChC,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE,CAAC;YAC9D,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAA;QACzC,CAAC;IACL,CAAC;IAEO,aAAa;QACjB,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,oEAAoE,CAAC,CAAA;QACzF,CAAC;QAED,OAAO;YACH,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,SAAS,EAAE,IAAI,CAAC,SAAS;SAC5B,CAAA;IACL,CAAC;IAED,4EAA4E;IACpE,gCAAgC,CAAC,OAA+D;QACpG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YACxB,OAAO,OAAO,CAAA;QAClB,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAA;QAClE,MAAM,oBAAoB,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,EAAE,EAAE;YACpF,MAAM,sBAAsB,GAAG,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;YAClE,MAAM,aAAa,GAAG,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAA;YAC/D,MAAM,yBAAyB,GAAG,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,eAAe,GAAG,CAAC,CAAA;YAExF,OAAO,sBAAsB,IAAI,CAAC,CAAC,aAAa,IAAI,yBAAyB,CAAC,CAAA;QAClF,CAAC,CAAC,CAAA;QAEF,OAAO,CAAC,YAAY,GAAG,MAAM,CAAC,WAAW,CAAC,oBAAoB,CAAC,CAAA;QAE/D,OAAO,OAAO,CAAA;IAClB,CAAC;IAEO,iBAAiB;QACrB,MAAM,wBAAwB,GAAG,IAAI,CAAC,MAAM,EAAE,wBAAwB,IAAI,IAAI,CAAA;QAC9E,IAAI,wBAAwB,EAAE,CAAC;YAC3B,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,MAAM,WAAW,CAAC,CAAC,CAAA;YAC1E,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,MAAM,WAAW,CAAC,CAAC,CAAA;YAC3E,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,MAAM,WAAW,CAAC,CAAC,CAAA;QAC/E,CAAC;QAED,MAAM,uBAAuB,GAAG,IAAI,sBAAO,CAAC,2BAA2B,EAAE,EAAE,EAAE,6CAA6C,EAAE;YACxH,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,mBAAmB;SACtE,CAAC,CAAA;QAEF,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;YAC1C,uBAAuB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YACrC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,sBAAsB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;QAChF,CAAC,CAAC,CAAA;QAEF,MAAM,wBAAwB,GAAG,IAAI,sBAAO,CAAC,4BAA4B,EAAE,EAAE,EAAE,8CAA8C,EAAE;YAC3H,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,mBAAmB;SACtE,CAAC,CAAA;QAEF,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,KAAK,EAAE,GAAU,EAAE,EAAE;YAClD,wBAAwB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAA;YACtC,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;QACjF,CAAC,CAAC,CAAA;IACN,CAAC;IAEO,KAAK,CAAC,UAAU,CAAC,GAAW,EAAE,KAAe;QACjD,IAAI,KAAK,EAAE,CAAC;YACR,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,CAAC,CAAA;QACpE,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QACnD,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,CAAC,IAAI,EAAE,CAAA;QACrB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACX,IAAI,CAAC,aAAa,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,4CAA4C,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;QACtG,CAAC;QAED,mDAAmD;QACnD,YAAY,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACnD,CAAC;CACJ;AAhYD,kCAgYC;AAED,kBAAe,WAAW,CAAA"}
|
|
1
|
+
{"version":3,"file":"application.js","sourceRoot":"","sources":["../src/application.ts"],"names":[],"mappings":"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"}
|
package/dist/applicationHooks.js
CHANGED
|
@@ -1,16 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
};
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
const env_1 = require("@diia-inhouse/env");
|
|
9
|
-
const utils_1 = require("@diia-inhouse/utils");
|
|
10
|
-
const grpc_1 = require("./grpc");
|
|
11
|
-
const moleculerWrapper_1 = __importDefault(require("./moleculer/moleculerWrapper"));
|
|
12
|
-
class ApplicationHooks {
|
|
13
|
-
syncCommunicationClasses = [moleculerWrapper_1.default, grpc_1.GrpcService];
|
|
1
|
+
import { MetricsService } from '@diia-inhouse/diia-metrics';
|
|
2
|
+
import { EnvService } from '@diia-inhouse/env';
|
|
3
|
+
import { guards } from '@diia-inhouse/utils';
|
|
4
|
+
import { GrpcService } from './grpc/index.js';
|
|
5
|
+
import MoleculerService from './moleculer/moleculerWrapper.js';
|
|
6
|
+
export class ApplicationHooks {
|
|
7
|
+
syncCommunicationClasses = [MoleculerService, GrpcService];
|
|
14
8
|
async runOnStartHooks() {
|
|
15
9
|
if (!this.container) {
|
|
16
10
|
throw new Error('Container should be initialized before start hooks');
|
|
@@ -21,10 +15,10 @@ class ApplicationHooks {
|
|
|
21
15
|
const onInitHooksInOrder = [[], [], [], [], []];
|
|
22
16
|
for (const name of registeredObjects) {
|
|
23
17
|
const instance = this.container.resolve(name);
|
|
24
|
-
if (
|
|
18
|
+
if (guards.hasOnRegistrationsFinishedHook(instance)) {
|
|
25
19
|
onRegistrationsFinishedHooks.push(instance);
|
|
26
20
|
}
|
|
27
|
-
if (
|
|
21
|
+
if (guards.hasOnInitHook(instance)) {
|
|
28
22
|
const order = this.getOnInitOrder(instance);
|
|
29
23
|
onInitHooksInOrder[order].push({ name: name, instance });
|
|
30
24
|
}
|
|
@@ -57,10 +51,10 @@ class ApplicationHooks {
|
|
|
57
51
|
const onBeforeAppShutdownInstances = [];
|
|
58
52
|
for (const name of registeredInstances) {
|
|
59
53
|
const instance = this.container.resolve(name);
|
|
60
|
-
if (
|
|
54
|
+
if (guards.hasOnBeforeApplicationShutdownHook(instance)) {
|
|
61
55
|
onBeforeAppShutdownInstances.push(instance);
|
|
62
56
|
}
|
|
63
|
-
if (
|
|
57
|
+
if (guards.hasOnDestroyHook(instance)) {
|
|
64
58
|
const order = this.getOnDestroyOrder(instance);
|
|
65
59
|
onDestroyHooksInOrder[order] ??= [];
|
|
66
60
|
onDestroyHooksInOrder[order].push(instance);
|
|
@@ -102,13 +96,14 @@ class ApplicationHooks {
|
|
|
102
96
|
}
|
|
103
97
|
async allSettledHookTasks(tasks) {
|
|
104
98
|
const results = await Promise.allSettled(tasks);
|
|
105
|
-
|
|
99
|
+
// oxlint-disable-next-line typescript/unbound-method
|
|
100
|
+
return results.filter(guards.isSettledError).map((err) => new Error(err.reason));
|
|
106
101
|
}
|
|
107
102
|
getOnInitOrder(instance) {
|
|
108
|
-
if (instance.constructor.name ===
|
|
103
|
+
if (instance.constructor.name === EnvService.name) {
|
|
109
104
|
return 0;
|
|
110
105
|
}
|
|
111
|
-
if (instance.constructor.name ===
|
|
106
|
+
if (instance.constructor.name === MetricsService.name) {
|
|
112
107
|
return 1;
|
|
113
108
|
}
|
|
114
109
|
if (this.syncCommunicationClasses.some((item) => instance.constructor.name === item.name)) {
|
|
@@ -125,5 +120,4 @@ class ApplicationHooks {
|
|
|
125
120
|
return Math.abs(onInitOrder - maxInitOrder);
|
|
126
121
|
}
|
|
127
122
|
}
|
|
128
|
-
exports.ApplicationHooks = ApplicationHooks;
|
|
129
123
|
//# sourceMappingURL=applicationHooks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"applicationHooks.js","sourceRoot":"","sources":["../src/applicationHooks.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"applicationHooks.js","sourceRoot":"","sources":["../src/applicationHooks.ts"],"names":[],"mappings":"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"}
|