@lad-tech/nsc-toolkit 1.28.0 → 1.28.2
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/.vscode/launch.json +77 -0
- package/.vscode/tasks.json +25 -0
- package/package.json +1 -1
- package/CHANGELOG.md +0 -6
- package/dist/Client.js +0 -292
- package/dist/Container.js +0 -124
- package/dist/Meter.js +0 -58
- package/dist/Method.js +0 -7
- package/dist/Root.js +0 -120
- package/dist/Service.js +0 -677
- package/dist/StreamBatchMsgFetcher.js +0 -17
- package/dist/StreamManager.js +0 -173
- package/dist/StreamOptions/BufferToJsonTransform.js +0 -34
- package/dist/StreamOptions/JsonToBufferTransform.js +0 -11
- package/dist/StreamOptions/index.js +0 -19
- package/dist/StreamSingleMsgFetcher.js +0 -28
- package/dist/Union/Broker.js +0 -95
- package/dist/Union/ConsumerApi.js +0 -28
- package/dist/Union/JetStreamClient.js +0 -40
- package/dist/Union/JetStreamManager.js +0 -26
- package/dist/Union/StreamApi.js +0 -46
- package/dist/Union/Subscription.js +0 -47
- package/dist/Union/index.js +0 -18
- package/dist/index.js +0 -24
- package/dist/injector.js +0 -65
- package/dist/interfaces.js +0 -16
- package/dist/types/Client.d.ts +0 -32
- package/dist/types/Container.d.ts +0 -54
- package/dist/types/Meter.d.ts +0 -11
- package/dist/types/Method.d.ts +0 -6
- package/dist/types/Root.d.ts +0 -29
- package/dist/types/Service.d.ts +0 -140
- package/dist/types/StreamBatchMsgFetcher.d.ts +0 -13
- package/dist/types/StreamManager.d.ts +0 -26
- package/dist/types/StreamOptions/BufferToJsonTransform.d.ts +0 -14
- package/dist/types/StreamOptions/JsonToBufferTransform.d.ts +0 -6
- package/dist/types/StreamOptions/index.d.ts +0 -2
- package/dist/types/StreamSingleMsgFetcher.d.ts +0 -16
- package/dist/types/Union/Broker.d.ts +0 -32
- package/dist/types/Union/ConsumerApi.d.ts +0 -16
- package/dist/types/Union/JetStreamClient.d.ts +0 -18
- package/dist/types/Union/JetStreamManager.d.ts +0 -12
- package/dist/types/Union/StreamApi.d.ts +0 -16
- package/dist/types/Union/Subscription.d.ts +0 -19
- package/dist/types/Union/index.d.ts +0 -1
- package/dist/types/index.d.ts +0 -7
- package/dist/types/injector.d.ts +0 -14
- package/dist/types/interfaces.d.ts +0 -181
package/dist/Root.js
DELETED
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Root = void 0;
|
|
4
|
-
const toolbelt_1 = require("@lad-tech/toolbelt");
|
|
5
|
-
const opentelemetry = require("@opentelemetry/api");
|
|
6
|
-
const interfaces_1 = require("./interfaces");
|
|
7
|
-
const Union_1 = require("./Union");
|
|
8
|
-
class Root {
|
|
9
|
-
constructor(broker, outputFormatter) {
|
|
10
|
-
this.SERVICE_SUBJECT_FOR_GET_HTTP_SETTINGS = 'get_http_settings';
|
|
11
|
-
this.CACHE_SERVICE_KEY = 'CACHE';
|
|
12
|
-
this.SUBJECT_DELIMITER = '.';
|
|
13
|
-
if (!broker) {
|
|
14
|
-
this.broker = new Union_1.UnionBroker();
|
|
15
|
-
}
|
|
16
|
-
else {
|
|
17
|
-
this.broker = broker;
|
|
18
|
-
}
|
|
19
|
-
this.logger = new toolbelt_1.Logs.Logger({ outputFormatter });
|
|
20
|
-
}
|
|
21
|
-
castToNumber(value) {
|
|
22
|
-
const result = +value;
|
|
23
|
-
if (isNaN(result)) {
|
|
24
|
-
throw new Error(`Невозможно привести значение ${value} к числу`);
|
|
25
|
-
}
|
|
26
|
-
return result;
|
|
27
|
-
}
|
|
28
|
-
getSettingFromEnv(name, required = true) {
|
|
29
|
-
const value = process.env[name];
|
|
30
|
-
if (!value && required) {
|
|
31
|
-
throw new Error(`Не установлена обязательная настройка: ${name}`);
|
|
32
|
-
}
|
|
33
|
-
return value;
|
|
34
|
-
}
|
|
35
|
-
/**
|
|
36
|
-
* Make opentelemetry context from baggagge
|
|
37
|
-
*/
|
|
38
|
-
getContext(baggage) {
|
|
39
|
-
if (baggage) {
|
|
40
|
-
return opentelemetry.trace.setSpanContext(opentelemetry.context.active(), baggage);
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
getExpired(expired, ownTimeout) {
|
|
44
|
-
try {
|
|
45
|
-
if (!expired) {
|
|
46
|
-
const timeout = ownTimeout || this.castToNumber(this.getSettingFromEnv('DEFAULT_REPONSE_TIMEOUT'));
|
|
47
|
-
return Date.now() + timeout;
|
|
48
|
-
}
|
|
49
|
-
if (ownTimeout) {
|
|
50
|
-
const customExpired = Date.now() + ownTimeout;
|
|
51
|
-
return Math.min(customExpired, expired);
|
|
52
|
-
}
|
|
53
|
-
return expired;
|
|
54
|
-
}
|
|
55
|
-
catch (error) {
|
|
56
|
-
this.logger.error(error);
|
|
57
|
-
process.exit(1);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
buildErrorMessage(error, code) {
|
|
61
|
-
let message = '';
|
|
62
|
-
if (error instanceof Error) {
|
|
63
|
-
message = error.message;
|
|
64
|
-
}
|
|
65
|
-
else if (typeof error === 'string') {
|
|
66
|
-
message = error;
|
|
67
|
-
}
|
|
68
|
-
else {
|
|
69
|
-
message = JSON.stringify(error);
|
|
70
|
-
}
|
|
71
|
-
return {
|
|
72
|
-
payload: null,
|
|
73
|
-
error: {
|
|
74
|
-
message,
|
|
75
|
-
code,
|
|
76
|
-
},
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
convertBaggaggeToExternalHeader(baggage) {
|
|
80
|
-
if (!baggage) {
|
|
81
|
-
return {};
|
|
82
|
-
}
|
|
83
|
-
const headers = {};
|
|
84
|
-
if (baggage.expired) {
|
|
85
|
-
headers['nsc-expired'] = baggage.expired;
|
|
86
|
-
}
|
|
87
|
-
if (baggage.requestId) {
|
|
88
|
-
headers['x-request-id'] = baggage.requestId;
|
|
89
|
-
}
|
|
90
|
-
if (baggage.traceId) {
|
|
91
|
-
headers['nsc-trace-id'] = baggage.traceId;
|
|
92
|
-
}
|
|
93
|
-
if (baggage.spanId) {
|
|
94
|
-
headers['nsc-span-id'] = baggage.spanId;
|
|
95
|
-
}
|
|
96
|
-
if (baggage.traceFlags) {
|
|
97
|
-
headers['nsc-trace-flags'] = baggage.traceFlags;
|
|
98
|
-
}
|
|
99
|
-
return headers;
|
|
100
|
-
}
|
|
101
|
-
applyTag(span, tag) {
|
|
102
|
-
if (!tag) {
|
|
103
|
-
return;
|
|
104
|
-
}
|
|
105
|
-
if ((tag === null || tag === void 0 ? void 0 : tag[interfaces_1.TagKey.TYPE]) === 'dbms') {
|
|
106
|
-
span.setAttribute('db.system', tag === null || tag === void 0 ? void 0 : tag[interfaces_1.TagKey.NAME]);
|
|
107
|
-
if (tag === null || tag === void 0 ? void 0 : tag[interfaces_1.TagKey.TARGET]) {
|
|
108
|
-
span.setAttribute('db.name', tag[interfaces_1.TagKey.TARGET]);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
if ((tag === null || tag === void 0 ? void 0 : tag[interfaces_1.TagKey.TYPE]) === 'api') {
|
|
112
|
-
span.setAttribute('net.peer.name', tag === null || tag === void 0 ? void 0 : tag[interfaces_1.TagKey.NAME]);
|
|
113
|
-
if (tag === null || tag === void 0 ? void 0 : tag[interfaces_1.TagKey.TARGET]) {
|
|
114
|
-
span.setAttribute('http.target', tag[interfaces_1.TagKey.TARGET]);
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
exports.Root = Root;
|
|
120
|
-
//# sourceMappingURL=Root.js.map
|