@cryptexlabs/codex-nodejs-common 0.9.5 → 0.9.6
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 +1 -1
- package/lib/src/config/default-config.d.ts +1 -0
- package/lib/src/config/default-config.js +2 -1
- package/lib/src/config/default-config.js.map +1 -1
- package/lib/src/config/logging-config.interface.d.ts +2 -2
- package/lib/src/config/logging-config.interface.js +4 -1
- package/lib/src/config/logging-config.interface.js.map +1 -1
- package/lib/src/exception/contextual.http.exception.d.ts +6 -0
- package/lib/src/exception/contextual.http.exception.js +12 -0
- package/lib/src/exception/contextual.http.exception.js.map +1 -0
- package/lib/src/exception/index.d.ts +1 -0
- package/lib/src/exception/index.js +1 -0
- package/lib/src/exception/index.js.map +1 -1
- package/lib/src/filter/app-http-exception-filter.js +13 -5
- package/lib/src/filter/app-http-exception-filter.js.map +1 -1
- package/package.json +1 -1
- package/src/config/default-config.ts +1 -0
- package/src/config/logging-config.interface.ts +2 -2
- package/src/exception/contextual.http.exception.ts +12 -0
- package/src/exception/index.ts +1 -0
- package/src/filter/app-http-exception-filter.ts +17 -5
package/lib/package.json
CHANGED
|
@@ -8,6 +8,7 @@ import { PingConfigInterface } from "./ping-config.interface";
|
|
|
8
8
|
import { ConsumerTypeEnum } from "./consumer-type.enum";
|
|
9
9
|
import { JsonSerializableInterface } from "../message";
|
|
10
10
|
import { TelemetryConfigInterface } from "./telemetry-config.interface";
|
|
11
|
+
import { LOG_LEVEL } from "./logging-config.interface";
|
|
11
12
|
export declare class DefaultConfig implements JsonSerializableInterface<any> {
|
|
12
13
|
private readonly _clientId;
|
|
13
14
|
private _appName;
|
|
@@ -18,6 +18,7 @@ const jwt_config_1 = require("./jwt-config");
|
|
|
18
18
|
const common_1 = require("@nestjs/common");
|
|
19
19
|
const elasticsearch_config_1 = require("./elasticsearch-config");
|
|
20
20
|
const consumer_type_enum_1 = require("./consumer-type.enum");
|
|
21
|
+
const logging_config_interface_1 = require("./logging-config.interface");
|
|
21
22
|
let DefaultConfig = class DefaultConfig {
|
|
22
23
|
constructor(basePath, appPath, _clientId, fallbackEnvironment) {
|
|
23
24
|
this._clientId = _clientId;
|
|
@@ -138,7 +139,7 @@ let DefaultConfig = class DefaultConfig {
|
|
|
138
139
|
}
|
|
139
140
|
get logLevel() {
|
|
140
141
|
return this.logLevels.reduce((prev, curr) => {
|
|
141
|
-
return DEFAULT_LOG_LEVELS[curr] < DEFAULT_LOG_LEVELS[prev]
|
|
142
|
+
return logging_config_interface_1.DEFAULT_LOG_LEVELS[curr] < logging_config_interface_1.DEFAULT_LOG_LEVELS[prev]
|
|
142
143
|
? curr
|
|
143
144
|
: prev;
|
|
144
145
|
}, "info");
|
|
@@ -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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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
declare type LOG_LEVEL = "fatal" | "error" | "warn" | "info" | "debug" | "trace";
|
|
2
|
-
declare const DEFAULT_LOG_LEVELS: {
|
|
1
|
+
export declare type LOG_LEVEL = "fatal" | "error" | "warn" | "info" | "debug" | "trace";
|
|
2
|
+
export declare const DEFAULT_LOG_LEVELS: {
|
|
3
3
|
[key in LOG_LEVEL]: number;
|
|
4
4
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logging-config.interface.js","sourceRoot":"","sources":["../../../src/config/logging-config.interface.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logging-config.interface.js","sourceRoot":"","sources":["../../../src/config/logging-config.interface.ts"],"names":[],"mappings":";;;AAEa,QAAA,kBAAkB,GAAmC;IAChE,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,6 @@
|
|
|
1
|
+
import { HttpException, HttpStatus } from "@nestjs/common";
|
|
2
|
+
import { Context } from "../context";
|
|
3
|
+
export declare class ContextualHttpException extends HttpException {
|
|
4
|
+
readonly context: Context;
|
|
5
|
+
constructor(context: Context, response: string | Record<string, any>, status: HttpStatus);
|
|
6
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ContextualHttpException = void 0;
|
|
4
|
+
const common_1 = require("@nestjs/common");
|
|
5
|
+
class ContextualHttpException extends common_1.HttpException {
|
|
6
|
+
constructor(context, response, status) {
|
|
7
|
+
super(response, status);
|
|
8
|
+
this.context = context;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
exports.ContextualHttpException = ContextualHttpException;
|
|
12
|
+
//# sourceMappingURL=contextual.http.exception.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contextual.http.exception.js","sourceRoot":"","sources":["../../../src/exception/contextual.http.exception.ts"],"names":[],"mappings":";;;AAAA,2CAA2D;AAG3D,MAAa,uBAAwB,SAAQ,sBAAa;IACxD,YACkB,OAAgB,EAChC,QAAsC,EACtC,MAAkB;QAElB,KAAK,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QAJR,YAAO,GAAP,OAAO,CAAS;IAKlC,CAAC;CACF;AARD,0DAQC"}
|
|
@@ -11,4 +11,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
|
11
11
|
};
|
|
12
12
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
13
13
|
__exportStar(require("./friendly-http-exception"), exports);
|
|
14
|
+
__exportStar(require("./contextual.http.exception"), exports);
|
|
14
15
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/exception/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4DAA0C"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/exception/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,4DAA0C;AAC1C,8DAA4C"}
|
|
@@ -18,6 +18,7 @@ const codex_data_model_1 = require("@cryptexlabs/codex-data-model");
|
|
|
18
18
|
const locales_1 = require("../locales/locales");
|
|
19
19
|
const enum_1 = require("../locales/enum");
|
|
20
20
|
const config_1 = require("../config");
|
|
21
|
+
const contextual_http_exception_1 = require("../exception/contextual.http.exception");
|
|
21
22
|
let AppHttpExceptionFilter = class AppHttpExceptionFilter extends core_1.BaseExceptionFilter {
|
|
22
23
|
constructor(fallbackLocale, fallbackLogger, config, applicationRef) {
|
|
23
24
|
super(applicationRef);
|
|
@@ -32,7 +33,8 @@ let AppHttpExceptionFilter = class AppHttpExceptionFilter extends core_1.BaseExc
|
|
|
32
33
|
const ctx = host.switchToHttp();
|
|
33
34
|
const request = ctx.getRequest();
|
|
34
35
|
const response = ctx.getResponse();
|
|
35
|
-
const logger = exception instanceof exception_1.FriendlyHttpException
|
|
36
|
+
const logger = exception instanceof exception_1.FriendlyHttpException ||
|
|
37
|
+
exception instanceof contextual_http_exception_1.ContextualHttpException
|
|
36
38
|
? exception.context.logger
|
|
37
39
|
: this.fallbackLogger;
|
|
38
40
|
let developerText = this.getDeveloperText(exception, this.fallbackLocale);
|
|
@@ -76,20 +78,26 @@ let AppHttpExceptionFilter = class AppHttpExceptionFilter extends core_1.BaseExc
|
|
|
76
78
|
stack,
|
|
77
79
|
});
|
|
78
80
|
}
|
|
79
|
-
if (!(exception instanceof common_1.HttpException
|
|
81
|
+
if (!(exception instanceof common_1.HttpException ||
|
|
82
|
+
exception instanceof exception_1.FriendlyHttpException ||
|
|
83
|
+
exception instanceof contextual_http_exception_1.ContextualHttpException) &&
|
|
84
|
+
exception.stack) {
|
|
80
85
|
logger.error(exception.stack);
|
|
81
86
|
}
|
|
82
87
|
const status = exception.getStatus !== undefined &&
|
|
83
88
|
typeof exception.getStatus === "function"
|
|
84
89
|
? exception.getStatus()
|
|
85
90
|
: common_1.HttpStatus.INTERNAL_SERVER_ERROR;
|
|
86
|
-
const locale = exception instanceof exception_1.FriendlyHttpException
|
|
91
|
+
const locale = exception instanceof exception_1.FriendlyHttpException ||
|
|
92
|
+
exception instanceof contextual_http_exception_1.ContextualHttpException
|
|
87
93
|
? exception.context.locale
|
|
88
94
|
: this.fallbackLocale;
|
|
89
|
-
const correlationId = exception instanceof exception_1.FriendlyHttpException
|
|
95
|
+
const correlationId = exception instanceof exception_1.FriendlyHttpException ||
|
|
96
|
+
exception instanceof contextual_http_exception_1.ContextualHttpException
|
|
90
97
|
? exception.context.correlationId
|
|
91
98
|
: undefined;
|
|
92
|
-
const started = exception instanceof exception_1.FriendlyHttpException
|
|
99
|
+
const started = exception instanceof exception_1.FriendlyHttpException ||
|
|
100
|
+
exception instanceof contextual_http_exception_1.ContextualHttpException
|
|
93
101
|
? exception.context.started
|
|
94
102
|
: undefined;
|
|
95
103
|
developerText = this.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":";;;;;;;;;;;;AAAA,2CAQwB;AACxB,uCAAmD;AAEnD,0CAA8D;AAC9D,4CAAqD;AACrD,oEAAuD;AACvD,gDAA8C;AAC9C,0CAA8C;AAC9C,sCAA0C;
|
|
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
|
@@ -19,6 +19,7 @@ import { PingConfigInterface } from "./ping-config.interface";
|
|
|
19
19
|
import { ConsumerTypeEnum } from "./consumer-type.enum";
|
|
20
20
|
import { JsonSerializableInterface } from "../message";
|
|
21
21
|
import { TelemetryConfigInterface } from "./telemetry-config.interface";
|
|
22
|
+
import { LOG_LEVEL, DEFAULT_LOG_LEVELS } from "./logging-config.interface";
|
|
22
23
|
|
|
23
24
|
@Injectable()
|
|
24
25
|
export class DefaultConfig implements JsonSerializableInterface<any> {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
type LOG_LEVEL = "fatal" | "error" | "warn" | "info" | "debug" | "trace";
|
|
1
|
+
export type LOG_LEVEL = "fatal" | "error" | "warn" | "info" | "debug" | "trace";
|
|
2
2
|
|
|
3
|
-
const DEFAULT_LOG_LEVELS: { [key in LOG_LEVEL]: number } = {
|
|
3
|
+
export const DEFAULT_LOG_LEVELS: { [key in LOG_LEVEL]: number } = {
|
|
4
4
|
trace: 10,
|
|
5
5
|
debug: 20,
|
|
6
6
|
info: 30,
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { HttpException, HttpStatus } from "@nestjs/common";
|
|
2
|
+
import { Context } from "../context";
|
|
3
|
+
|
|
4
|
+
export class ContextualHttpException extends HttpException {
|
|
5
|
+
constructor(
|
|
6
|
+
public readonly context: Context,
|
|
7
|
+
response: string | Record<string, any>,
|
|
8
|
+
status: HttpStatus
|
|
9
|
+
) {
|
|
10
|
+
super(response, status);
|
|
11
|
+
}
|
|
12
|
+
}
|
package/src/exception/index.ts
CHANGED
|
@@ -15,6 +15,7 @@ import { Locale } from "@cryptexlabs/codex-data-model";
|
|
|
15
15
|
import { i18nData } from "../locales/locales";
|
|
16
16
|
import { LocalesEnum } from "../locales/enum";
|
|
17
17
|
import { DefaultConfig } from "../config";
|
|
18
|
+
import { ContextualHttpException } from "../exception/contextual.http.exception";
|
|
18
19
|
|
|
19
20
|
@Catch()
|
|
20
21
|
@Injectable()
|
|
@@ -40,7 +41,8 @@ export class AppHttpExceptionFilter extends BaseExceptionFilter {
|
|
|
40
41
|
const response = ctx.getResponse();
|
|
41
42
|
|
|
42
43
|
const logger =
|
|
43
|
-
exception instanceof FriendlyHttpException
|
|
44
|
+
exception instanceof FriendlyHttpException ||
|
|
45
|
+
exception instanceof ContextualHttpException
|
|
44
46
|
? exception.context.logger
|
|
45
47
|
: this.fallbackLogger;
|
|
46
48
|
|
|
@@ -86,7 +88,14 @@ export class AppHttpExceptionFilter extends BaseExceptionFilter {
|
|
|
86
88
|
}
|
|
87
89
|
|
|
88
90
|
// If this is a normal error it means something random occurred and we want the stacktrace
|
|
89
|
-
if (
|
|
91
|
+
if (
|
|
92
|
+
!(
|
|
93
|
+
exception instanceof HttpException ||
|
|
94
|
+
exception instanceof FriendlyHttpException ||
|
|
95
|
+
exception instanceof ContextualHttpException
|
|
96
|
+
) &&
|
|
97
|
+
exception.stack
|
|
98
|
+
) {
|
|
90
99
|
logger.error(exception.stack);
|
|
91
100
|
}
|
|
92
101
|
|
|
@@ -97,17 +106,20 @@ export class AppHttpExceptionFilter extends BaseExceptionFilter {
|
|
|
97
106
|
: HttpStatus.INTERNAL_SERVER_ERROR;
|
|
98
107
|
|
|
99
108
|
const locale =
|
|
100
|
-
exception instanceof FriendlyHttpException
|
|
109
|
+
exception instanceof FriendlyHttpException ||
|
|
110
|
+
exception instanceof ContextualHttpException
|
|
101
111
|
? exception.context.locale
|
|
102
112
|
: this.fallbackLocale;
|
|
103
113
|
|
|
104
114
|
const correlationId =
|
|
105
|
-
exception instanceof FriendlyHttpException
|
|
115
|
+
exception instanceof FriendlyHttpException ||
|
|
116
|
+
exception instanceof ContextualHttpException
|
|
106
117
|
? exception.context.correlationId
|
|
107
118
|
: undefined;
|
|
108
119
|
|
|
109
120
|
const started =
|
|
110
|
-
exception instanceof FriendlyHttpException
|
|
121
|
+
exception instanceof FriendlyHttpException ||
|
|
122
|
+
exception instanceof ContextualHttpException
|
|
111
123
|
? exception.context.started
|
|
112
124
|
: undefined;
|
|
113
125
|
|