@cryptexlabs/codex-nodejs-common 0.9.3 → 0.9.5
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/lib/package.json +2 -2
- package/lib/src/config/default-config.d.ts +9 -0
- package/lib/src/config/default-config.js +30 -0
- package/lib/src/config/default-config.js.map +1 -1
- package/lib/src/config/logging-config.interface.d.ts +4 -0
- package/lib/src/config/logging-config.interface.js +9 -0
- package/lib/src/config/logging-config.interface.js.map +1 -0
- package/lib/src/config/telemetry-config.interface.d.ts +13 -0
- package/lib/src/config/telemetry-config.interface.js +3 -0
- package/lib/src/config/telemetry-config.interface.js.map +1 -0
- package/lib/src/filter/app-http-exception-filter.d.ts +1 -0
- package/lib/src/filter/app-http-exception-filter.js +6 -1
- package/lib/src/filter/app-http-exception-filter.js.map +1 -1
- package/package.json +2 -2
- package/src/config/default-config.ts +38 -0
- package/src/config/logging-config.interface.ts +10 -0
- package/src/config/telemetry-config.interface.ts +15 -0
- package/src/filter/app-http-exception-filter.ts +10 -2
package/lib/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cryptexlabs/codex-nodejs-common",
|
|
3
|
-
"version": "0.9.
|
|
4
|
-
"description": "Common code for
|
|
3
|
+
"version": "0.9.5",
|
|
4
|
+
"description": "Common code for Codex framework",
|
|
5
5
|
"main": "lib/src/index.js",
|
|
6
6
|
"repository": "git@gitlab.com:cryptexlabs/public/codex-nodejs-common.git",
|
|
7
7
|
"author": "Cryptex Labs",
|
|
@@ -7,6 +7,7 @@ import { UrlInterface } from "./url.interface";
|
|
|
7
7
|
import { PingConfigInterface } from "./ping-config.interface";
|
|
8
8
|
import { ConsumerTypeEnum } from "./consumer-type.enum";
|
|
9
9
|
import { JsonSerializableInterface } from "../message";
|
|
10
|
+
import { TelemetryConfigInterface } from "./telemetry-config.interface";
|
|
10
11
|
export declare class DefaultConfig implements JsonSerializableInterface<any> {
|
|
11
12
|
private readonly _clientId;
|
|
12
13
|
private _appName;
|
|
@@ -37,6 +38,10 @@ export declare class DefaultConfig implements JsonSerializableInterface<any> {
|
|
|
37
38
|
consumerType: ConsumerTypeEnum;
|
|
38
39
|
gpuEnabled: boolean;
|
|
39
40
|
dataDirectory: string;
|
|
41
|
+
serviceName: string;
|
|
42
|
+
logLevel: LOG_LEVEL;
|
|
43
|
+
loggerType: string;
|
|
44
|
+
telemetry: TelemetryConfigInterface;
|
|
40
45
|
};
|
|
41
46
|
protected setup(basePath: string, appPath: string, environment: string): void;
|
|
42
47
|
addEnvFile(fileName: string): this;
|
|
@@ -51,11 +56,15 @@ export declare class DefaultConfig implements JsonSerializableInterface<any> {
|
|
|
51
56
|
get docsEnabled(): boolean;
|
|
52
57
|
get docsPath(): string;
|
|
53
58
|
get kafka(): KafkaConfigInterface;
|
|
59
|
+
get serviceName(): string;
|
|
54
60
|
get environmentName(): string;
|
|
55
61
|
get logLevels(): string[];
|
|
62
|
+
get loggerType(): string;
|
|
63
|
+
get logLevel(): LOG_LEVEL;
|
|
56
64
|
get httpPort(): number;
|
|
57
65
|
get externalHttpPort(): number;
|
|
58
66
|
get metrics(): SwitchConfigInterface & HostConfigInterface;
|
|
67
|
+
get telemetry(): TelemetryConfigInterface;
|
|
59
68
|
get jwt(): JwtConfigInterface;
|
|
60
69
|
get healthzFilePath(): string;
|
|
61
70
|
get elasticsearch(): UrlInterface & PingConfigInterface;
|
|
@@ -49,6 +49,10 @@ let DefaultConfig = class DefaultConfig {
|
|
|
49
49
|
consumerType: this.consumerType,
|
|
50
50
|
gpuEnabled: this.gpuEnabled,
|
|
51
51
|
dataDirectory: this.dataDirectory,
|
|
52
|
+
serviceName: this.serviceName,
|
|
53
|
+
logLevel: this.logLevel,
|
|
54
|
+
loggerType: this.loggerType,
|
|
55
|
+
telemetry: this.telemetry,
|
|
52
56
|
};
|
|
53
57
|
}
|
|
54
58
|
setup(basePath, appPath, environment) {
|
|
@@ -120,12 +124,25 @@ let DefaultConfig = class DefaultConfig {
|
|
|
120
124
|
return new kafka_config_1.KafkaConfig(process.env.KAFKA_ENABLED, process.env.KAFKA_HOST, process.env.KAFKA_PORT, process.env.KAFKA_USERNAME, process.env.KAFKA_PASSWORD, process.env.SASL_MECHANISM, process.env.KAFKA_TOPICS_CONFIG_PATH ||
|
|
121
125
|
`${this._appPath}/config/topics.yaml`, process.env.KAFKA_CLIENT_ID || process.env.POD_NAME || this.appName, process.env.KAFKA_DEFAULT_PARTITIONS, process.env.KAFKA_DEFAULT_ERROR_TOPIC);
|
|
122
126
|
}
|
|
127
|
+
get serviceName() {
|
|
128
|
+
return process.env.SERVICE_NAME;
|
|
129
|
+
}
|
|
123
130
|
get environmentName() {
|
|
124
131
|
return process.env.ENV_NAME;
|
|
125
132
|
}
|
|
126
133
|
get logLevels() {
|
|
127
134
|
return (process.env.LOG_LEVELS || "debug,info,error").trim().split(",");
|
|
128
135
|
}
|
|
136
|
+
get loggerType() {
|
|
137
|
+
return process.env.LOGGER_TYPE || "default";
|
|
138
|
+
}
|
|
139
|
+
get logLevel() {
|
|
140
|
+
return this.logLevels.reduce((prev, curr) => {
|
|
141
|
+
return DEFAULT_LOG_LEVELS[curr] < DEFAULT_LOG_LEVELS[prev]
|
|
142
|
+
? curr
|
|
143
|
+
: prev;
|
|
144
|
+
}, "info");
|
|
145
|
+
}
|
|
129
146
|
get httpPort() {
|
|
130
147
|
return parseInt(process.env.HTTP_PORT || "3000", 10);
|
|
131
148
|
}
|
|
@@ -137,6 +154,19 @@ let DefaultConfig = class DefaultConfig {
|
|
|
137
154
|
get metrics() {
|
|
138
155
|
return new metrics_host_config_1.MetricsHostConfig(process.env.GRAPHITE_HOST, process.env.GRAPHITE_PORT, process.env.METRICS_ENABLED);
|
|
139
156
|
}
|
|
157
|
+
get telemetry() {
|
|
158
|
+
return {
|
|
159
|
+
metrics: {
|
|
160
|
+
enabled: process.env.TELEMETRY_METRICS_ENABLED === "true",
|
|
161
|
+
path: process.env.TELEMETRY_METRICS_PATH,
|
|
162
|
+
port: parseInt(process.env.TELEMETRY_METRICS_PORT || "8081", 10),
|
|
163
|
+
},
|
|
164
|
+
traces: {
|
|
165
|
+
enabled: process.env.TELEMETRY_TRACE_ENABLED === "true",
|
|
166
|
+
traceUrl: process.env.TELEMETRY_TRACE_URL || "http://localhost:4317",
|
|
167
|
+
},
|
|
168
|
+
};
|
|
169
|
+
}
|
|
140
170
|
get jwt() {
|
|
141
171
|
return new jwt_config_1.JwtConfig(process.env.JWT_VERIFY, process.env.JWT_AUD);
|
|
142
172
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default-config.js","sourceRoot":"","sources":["../../../src/config/default-config.ts"],"names":[],"mappings":";;;;;;;;;;;;AAKA,+DAA0D;AAG1D,yBAAyB;AACzB,mCAAuC;AACvC,iDAA6C;AAE7C,6CAAyC;AAEzC,2CAA4C;AAE5C,iEAA6D;AAE7D,6DAAwD;
|
|
1
|
+
{"version":3,"file":"default-config.js","sourceRoot":"","sources":["../../../src/config/default-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logging-config.interface.js","sourceRoot":"","sources":["../../../src/config/logging-config.interface.ts"],"names":[],"mappings":"AAEA,MAAM,kBAAkB,GAAmC;IACzD,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,EAAE;IACR,IAAI,EAAE,EAAE;IACR,KAAK,EAAE,EAAE;IACT,KAAK,EAAE,EAAE;CACV,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export interface TelemetryConfigInterface {
|
|
2
|
+
metrics: MetricsConfig;
|
|
3
|
+
traces: TracesConfig;
|
|
4
|
+
}
|
|
5
|
+
export interface MetricsConfig {
|
|
6
|
+
enabled: boolean;
|
|
7
|
+
port: number;
|
|
8
|
+
path: string;
|
|
9
|
+
}
|
|
10
|
+
export interface TracesConfig {
|
|
11
|
+
enabled: boolean;
|
|
12
|
+
traceUrl: string;
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"telemetry-config.interface.js","sourceRoot":"","sources":["../../../src/config/telemetry-config.interface.ts"],"names":[],"mappings":""}
|
|
@@ -7,6 +7,7 @@ export declare class AppHttpExceptionFilter extends BaseExceptionFilter {
|
|
|
7
7
|
private readonly fallbackLogger;
|
|
8
8
|
private readonly config;
|
|
9
9
|
constructor(fallbackLocale: Locale, fallbackLogger: LoggerService, config: DefaultConfig, applicationRef?: HttpServer);
|
|
10
|
+
private isDebugLevel;
|
|
10
11
|
catch(exception: any, host: ArgumentsHost): void;
|
|
11
12
|
getDeveloperText(exception: any, locale: any): string;
|
|
12
13
|
}
|
|
@@ -25,6 +25,9 @@ let AppHttpExceptionFilter = class AppHttpExceptionFilter extends core_1.BaseExc
|
|
|
25
25
|
this.fallbackLogger = fallbackLogger;
|
|
26
26
|
this.config = config;
|
|
27
27
|
}
|
|
28
|
+
isDebugLevel() {
|
|
29
|
+
return this.config.logLevels.some((level) => level.toLowerCase() === "debug");
|
|
30
|
+
}
|
|
28
31
|
catch(exception, host) {
|
|
29
32
|
const ctx = host.switchToHttp();
|
|
30
33
|
const request = ctx.getRequest();
|
|
@@ -91,7 +94,9 @@ let AppHttpExceptionFilter = class AppHttpExceptionFilter extends core_1.BaseExc
|
|
|
91
94
|
: undefined;
|
|
92
95
|
developerText = this.getDeveloperText(exception, locale);
|
|
93
96
|
const userMessage = exception.userMessage ? exception.userMessage : "";
|
|
94
|
-
const errorHttpResponse = new response_1.ErrorHttpResponse(status, locale, new response_1.ErrorMessage(locale, locales_1.i18nData, null, null,
|
|
97
|
+
const errorHttpResponse = new response_1.ErrorHttpResponse(status, locale, new response_1.ErrorMessage(locale, locales_1.i18nData, null, null, this.isDebugLevel()
|
|
98
|
+
? developerText
|
|
99
|
+
: "Error unavailable in this context", userMessage), this.isDebugLevel() ? exception.stack || null : null, this.config, correlationId, started);
|
|
95
100
|
response.status(status).json(errorHttpResponse);
|
|
96
101
|
}
|
|
97
102
|
getDeveloperText(exception, locale) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"app-http-exception-filter.js","sourceRoot":"","sources":["../../../src/filter/app-http-exception-filter.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"app-http-exception-filter.js","sourceRoot":"","sources":["../../../src/filter/app-http-exception-filter.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@cryptexlabs/codex-nodejs-common",
|
|
3
|
-
"version": "0.9.
|
|
4
|
-
"description": "Common code for
|
|
3
|
+
"version": "0.9.5",
|
|
4
|
+
"description": "Common code for Codex framework",
|
|
5
5
|
"main": "lib/src/index.js",
|
|
6
6
|
"repository": "git@gitlab.com:cryptexlabs/public/codex-nodejs-common.git",
|
|
7
7
|
"author": "Cryptex Labs",
|
|
@@ -18,6 +18,7 @@ import { ElasticsearchConfig } from "./elasticsearch-config";
|
|
|
18
18
|
import { PingConfigInterface } from "./ping-config.interface";
|
|
19
19
|
import { ConsumerTypeEnum } from "./consumer-type.enum";
|
|
20
20
|
import { JsonSerializableInterface } from "../message";
|
|
21
|
+
import { TelemetryConfigInterface } from "./telemetry-config.interface";
|
|
21
22
|
|
|
22
23
|
@Injectable()
|
|
23
24
|
export class DefaultConfig implements JsonSerializableInterface<any> {
|
|
@@ -63,6 +64,10 @@ export class DefaultConfig implements JsonSerializableInterface<any> {
|
|
|
63
64
|
consumerType: this.consumerType,
|
|
64
65
|
gpuEnabled: this.gpuEnabled,
|
|
65
66
|
dataDirectory: this.dataDirectory,
|
|
67
|
+
serviceName: this.serviceName,
|
|
68
|
+
logLevel: this.logLevel,
|
|
69
|
+
loggerType: this.loggerType,
|
|
70
|
+
telemetry: this.telemetry,
|
|
66
71
|
};
|
|
67
72
|
}
|
|
68
73
|
|
|
@@ -167,6 +172,10 @@ export class DefaultConfig implements JsonSerializableInterface<any> {
|
|
|
167
172
|
);
|
|
168
173
|
}
|
|
169
174
|
|
|
175
|
+
get serviceName(): string {
|
|
176
|
+
return process.env.SERVICE_NAME;
|
|
177
|
+
}
|
|
178
|
+
|
|
170
179
|
public get environmentName(): string {
|
|
171
180
|
return process.env.ENV_NAME;
|
|
172
181
|
}
|
|
@@ -175,6 +184,21 @@ export class DefaultConfig implements JsonSerializableInterface<any> {
|
|
|
175
184
|
return (process.env.LOG_LEVELS || "debug,info,error").trim().split(",");
|
|
176
185
|
}
|
|
177
186
|
|
|
187
|
+
get loggerType(): string {
|
|
188
|
+
return process.env.LOGGER_TYPE || "default";
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
get logLevel(): LOG_LEVEL {
|
|
192
|
+
return this.logLevels.reduce<LOG_LEVEL>(
|
|
193
|
+
(prev: LOG_LEVEL, curr: LOG_LEVEL) => {
|
|
194
|
+
return DEFAULT_LOG_LEVELS[curr] < DEFAULT_LOG_LEVELS[prev]
|
|
195
|
+
? curr
|
|
196
|
+
: prev;
|
|
197
|
+
},
|
|
198
|
+
"info"
|
|
199
|
+
);
|
|
200
|
+
}
|
|
201
|
+
|
|
178
202
|
public get httpPort(): number {
|
|
179
203
|
return parseInt(process.env.HTTP_PORT || "3000", 10);
|
|
180
204
|
}
|
|
@@ -193,6 +217,20 @@ export class DefaultConfig implements JsonSerializableInterface<any> {
|
|
|
193
217
|
);
|
|
194
218
|
}
|
|
195
219
|
|
|
220
|
+
get telemetry(): TelemetryConfigInterface {
|
|
221
|
+
return {
|
|
222
|
+
metrics: {
|
|
223
|
+
enabled: process.env.TELEMETRY_METRICS_ENABLED === "true",
|
|
224
|
+
path: process.env.TELEMETRY_METRICS_PATH,
|
|
225
|
+
port: parseInt(process.env.TELEMETRY_METRICS_PORT || "8081", 10),
|
|
226
|
+
},
|
|
227
|
+
traces: {
|
|
228
|
+
enabled: process.env.TELEMETRY_TRACE_ENABLED === "true",
|
|
229
|
+
traceUrl: process.env.TELEMETRY_TRACE_URL || "http://localhost:4317",
|
|
230
|
+
},
|
|
231
|
+
};
|
|
232
|
+
}
|
|
233
|
+
|
|
196
234
|
public get jwt(): JwtConfigInterface {
|
|
197
235
|
return new JwtConfig(process.env.JWT_VERIFY, process.env.JWT_AUD);
|
|
198
236
|
}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface TelemetryConfigInterface {
|
|
2
|
+
metrics: MetricsConfig;
|
|
3
|
+
traces: TracesConfig;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
export interface MetricsConfig {
|
|
7
|
+
enabled: boolean;
|
|
8
|
+
port: number;
|
|
9
|
+
path: string;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export interface TracesConfig {
|
|
13
|
+
enabled: boolean;
|
|
14
|
+
traceUrl: string;
|
|
15
|
+
}
|
|
@@ -28,6 +28,12 @@ export class AppHttpExceptionFilter extends BaseExceptionFilter {
|
|
|
28
28
|
super(applicationRef);
|
|
29
29
|
}
|
|
30
30
|
|
|
31
|
+
private isDebugLevel(): boolean {
|
|
32
|
+
return this.config.logLevels.some(
|
|
33
|
+
(level) => level.toLowerCase() === "debug"
|
|
34
|
+
);
|
|
35
|
+
}
|
|
36
|
+
|
|
31
37
|
catch(exception: any, host: ArgumentsHost) {
|
|
32
38
|
const ctx = host.switchToHttp();
|
|
33
39
|
const request = ctx.getRequest<Request>();
|
|
@@ -117,10 +123,12 @@ export class AppHttpExceptionFilter extends BaseExceptionFilter {
|
|
|
117
123
|
i18nData,
|
|
118
124
|
null,
|
|
119
125
|
null,
|
|
120
|
-
|
|
126
|
+
this.isDebugLevel()
|
|
127
|
+
? developerText
|
|
128
|
+
: "Error unavailable in this context",
|
|
121
129
|
userMessage
|
|
122
130
|
),
|
|
123
|
-
exception.stack || null,
|
|
131
|
+
this.isDebugLevel() ? exception.stack || null : null,
|
|
124
132
|
this.config,
|
|
125
133
|
correlationId,
|
|
126
134
|
started
|