@cargolift-cdi/common 1.0.74 → 1.0.78
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/errors/invalid-schema-validation.error.d.ts +9 -0
- package/dist/errors/invalid-schema-validation.error.js +8 -0
- package/dist/errors/invalid-schema-validation.error.js.map +1 -0
- package/dist/filters/api-exceptions.filter.d.ts +1 -1
- package/dist/filters/api-exceptions.filter.js +1 -1
- package/dist/filters/api-exceptions.filter.js.map +1 -1
- package/dist/logger/logger.service.d.ts +1 -1
- package/dist/logger/logger.service.js +8 -3
- package/dist/logger/logger.service.js.map +1 -1
- package/dist/middleware/api-logger.middleware.js +1 -0
- package/dist/middleware/api-logger.middleware.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { HttpException } from "@nestjs/common";
|
|
2
|
+
export type ErrorOptions = {
|
|
3
|
+
code?: string;
|
|
4
|
+
cause?: unknown;
|
|
5
|
+
data?: Record<string, unknown>;
|
|
6
|
+
};
|
|
7
|
+
export declare class InvalidSchemaValidation extends HttpException {
|
|
8
|
+
constructor(errors: string | string[]);
|
|
9
|
+
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { HttpException, HttpStatus } from "@nestjs/common";
|
|
2
|
+
export class InvalidSchemaValidation extends HttpException {
|
|
3
|
+
constructor(errors) {
|
|
4
|
+
super({ message: errors }, HttpStatus.BAD_REQUEST);
|
|
5
|
+
this.name = "InvalidSchemaValidation";
|
|
6
|
+
}
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=invalid-schema-validation.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"invalid-schema-validation.error.js","sourceRoot":"","sources":["../../src/errors/invalid-schema-validation.error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAS3D,MAAM,OAAO,uBAAwB,SAAQ,aAAa;IACxD,YAAY,MAAyB;QACnC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAC,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,CAAC,IAAI,GAAG,yBAAyB,CAAC;IAExC,CAAC;CACF"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ExceptionFilter, ArgumentsHost } from "@nestjs/common";
|
|
2
|
-
import { LoggerContextService } from "
|
|
2
|
+
import { LoggerContextService } from "../logger/logger.service.js";
|
|
3
3
|
export declare class APIExceptionsFilter implements ExceptionFilter {
|
|
4
4
|
private readonly logger;
|
|
5
5
|
constructor(logger: LoggerContextService);
|
|
@@ -8,7 +8,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
|
|
|
8
8
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
9
9
|
};
|
|
10
10
|
import { Catch, HttpException, Logger, Injectable, Scope } from "@nestjs/common";
|
|
11
|
-
import { LoggerContextService } from "
|
|
11
|
+
import { LoggerContextService } from "../logger/logger.service.js";
|
|
12
12
|
let APIExceptionsFilter = class APIExceptionsFilter {
|
|
13
13
|
constructor(logger) {
|
|
14
14
|
this.logger = logger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-exceptions.filter.js","sourceRoot":"","sources":["../../src/filters/api-exceptions.filter.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAmB,KAAK,EAAiB,aAAa,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AACjH,OAAO,EAAE,oBAAoB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"api-exceptions.filter.js","sourceRoot":"","sources":["../../src/filters/api-exceptions.filter.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@ import { LoggerService } from "@nestjs/common";
|
|
|
2
2
|
import type { ContextMessage, RabbitMQMessage } from "@cargolift-cdi/types";
|
|
3
3
|
import { ContextSource } from "@cargolift-cdi/types";
|
|
4
4
|
export declare class LoggerContextService implements LoggerService {
|
|
5
|
-
private pinoLogger;
|
|
5
|
+
private readonly pinoLogger;
|
|
6
6
|
constructor();
|
|
7
7
|
setDefaultContext(req?: any, rabbitMQMessage?: RabbitMQMessage, context?: ContextMessage): void;
|
|
8
8
|
setContextRequest(req: any, context?: ContextMessage): void;
|
|
@@ -42,9 +42,12 @@ let LoggerContextService = class LoggerContextService {
|
|
|
42
42
|
req?.headers?.["x-correlation-id"] ||
|
|
43
43
|
rabbitMQMessage?.properties?.headers?.["x-correlation-id"];
|
|
44
44
|
const xSource = req?.headers?.["x-source"] || rabbitMQMessage?.properties?.headers?.["x-source"];
|
|
45
|
+
const xTimestampStart = req?.headers?.["x-timestamp-start"] ||
|
|
46
|
+
rabbitMQMessage?.properties?.headers?.["x-timestamp-start"];
|
|
45
47
|
const current = getLoggerContext();
|
|
46
48
|
const base = { ...current, ...(context || {}) };
|
|
47
49
|
base.correlation_id = base.correlation_id || context?.correlation_id || xCorrelation || uuidv4();
|
|
50
|
+
base.timestamp_start = base.timestamp_start || context?.timestamp_start || xTimestampStart || Date.now();
|
|
48
51
|
base.source = base.source || xSource;
|
|
49
52
|
if (!base.application) {
|
|
50
53
|
base.application = {
|
|
@@ -125,7 +128,7 @@ let LoggerContextService = class LoggerContextService {
|
|
|
125
128
|
}
|
|
126
129
|
isContextSet() {
|
|
127
130
|
const ctx = getLoggerContext();
|
|
128
|
-
return !!(ctx
|
|
131
|
+
return !!(ctx?.application && ctx.correlation_id);
|
|
129
132
|
}
|
|
130
133
|
buildLog(message, logType, extraContext = {}) {
|
|
131
134
|
const ctx = getLoggerContext();
|
|
@@ -171,7 +174,8 @@ let LoggerContextService = class LoggerContextService {
|
|
|
171
174
|
}
|
|
172
175
|
buildRabbitContext(msg, staticBindings = {}) {
|
|
173
176
|
const headers = msg?.properties?.headers || {};
|
|
174
|
-
const correlation = headers["x-correlation-id"] ||
|
|
177
|
+
const correlation = headers["x-correlation-id"] || msg.properties?.correlation_id;
|
|
178
|
+
const timestamp_start = headers["x-timestamp-start"] || Date.now();
|
|
175
179
|
const traceHeader = headers["x-trace"];
|
|
176
180
|
const source = headers["x-source"] || msg.properties?.source || undefined;
|
|
177
181
|
let trace = [];
|
|
@@ -190,7 +194,7 @@ let LoggerContextService = class LoggerContextService {
|
|
|
190
194
|
function: functionName,
|
|
191
195
|
timestamp: new Date().toISOString(),
|
|
192
196
|
});
|
|
193
|
-
const maxDepth = parseInt(process.env.TRACE_MAX_DEPTH || "5", 10) || 5;
|
|
197
|
+
const maxDepth = Number.parseInt(process.env.TRACE_MAX_DEPTH || "5", 10) || 5;
|
|
194
198
|
if (trace.length > maxDepth) {
|
|
195
199
|
trace = trace
|
|
196
200
|
.slice(0, maxDepth / 2)
|
|
@@ -203,6 +207,7 @@ let LoggerContextService = class LoggerContextService {
|
|
|
203
207
|
}
|
|
204
208
|
return {
|
|
205
209
|
correlation_id: correlation || "undefined",
|
|
210
|
+
timestamp_start,
|
|
206
211
|
source,
|
|
207
212
|
trace,
|
|
208
213
|
...staticBindings,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../src/logger/logger.service.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAiB,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAClE,OAAO,IAAwC,MAAM,MAAM,CAAC;AAC5D,OAAO,EAAE,EAAE,IAAI,MAAM,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAO3E,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAG/B;QACE,MAAM,gBAAgB,GAA2B;YAC/C,MAAM,EAAE,aAAa;YACrB,OAAO,EAAE;gBACP,QAAQ,EAAE,IAAI;gBACd,aAAa,EAAE,yBAAyB;gBACxC,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB,IAAI,uDAAuD;gBAC/F,aAAa,EAAE,WAAW;aAC3B;SACF,CAAC;QACF,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;YACrB,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,SAAS,IAAI,MAAM;YACtC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS;SACjF,CAAC,CAAC;IACL,CAAC;IAMD,iBAAiB,CAAC,GAAS,EAAE,eAAiC,EAAE,OAAwB;QACtF,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC;IACjD,CAAC;IAMD,iBAAiB,CAAC,GAAQ,EAAE,OAAwB;QAClD,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC;IAMD,kBAAkB,CAAC,eAAgC,EAAE,OAAwB;QAC3E,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IACvD,CAAC;IASD,UAAU,CAAC,OAAwB,EAAE,GAAS,EAAE,eAAiC;QAC/E,MAAM,MAAM,
|
|
1
|
+
{"version":3,"file":"logger.service.js","sourceRoot":"","sources":["../../src/logger/logger.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,6 +16,7 @@ let APILoggerMiddleware = class APILoggerMiddleware {
|
|
|
16
16
|
this.moduleRef = moduleRef;
|
|
17
17
|
}
|
|
18
18
|
async use(req, res, next) {
|
|
19
|
+
req.timestamp_start = req.headers['x-request-start'] || (new Date()).toISOString();
|
|
19
20
|
const contextId = ContextIdFactory.getByRequest(req);
|
|
20
21
|
const logger = await this.moduleRef.resolve(LoggerContextService, contextId, { strict: false });
|
|
21
22
|
const startHr = typeof process.hrtime.bigint === 'function' ? process.hrtime.bigint() : null;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api-logger.middleware.js","sourceRoot":"","sources":["../../src/middleware/api-logger.middleware.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"api-logger.middleware.js","sourceRoot":"","sources":["../../src/middleware/api-logger.middleware.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,UAAU,EAAkB,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAyC,MAAM,mCAAmC,CAAC;AAGzG,IAAM,mBAAmB,GAAzB,MAAM,mBAAmB;IAC9B,YAA6B,SAAoB;QAApB,cAAS,GAAT,SAAS,CAAW;IAAI,CAAC;IAEtD,KAAK,CAAC,GAAG,CAAC,GAAQ,EAAE,GAAQ,EAAE,IAAc;QAC1C,GAAG,CAAC,eAAe,GAAG,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;QAEnF,MAAM,SAAS,GAAG,gBAAgB,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,oBAAoB,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;QAEhG,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC7F,MAAM,GAAG,GAAG,GAAG,EAAE,WAAW,IAAI,GAAG,EAAE,GAAG,CAAC;QAGzC,oBAAoB,CAAC,EAAE,EAAE,GAAG,EAAE;YAC5B,IAAI,CAAC;gBACH,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC;oBAC3B,MAAM,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;gBAChC,CAAC;gBAED,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,MAAM,IAAI,GAAG,KAAK,GAAG,EAAE,UAAU,sBAAsB,EAAE;oBAChF,WAAW,EAAE;wBACX,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,WAAW,IAAI,EAAE;wBACxC,MAAM,EAAE,SAAS;qBAClB;oBACD,MAAM,EAAE;wBACN,EAAE,EAAE,GAAG,EAAE,EAAE,IAAI,GAAG,EAAE,OAAO,EAAE,CAAC,iBAAiB,CAAC,IAAI,GAAG,EAAE,UAAU,EAAE,aAAa,IAAI,SAAS;wBAC/F,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,YAAY,CAAC,IAAI,SAAS;qBACtD;oBACD,IAAI,EAAE;wBACJ,OAAO,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE;wBAC3C,OAAO,EAAE,IAAI,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC;qBAClC;iBACF,CAAC,CAAC;gBAEH,GAAG,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;oBACvB,MAAM,KAAK,GAAG,OAAO,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;oBAC3F,MAAM,UAAU,GAAG,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;oBAC9F,MAAM,CAAC,IAAI,CAAC,QAAQ,GAAG,EAAE,MAAM,IAAI,GAAG,KAAK,GAAG,EAAE,UAAU,mBAAmB,EAAE;wBAC/E,WAAW,EAAE;4BACX,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC,WAAW,IAAI,EAAE;4BACxC,MAAM,EAAE,UAAU;yBACnB;wBACD,IAAI,EAAE;4BACJ,QAAQ,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE,UAAU,EAAE,UAAU,EAAE;yBACtD;qBACF,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;YAET,CAAC;oBAAS,CAAC;gBACT,IAAI,EAAE,CAAC;YACT,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,QAAQ,CAAC,IAAS;QACxB,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;YAAE,OAAO,IAAI,CAAC;QACnD,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,eAAe,CAAC,CAAC,CAAC;QACxF,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;QAClG,CAAC;QACD,MAAM,GAAG,GAAwB,EAAE,CAAC;QACpC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;YAC1C,GAAG,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9G,CAAC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;CACF,CAAA;AAnEY,mBAAmB;IAD/B,UAAU,EAAE;qCAE6B,SAAS;GADtC,mBAAmB,CAmE/B"}
|