@alacard-project/shared 1.1.1 → 1.1.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/dist/dto/index.d.ts +1 -0
- package/dist/dto/index.js +1 -0
- package/dist/dto/index.js.map +1 -1
- package/dist/dto/invoice.dto.d.ts +12 -0
- package/dist/dto/invoice.dto.js +62 -0
- package/dist/dto/invoice.dto.js.map +1 -0
- package/dist/enums/auth.enum.d.ts +2 -3
- package/dist/enums/auth.enum.js +2 -3
- package/dist/enums/auth.enum.js.map +1 -1
- package/dist/index.d.ts +5 -4
- package/dist/index.js +5 -4
- package/dist/index.js.map +1 -1
- package/dist/resilience/circuit-breaker.service.d.ts +2 -3
- package/dist/resilience/circuit-breaker.service.js +9 -15
- package/dist/resilience/circuit-breaker.service.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/dist/{filters/http-exception.filter.js → utils/filters.js} +3 -12
- package/dist/utils/filters.js.map +1 -0
- package/dist/{interceptors/transform.interceptor.d.ts → utils/interceptors.d.ts} +0 -1
- package/dist/{interceptors/transform.interceptor.js → utils/interceptors.js} +3 -3
- package/dist/utils/interceptors.js.map +1 -0
- package/dist/utils/tracing.utils.js +7 -0
- package/dist/utils/tracing.utils.js.map +1 -0
- package/package.json +25 -27
- package/dist/config/base-config.service.d.ts +0 -25
- package/dist/config/base-config.service.js +0 -87
- package/dist/config/base-config.service.js.map +0 -1
- package/dist/constants/logging.constants.d.ts +0 -24
- package/dist/constants/logging.constants.js +0 -28
- package/dist/constants/logging.constants.js.map +0 -1
- package/dist/constants/monitoring.constants.d.ts +0 -51
- package/dist/constants/monitoring.constants.js +0 -55
- package/dist/constants/monitoring.constants.js.map +0 -1
- package/dist/constants/tokens.constants.d.ts +0 -6
- package/dist/constants/tokens.constants.js +0 -10
- package/dist/constants/tokens.constants.js.map +0 -1
- package/dist/filters/http-exception.filter.js.map +0 -1
- package/dist/filters/index.d.ts +0 -1
- package/dist/filters/index.js +0 -18
- package/dist/filters/index.js.map +0 -1
- package/dist/interceptors/http-logging.interceptor.d.ts +0 -10
- package/dist/interceptors/http-logging.interceptor.js +0 -74
- package/dist/interceptors/http-logging.interceptor.js.map +0 -1
- package/dist/interceptors/index.d.ts +0 -2
- package/dist/interceptors/index.js +0 -19
- package/dist/interceptors/index.js.map +0 -1
- package/dist/interceptors/logging.interceptor.d.ts +0 -6
- package/dist/interceptors/logging.interceptor.js +0 -41
- package/dist/interceptors/logging.interceptor.js.map +0 -1
- package/dist/interceptors/transform.interceptor.js.map +0 -1
- package/dist/observability/index.d.ts +0 -2
- package/dist/observability/index.js +0 -19
- package/dist/observability/index.js.map +0 -1
- package/dist/observability/metrics/metrics.module.d.ts +0 -2
- package/dist/observability/metrics/metrics.module.js +0 -28
- package/dist/observability/metrics/metrics.module.js.map +0 -1
- package/dist/observability/tracing.js +0 -28
- package/dist/observability/tracing.js.map +0 -1
- package/dist/utils/logging-client.d.ts +0 -9
- package/dist/utils/logging-client.js +0 -58
- package/dist/utils/logging-client.js.map +0 -1
- package/dist/utils/prometheus.utils.d.ts +0 -9
- package/dist/utils/prometheus.utils.js +0 -66
- package/dist/utils/prometheus.utils.js.map +0 -1
- package/proto/auth.proto +0 -123
- package/proto/card.proto +0 -43
- package/proto/client.proto +0 -45
- package/proto/config.proto +0 -39
- package/proto/dbf.proto +0 -183
- package/proto/logging.proto +0 -143
- package/proto/partner.proto +0 -18
- package/proto/terminal.proto +0 -18
- package/proto/transaction.proto +0 -45
- package/proto/user.proto +0 -122
- package/src/constants/auth-config.constants.ts +0 -16
- package/src/constants/auth.constants.ts +0 -50
- package/src/constants/common.constants.ts +0 -16
- package/src/constants/env.constants.ts +0 -49
- package/src/constants/error-messages.ts +0 -10
- package/src/constants/grpc.constants.ts +0 -43
- package/src/constants/http.constants.ts +0 -11
- package/src/constants/index.ts +0 -11
- package/src/constants/logging-messages.constants.ts +0 -60
- package/src/constants/microservices.constants.ts +0 -62
- package/src/constants/queue.constants.ts +0 -8
- package/src/constants/routes.constants.ts +0 -21
- package/src/contracts/auth.contract.ts +0 -146
- package/src/contracts/config.contract.ts +0 -14
- package/src/contracts/index.ts +0 -14
- package/src/contracts/logging.contract.ts +0 -115
- package/src/contracts/token.contract.ts +0 -47
- package/src/decorators/index.ts +0 -3
- package/src/decorators/permissions.decorator.ts +0 -5
- package/src/decorators/roles.decorator.ts +0 -5
- package/src/decorators/scopes.decorator.ts +0 -4
- package/src/dto/account.dto.ts +0 -28
- package/src/dto/auth.dto.ts +0 -233
- package/src/dto/card.dto.ts +0 -64
- package/src/dto/client.dto.ts +0 -137
- package/src/dto/index.ts +0 -8
- package/src/dto/logging.dto.ts +0 -101
- package/src/dto/partner.dto.ts +0 -18
- package/src/dto/transaction.dto.ts +0 -52
- package/src/dto/user.dto.ts +0 -28
- package/src/enums/auth.enum.ts +0 -13
- package/src/enums/env.enum.ts +0 -7
- package/src/enums/error.enum.ts +0 -28
- package/src/enums/events.enum.ts +0 -22
- package/src/enums/health.enum.ts +0 -7
- package/src/enums/iam.enum.ts +0 -28
- package/src/enums/index.ts +0 -10
- package/src/enums/logging.enum.ts +0 -7
- package/src/enums/notification.enum.ts +0 -5
- package/src/enums/permission.enum.ts +0 -31
- package/src/enums/user.enum.ts +0 -27
- package/src/errors/app.error.ts +0 -33
- package/src/errors/error-map.ts +0 -105
- package/src/filters/http-exception.filter.ts +0 -49
- package/src/filters/index.ts +0 -2
- package/src/index.ts +0 -17
- package/src/interceptors/index.ts +0 -3
- package/src/interceptors/logging.interceptor.ts +0 -37
- package/src/interceptors/transform.interceptor.ts +0 -21
- package/src/observability/index.ts +0 -3
- package/src/observability/metrics/metrics.module.ts +0 -16
- package/src/observability/tracing.ts +0 -33
- package/src/resilience/circuit-breaker.service.ts +0 -46
- package/src/resilience/resilience.module.ts +0 -9
- package/src/types/auth.types.ts +0 -38
- package/src/types/common.types.ts +0 -18
- package/src/types/config.types.ts +0 -32
- package/src/types/iam.types.ts +0 -78
- package/src/types/index.ts +0 -6
- package/src/types/monitoring.types.ts +0 -77
- package/src/types/user.types.ts +0 -11
- package/src/utils/app.utils.ts +0 -52
- package/src/utils/health.utils.ts +0 -24
- package/src/utils/proto-path.ts +0 -21
- package/src/utils/user.utils.ts +0 -3
- package/tsconfig.json +0 -28
- /package/dist/{filters/http-exception.filter.d.ts → utils/filters.d.ts} +0 -0
- /package/dist/{observability/tracing.d.ts → utils/tracing.utils.d.ts} +0 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alacard-project/shared",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.2",
|
|
4
4
|
"engines": {
|
|
5
5
|
"node": ">=24.0.0"
|
|
6
6
|
},
|
|
@@ -9,40 +9,38 @@
|
|
|
9
9
|
"types": "dist/index.d.ts",
|
|
10
10
|
"exports": {
|
|
11
11
|
".": "./dist/index.js",
|
|
12
|
-
"./dist
|
|
12
|
+
"./dist/*": "./dist/*",
|
|
13
|
+
"./*": "./dist/*.js"
|
|
13
14
|
},
|
|
15
|
+
"files": [
|
|
16
|
+
"dist",
|
|
17
|
+
"README.md"
|
|
18
|
+
],
|
|
14
19
|
"scripts": {
|
|
15
20
|
"build": "tsc",
|
|
16
21
|
"watch": "tsc -w"
|
|
17
22
|
},
|
|
18
23
|
"peerDependencies": {
|
|
19
|
-
"@nestjs/common": "
|
|
20
|
-
"@nestjs/core": "
|
|
21
|
-
"reflect-metadata": "
|
|
22
|
-
"rxjs": "
|
|
24
|
+
"@nestjs/common": "10.4.15",
|
|
25
|
+
"@nestjs/core": "10.4.15",
|
|
26
|
+
"reflect-metadata": "0.2.2",
|
|
27
|
+
"rxjs": "7.8.1",
|
|
28
|
+
"axios": "^1.7.0",
|
|
29
|
+
"class-transformer": "^0.5.0",
|
|
30
|
+
"class-validator": "^0.14.0",
|
|
31
|
+
"helmet": "^8.1.0",
|
|
32
|
+
"opossum": "^8.0.0 || ^9.0.0"
|
|
23
33
|
},
|
|
24
34
|
"dependencies": {
|
|
25
|
-
"@
|
|
26
|
-
"@opentelemetry/auto-instrumentations-node": "^0.69.0",
|
|
27
|
-
"@opentelemetry/exporter-trace-otlp-http": "^0.211.0",
|
|
28
|
-
"@opentelemetry/resources": "^2.5.0",
|
|
29
|
-
"@opentelemetry/sdk-node": "^0.211.0",
|
|
30
|
-
"@opentelemetry/semantic-conventions": "^1.39.0",
|
|
31
|
-
"@types/opossum": "^8.1.9",
|
|
32
|
-
"axios": "^1.6.0",
|
|
33
|
-
"bullmq": "^5.67.2",
|
|
34
|
-
"class-transformer": "^0.5.1",
|
|
35
|
-
"class-validator": "^0.14.1",
|
|
36
|
-
"helmet": "^7.1.0",
|
|
37
|
-
"opossum": "^9.0.0"
|
|
35
|
+
"@types/opossum": "8.1.9"
|
|
38
36
|
},
|
|
39
37
|
"devDependencies": {
|
|
40
|
-
"@nestjs/common": "
|
|
41
|
-
"@nestjs/config": "
|
|
42
|
-
"@nestjs/core": "
|
|
43
|
-
"@types/node": "
|
|
44
|
-
"reflect-metadata": "
|
|
45
|
-
"rxjs": "
|
|
46
|
-
"typescript": "
|
|
38
|
+
"@nestjs/common": "10.4.15",
|
|
39
|
+
"@nestjs/config": "3.3.0",
|
|
40
|
+
"@nestjs/core": "10.4.15",
|
|
41
|
+
"@types/node": "22.10.10",
|
|
42
|
+
"reflect-metadata": "0.2.2",
|
|
43
|
+
"rxjs": "7.8.1",
|
|
44
|
+
"typescript": "5.7.3"
|
|
47
45
|
}
|
|
48
|
-
}
|
|
46
|
+
}
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { ConfigService } from '@nestjs/config';
|
|
2
|
-
import { Environment } from '../enums/env.enum';
|
|
3
|
-
export declare abstract class BaseConfigService {
|
|
4
|
-
protected readonly configService: ConfigService;
|
|
5
|
-
constructor(configService: ConfigService);
|
|
6
|
-
get environment(): Environment;
|
|
7
|
-
get isProduction(): boolean;
|
|
8
|
-
get port(): number;
|
|
9
|
-
get databaseUrl(): string;
|
|
10
|
-
get redisHost(): string;
|
|
11
|
-
get redisPort(): number;
|
|
12
|
-
get kafkaBrokers(): string[];
|
|
13
|
-
get corsOrigins(): string[];
|
|
14
|
-
get rabbitmqUrl(): string;
|
|
15
|
-
get rateLimitTtl(): number;
|
|
16
|
-
get rateLimitMax(): number;
|
|
17
|
-
get userServiceUrl(): string;
|
|
18
|
-
get userProtoPath(): string;
|
|
19
|
-
protected getRequiredString(key: string): string;
|
|
20
|
-
protected getRequiredNumber(key: string): number;
|
|
21
|
-
protected getOptionalString(key: string, defaultValue?: string): string | undefined;
|
|
22
|
-
protected getOptionalNumber(key: string, defaultValue?: number): number | undefined;
|
|
23
|
-
protected getOptionalBoolean(key: string, defaultValue?: boolean): boolean;
|
|
24
|
-
protected timeToSeconds(timeStr: string): number;
|
|
25
|
-
}
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.BaseConfigService = void 0;
|
|
4
|
-
const env_constants_1 = require("../constants/env.constants");
|
|
5
|
-
const env_enum_1 = require("../enums/env.enum");
|
|
6
|
-
class BaseConfigService {
|
|
7
|
-
constructor(configService) {
|
|
8
|
-
this.configService = configService;
|
|
9
|
-
}
|
|
10
|
-
get environment() {
|
|
11
|
-
return this.configService.get(env_constants_1.ENV_KEYS.NODE_ENV) || env_enum_1.Environment.DEVELOPMENT;
|
|
12
|
-
}
|
|
13
|
-
get isProduction() {
|
|
14
|
-
return this.environment === env_enum_1.Environment.PRODUCTION;
|
|
15
|
-
}
|
|
16
|
-
get port() {
|
|
17
|
-
return this.getOptionalNumber(env_constants_1.ENV_KEYS.PORT, 3000);
|
|
18
|
-
}
|
|
19
|
-
get databaseUrl() {
|
|
20
|
-
return this.getRequiredString(env_constants_1.ENV_KEYS.DATABASE_URL);
|
|
21
|
-
}
|
|
22
|
-
get redisHost() {
|
|
23
|
-
return this.getRequiredString(env_constants_1.ENV_KEYS.REDIS_HOST);
|
|
24
|
-
}
|
|
25
|
-
get redisPort() {
|
|
26
|
-
return this.getRequiredNumber(env_constants_1.ENV_KEYS.REDIS_PORT);
|
|
27
|
-
}
|
|
28
|
-
get kafkaBrokers() {
|
|
29
|
-
const brokers = this.getRequiredString(env_constants_1.ENV_KEYS.KAFKA_BROKERS);
|
|
30
|
-
return brokers.split(',');
|
|
31
|
-
}
|
|
32
|
-
get corsOrigins() {
|
|
33
|
-
const origins = this.getOptionalString(env_constants_1.ENV_KEYS.CORS_ORIGINS);
|
|
34
|
-
return origins ? origins.split(',') : ['*'];
|
|
35
|
-
}
|
|
36
|
-
get rabbitmqUrl() {
|
|
37
|
-
return this.getRequiredString(env_constants_1.ENV_KEYS.RABBITMQ_URL);
|
|
38
|
-
}
|
|
39
|
-
get rateLimitTtl() {
|
|
40
|
-
return this.getOptionalNumber(env_constants_1.ENV_KEYS.RATE_LIMIT_TTL, 60);
|
|
41
|
-
}
|
|
42
|
-
get rateLimitMax() {
|
|
43
|
-
return this.getOptionalNumber(env_constants_1.ENV_KEYS.RATE_LIMIT_MAX, 10);
|
|
44
|
-
}
|
|
45
|
-
get userServiceUrl() {
|
|
46
|
-
return this.getRequiredString(env_constants_1.ENV_KEYS.USER_SERVICE_URL);
|
|
47
|
-
}
|
|
48
|
-
get userProtoPath() {
|
|
49
|
-
return this.getRequiredString(env_constants_1.ENV_KEYS.USER_PROTO_PATH);
|
|
50
|
-
}
|
|
51
|
-
getRequiredString(key) {
|
|
52
|
-
const value = this.configService.get(key);
|
|
53
|
-
if (!value) {
|
|
54
|
-
throw new Error(`Config error: ${key} is required`);
|
|
55
|
-
}
|
|
56
|
-
return value;
|
|
57
|
-
}
|
|
58
|
-
getRequiredNumber(key) {
|
|
59
|
-
const value = this.configService.get(key);
|
|
60
|
-
if (value === undefined) {
|
|
61
|
-
throw new Error(`Config error: ${key} is required`);
|
|
62
|
-
}
|
|
63
|
-
return value;
|
|
64
|
-
}
|
|
65
|
-
getOptionalString(key, defaultValue) {
|
|
66
|
-
return this.configService.get(key) || defaultValue;
|
|
67
|
-
}
|
|
68
|
-
getOptionalNumber(key, defaultValue) {
|
|
69
|
-
return this.configService.get(key) ?? defaultValue;
|
|
70
|
-
}
|
|
71
|
-
getOptionalBoolean(key, defaultValue = false) {
|
|
72
|
-
return this.configService.get(key) ?? defaultValue;
|
|
73
|
-
}
|
|
74
|
-
timeToSeconds(timeStr) {
|
|
75
|
-
const unit = timeStr.slice(-1);
|
|
76
|
-
const value = parseInt(timeStr.slice(0, -1));
|
|
77
|
-
switch (unit) {
|
|
78
|
-
case 's': return value;
|
|
79
|
-
case 'm': return value * 60;
|
|
80
|
-
case 'h': return value * 3600;
|
|
81
|
-
case 'd': return value * 86400;
|
|
82
|
-
default: return parseInt(timeStr);
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
exports.BaseConfigService = BaseConfigService;
|
|
87
|
-
//# sourceMappingURL=base-config.service.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"base-config.service.js","sourceRoot":"","sources":["../../src/config/base-config.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
export declare const LOG_RETENTION_PERIODS: {
|
|
2
|
-
readonly SHORT: 7;
|
|
3
|
-
readonly MEDIUM: 30;
|
|
4
|
-
readonly LONG: 90;
|
|
5
|
-
};
|
|
6
|
-
export declare const LOG_CLEANUP_MESSAGES: {
|
|
7
|
-
readonly SUCCESS: "Logs cleaned up successfully";
|
|
8
|
-
readonly INVALID_DATE_RANGE: "Invalid date range";
|
|
9
|
-
readonly NO_LOGS_FOUND: "No logs found for cleanup";
|
|
10
|
-
readonly CLEANUP_STARTED: "Log cleanup started";
|
|
11
|
-
readonly CLEANUP_COMPLETED: "Log cleanup completed";
|
|
12
|
-
readonly CLEANUP_FAILED: "Log cleanup failed";
|
|
13
|
-
readonly FILE_CLEANUP_SUCCESS: "File cleanup successful";
|
|
14
|
-
readonly FILE_CLEANUP_FAILED: "File cleanup failed";
|
|
15
|
-
readonly RETENTION_UPDATED: "Retention period updated";
|
|
16
|
-
};
|
|
17
|
-
export declare const LOGGING_ERROR_MESSAGES: {
|
|
18
|
-
readonly LOG_EVENT_FAILED: "Failed to log event";
|
|
19
|
-
readonly LOG_USER_ACTION_FAILED: "Failed to log user action";
|
|
20
|
-
readonly UPDATE_SERVICE_STATUS_FAILED: "Failed to update service status";
|
|
21
|
-
readonly GET_SERVICE_LOGS_FAILED: "Failed to get service logs";
|
|
22
|
-
readonly GET_SERVICE_STATUS_FAILED: "Failed to get service status";
|
|
23
|
-
readonly GET_USER_ACTIONS_FAILED: "Failed to get user actions";
|
|
24
|
-
};
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.LOGGING_ERROR_MESSAGES = exports.LOG_CLEANUP_MESSAGES = exports.LOG_RETENTION_PERIODS = void 0;
|
|
4
|
-
exports.LOG_RETENTION_PERIODS = {
|
|
5
|
-
SHORT: 7,
|
|
6
|
-
MEDIUM: 30,
|
|
7
|
-
LONG: 90,
|
|
8
|
-
};
|
|
9
|
-
exports.LOG_CLEANUP_MESSAGES = {
|
|
10
|
-
SUCCESS: 'Logs cleaned up successfully',
|
|
11
|
-
INVALID_DATE_RANGE: 'Invalid date range',
|
|
12
|
-
NO_LOGS_FOUND: 'No logs found for cleanup',
|
|
13
|
-
CLEANUP_STARTED: 'Log cleanup started',
|
|
14
|
-
CLEANUP_COMPLETED: 'Log cleanup completed',
|
|
15
|
-
CLEANUP_FAILED: 'Log cleanup failed',
|
|
16
|
-
FILE_CLEANUP_SUCCESS: 'File cleanup successful',
|
|
17
|
-
FILE_CLEANUP_FAILED: 'File cleanup failed',
|
|
18
|
-
RETENTION_UPDATED: 'Retention period updated',
|
|
19
|
-
};
|
|
20
|
-
exports.LOGGING_ERROR_MESSAGES = {
|
|
21
|
-
LOG_EVENT_FAILED: 'Failed to log event',
|
|
22
|
-
LOG_USER_ACTION_FAILED: 'Failed to log user action',
|
|
23
|
-
UPDATE_SERVICE_STATUS_FAILED: 'Failed to update service status',
|
|
24
|
-
GET_SERVICE_LOGS_FAILED: 'Failed to get service logs',
|
|
25
|
-
GET_SERVICE_STATUS_FAILED: 'Failed to get service status',
|
|
26
|
-
GET_USER_ACTIONS_FAILED: 'Failed to get user actions',
|
|
27
|
-
};
|
|
28
|
-
//# sourceMappingURL=logging.constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logging.constants.js","sourceRoot":"","sources":["../../src/constants/logging.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,qBAAqB,GAAG;IACjC,KAAK,EAAE,CAAC;IACR,MAAM,EAAE,EAAE;IACV,IAAI,EAAE,EAAE;CACF,CAAC;AAEE,QAAA,oBAAoB,GAAG;IAChC,OAAO,EAAE,8BAA8B;IACvC,kBAAkB,EAAE,oBAAoB;IACxC,aAAa,EAAE,2BAA2B;IAC1C,eAAe,EAAE,qBAAqB;IACtC,iBAAiB,EAAE,uBAAuB;IAC1C,cAAc,EAAE,oBAAoB;IACpC,oBAAoB,EAAE,yBAAyB;IAC/C,mBAAmB,EAAE,qBAAqB;IAC1C,iBAAiB,EAAE,0BAA0B;CACvC,CAAC;AAEE,QAAA,sBAAsB,GAAG;IAClC,gBAAgB,EAAE,qBAAqB;IACvC,sBAAsB,EAAE,2BAA2B;IACnD,4BAA4B,EAAE,iCAAiC;IAC/D,uBAAuB,EAAE,4BAA4B;IACrD,yBAAyB,EAAE,8BAA8B;IACzD,uBAAuB,EAAE,4BAA4B;CAC/C,CAAC"}
|
|
@@ -1,51 +0,0 @@
|
|
|
1
|
-
export declare const PROMETHEUS_METRICS: {
|
|
2
|
-
readonly HTTP_REQUESTS_TOTAL: "http_requests_total";
|
|
3
|
-
readonly HTTP_REQUEST_DURATION: "http_request_duration_seconds";
|
|
4
|
-
readonly HTTP_ERRORS_TOTAL: "http_errors_total";
|
|
5
|
-
readonly HTTP_RESPONSE_SIZE: "http_response_size_bytes";
|
|
6
|
-
readonly DB_CONNECTIONS_ACTIVE: "db_connections_active";
|
|
7
|
-
readonly DB_CONNECTIONS_IDLE: "db_connections_idle";
|
|
8
|
-
readonly DB_QUERY_DURATION: "db_query_duration_seconds";
|
|
9
|
-
readonly DB_QUERIES_TOTAL: "db_queries_total";
|
|
10
|
-
readonly DB_ERRORS_TOTAL: "db_errors_total";
|
|
11
|
-
readonly GRPC_REQUESTS_TOTAL: "grpc_requests_total";
|
|
12
|
-
readonly GRPC_REQUEST_DURATION: "grpc_request_duration_seconds";
|
|
13
|
-
readonly GRPC_ERRORS_TOTAL: "grpc_errors_total";
|
|
14
|
-
readonly KAFKA_MESSAGES_SENT: "kafka_messages_sent_total";
|
|
15
|
-
readonly KAFKA_MESSAGES_RECEIVED: "kafka_messages_received_total";
|
|
16
|
-
readonly KAFKA_ERRORS_TOTAL: "kafka_errors_total";
|
|
17
|
-
readonly PROCESS_CPU_USAGE: "process_cpu_usage_percent";
|
|
18
|
-
readonly PROCESS_MEMORY_USAGE: "process_memory_usage_bytes";
|
|
19
|
-
readonly PROCESS_HEAP_USED: "process_heap_used_bytes";
|
|
20
|
-
readonly PROCESS_HEAP_TOTAL: "process_heap_total_bytes";
|
|
21
|
-
readonly PROCESS_UPTIME: "process_uptime_seconds";
|
|
22
|
-
readonly ACTIVE_USERS: "active_users_total";
|
|
23
|
-
readonly REGISTERED_USERS: "registered_users_total";
|
|
24
|
-
readonly REQUESTS_PER_SECOND: "requests_per_second";
|
|
25
|
-
readonly ERROR_RATE: "error_rate_percent";
|
|
26
|
-
readonly CACHE_HITS: "cache_hits_total";
|
|
27
|
-
readonly CACHE_MISSES: "cache_misses_total";
|
|
28
|
-
readonly CACHE_SIZE: "cache_size_bytes";
|
|
29
|
-
};
|
|
30
|
-
export declare const METRIC_LABELS: {
|
|
31
|
-
readonly SERVICE: "service";
|
|
32
|
-
readonly METHOD: "method";
|
|
33
|
-
readonly STATUS: "status";
|
|
34
|
-
readonly ENDPOINT: "endpoint";
|
|
35
|
-
readonly ERROR_TYPE: "error_type";
|
|
36
|
-
readonly DATABASE: "database";
|
|
37
|
-
readonly QUERY_TYPE: "query_type";
|
|
38
|
-
readonly USER_ROLE: "user_role";
|
|
39
|
-
readonly GRPC_METHOD: "grpc_method";
|
|
40
|
-
readonly KAFKA_TOPIC: "kafka_topic";
|
|
41
|
-
};
|
|
42
|
-
export declare const HEALTH_CHECK_ENDPOINTS: {
|
|
43
|
-
readonly LIVENESS: "/health/liveness";
|
|
44
|
-
readonly READINESS: "/health/readiness";
|
|
45
|
-
readonly STARTUP: "/health/startup";
|
|
46
|
-
};
|
|
47
|
-
export declare const MONITORING_CONFIG: {
|
|
48
|
-
readonly SCRAPE_INTERVAL: 15;
|
|
49
|
-
readonly SCRAPE_TIMEOUT: 10;
|
|
50
|
-
readonly RETENTION_DAYS: 15;
|
|
51
|
-
};
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.MONITORING_CONFIG = exports.HEALTH_CHECK_ENDPOINTS = exports.METRIC_LABELS = exports.PROMETHEUS_METRICS = void 0;
|
|
4
|
-
exports.PROMETHEUS_METRICS = {
|
|
5
|
-
HTTP_REQUESTS_TOTAL: 'http_requests_total',
|
|
6
|
-
HTTP_REQUEST_DURATION: 'http_request_duration_seconds',
|
|
7
|
-
HTTP_ERRORS_TOTAL: 'http_errors_total',
|
|
8
|
-
HTTP_RESPONSE_SIZE: 'http_response_size_bytes',
|
|
9
|
-
DB_CONNECTIONS_ACTIVE: 'db_connections_active',
|
|
10
|
-
DB_CONNECTIONS_IDLE: 'db_connections_idle',
|
|
11
|
-
DB_QUERY_DURATION: 'db_query_duration_seconds',
|
|
12
|
-
DB_QUERIES_TOTAL: 'db_queries_total',
|
|
13
|
-
DB_ERRORS_TOTAL: 'db_errors_total',
|
|
14
|
-
GRPC_REQUESTS_TOTAL: 'grpc_requests_total',
|
|
15
|
-
GRPC_REQUEST_DURATION: 'grpc_request_duration_seconds',
|
|
16
|
-
GRPC_ERRORS_TOTAL: 'grpc_errors_total',
|
|
17
|
-
KAFKA_MESSAGES_SENT: 'kafka_messages_sent_total',
|
|
18
|
-
KAFKA_MESSAGES_RECEIVED: 'kafka_messages_received_total',
|
|
19
|
-
KAFKA_ERRORS_TOTAL: 'kafka_errors_total',
|
|
20
|
-
PROCESS_CPU_USAGE: 'process_cpu_usage_percent',
|
|
21
|
-
PROCESS_MEMORY_USAGE: 'process_memory_usage_bytes',
|
|
22
|
-
PROCESS_HEAP_USED: 'process_heap_used_bytes',
|
|
23
|
-
PROCESS_HEAP_TOTAL: 'process_heap_total_bytes',
|
|
24
|
-
PROCESS_UPTIME: 'process_uptime_seconds',
|
|
25
|
-
ACTIVE_USERS: 'active_users_total',
|
|
26
|
-
REGISTERED_USERS: 'registered_users_total',
|
|
27
|
-
REQUESTS_PER_SECOND: 'requests_per_second',
|
|
28
|
-
ERROR_RATE: 'error_rate_percent',
|
|
29
|
-
CACHE_HITS: 'cache_hits_total',
|
|
30
|
-
CACHE_MISSES: 'cache_misses_total',
|
|
31
|
-
CACHE_SIZE: 'cache_size_bytes',
|
|
32
|
-
};
|
|
33
|
-
exports.METRIC_LABELS = {
|
|
34
|
-
SERVICE: 'service',
|
|
35
|
-
METHOD: 'method',
|
|
36
|
-
STATUS: 'status',
|
|
37
|
-
ENDPOINT: 'endpoint',
|
|
38
|
-
ERROR_TYPE: 'error_type',
|
|
39
|
-
DATABASE: 'database',
|
|
40
|
-
QUERY_TYPE: 'query_type',
|
|
41
|
-
USER_ROLE: 'user_role',
|
|
42
|
-
GRPC_METHOD: 'grpc_method',
|
|
43
|
-
KAFKA_TOPIC: 'kafka_topic',
|
|
44
|
-
};
|
|
45
|
-
exports.HEALTH_CHECK_ENDPOINTS = {
|
|
46
|
-
LIVENESS: '/health/liveness',
|
|
47
|
-
READINESS: '/health/readiness',
|
|
48
|
-
STARTUP: '/health/startup',
|
|
49
|
-
};
|
|
50
|
-
exports.MONITORING_CONFIG = {
|
|
51
|
-
SCRAPE_INTERVAL: 15,
|
|
52
|
-
SCRAPE_TIMEOUT: 10,
|
|
53
|
-
RETENTION_DAYS: 15,
|
|
54
|
-
};
|
|
55
|
-
//# sourceMappingURL=monitoring.constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"monitoring.constants.js","sourceRoot":"","sources":["../../src/constants/monitoring.constants.ts"],"names":[],"mappings":";;;AAIa,QAAA,kBAAkB,GAAG;IAE9B,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,+BAA+B;IACtD,iBAAiB,EAAE,mBAAmB;IACtC,kBAAkB,EAAE,0BAA0B;IAG9C,qBAAqB,EAAE,uBAAuB;IAC9C,mBAAmB,EAAE,qBAAqB;IAC1C,iBAAiB,EAAE,2BAA2B;IAC9C,gBAAgB,EAAE,kBAAkB;IACpC,eAAe,EAAE,iBAAiB;IAGlC,mBAAmB,EAAE,qBAAqB;IAC1C,qBAAqB,EAAE,+BAA+B;IACtD,iBAAiB,EAAE,mBAAmB;IAGtC,mBAAmB,EAAE,2BAA2B;IAChD,uBAAuB,EAAE,+BAA+B;IACxD,kBAAkB,EAAE,oBAAoB;IAGxC,iBAAiB,EAAE,2BAA2B;IAC9C,oBAAoB,EAAE,4BAA4B;IAClD,iBAAiB,EAAE,yBAAyB;IAC5C,kBAAkB,EAAE,0BAA0B;IAC9C,cAAc,EAAE,wBAAwB;IAGxC,YAAY,EAAE,oBAAoB;IAClC,gBAAgB,EAAE,wBAAwB;IAC1C,mBAAmB,EAAE,qBAAqB;IAC1C,UAAU,EAAE,oBAAoB;IAGhC,UAAU,EAAE,kBAAkB;IAC9B,YAAY,EAAE,oBAAoB;IAClC,UAAU,EAAE,kBAAkB;CACxB,CAAC;AAEE,QAAA,aAAa,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,QAAQ,EAAE,UAAU;IACpB,UAAU,EAAE,YAAY;IACxB,QAAQ,EAAE,UAAU;IACpB,UAAU,EAAE,YAAY;IACxB,SAAS,EAAE,WAAW;IACtB,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;CACpB,CAAC;AAEE,QAAA,sBAAsB,GAAG;IAClC,QAAQ,EAAE,kBAAkB;IAC5B,SAAS,EAAE,mBAAmB;IAC9B,OAAO,EAAE,iBAAiB;CACpB,CAAC;AAEE,QAAA,iBAAiB,GAAG;IAC7B,eAAe,EAAE,EAAE;IACnB,cAAc,EAAE,EAAE;IAClB,cAAc,EAAE,EAAE;CACZ,CAAC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.SERVICE_TOKENS = void 0;
|
|
4
|
-
exports.SERVICE_TOKENS = {
|
|
5
|
-
USER_SERVICE: 'USER_PACKAGE',
|
|
6
|
-
AUTH_SERVICE: 'AUTH_PACKAGE',
|
|
7
|
-
LOGGING_SERVICE: 'LOGGING_PACKAGE',
|
|
8
|
-
CONFIG_SERVICE: 'CONFIG_PACKAGE',
|
|
9
|
-
};
|
|
10
|
-
//# sourceMappingURL=tokens.constants.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.constants.js","sourceRoot":"","sources":["../../src/constants/tokens.constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,cAAc,GAAG;IAC1B,YAAY,EAAE,cAAc;IAC5B,YAAY,EAAE,cAAc;IAC5B,eAAe,EAAE,iBAAiB;IAClC,cAAc,EAAE,gBAAgB;CAC1B,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"http-exception.filter.js","sourceRoot":"","sources":["../../src/filters/http-exception.filter.ts"],"names":[],"mappings":";;;;;;;;;;AACA,2CAA0G;AAInG,IAAM,mBAAmB,2BAAzB,MAAM,mBAAmB;IAAzB;QACc,WAAM,GAAG,IAAI,eAAM,CAAC,qBAAmB,CAAC,IAAI,CAAC,CAAC;IA0CnE,CAAC;IAxCG,KAAK,CAAC,SAAkB,EAAE,IAAmB;QACzC,MAAM,GAAG,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,WAAW,EAAY,CAAC;QAC7C,MAAM,OAAO,GAAG,GAAG,CAAC,UAAU,EAAW,CAAC;QAE1C,MAAM,MAAM,GACR,SAAS,YAAY,sBAAa;YAC9B,CAAC,CAAC,SAAS,CAAC,SAAS,EAAE;YACvB,CAAC,CAAC,mBAAU,CAAC,qBAAqB,CAAC;QAE3C,MAAM,OAAO,GACT,SAAS,YAAY,sBAAa;YAC9B,CAAC,CAAC,SAAS,CAAC,WAAW,EAAE;YACzB,CAAC,CAAC,uBAAuB,CAAC;QAGlC,MAAM,YAAY,GAAG,OAAO,OAAO,KAAK,QAAQ;YAC5C,CAAC,CAAC,OAAO;YACT,CAAC,CAAE,OAAe,CAAC,OAAO,IAAI,OAAO,CAAC;QAG1C,IAAI,MAAM,IAAI,GAAG,EAAE,CAAC;YAChB,IAAI,CAAC,MAAM,CAAC,KAAK,CACb,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,GAAG,MAAM,MAAM,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,EAClF,SAAS,YAAY,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CACpD,CAAC;QACN,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,MAAM,CAAC,IAAI,CACZ,IAAI,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,GAAG,MAAM,MAAM,MAAM,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,EAAE,CACrF,CAAC;QACN,CAAC;QAED,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC;YACzB,UAAU,EAAE,MAAM;YAClB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;YACnC,IAAI,EAAE,OAAO,CAAC,GAAG;YACjB,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,YAAY;SACtB,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AA3CY,kDAAmB;8BAAnB,mBAAmB;IAD/B,IAAA,cAAK,GAAE;GACK,mBAAmB,CA2C/B"}
|
package/dist/filters/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './http-exception.filter';
|
package/dist/filters/index.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./http-exception.filter"), exports);
|
|
18
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/filters/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,0DAAwC"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { NestInterceptor, ExecutionContext, CallHandler } from '@nestjs/common';
|
|
2
|
-
import { Observable } from 'rxjs';
|
|
3
|
-
export declare class HttpLoggingInterceptor implements NestInterceptor {
|
|
4
|
-
private readonly serviceName;
|
|
5
|
-
private readonly logger;
|
|
6
|
-
private readonly loggingUrl;
|
|
7
|
-
constructor(serviceName: string);
|
|
8
|
-
intercept(context: ExecutionContext, next: CallHandler): Observable<any>;
|
|
9
|
-
private sendLog;
|
|
10
|
-
}
|
|
@@ -1,74 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
9
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.HttpLoggingInterceptor = void 0;
|
|
13
|
-
const common_1 = require("@nestjs/common");
|
|
14
|
-
const rxjs_1 = require("rxjs");
|
|
15
|
-
const operators_1 = require("rxjs/operators");
|
|
16
|
-
const axios_1 = require("axios");
|
|
17
|
-
let HttpLoggingInterceptor = class HttpLoggingInterceptor {
|
|
18
|
-
constructor(serviceName) {
|
|
19
|
-
this.serviceName = serviceName;
|
|
20
|
-
this.logger = new common_1.Logger('HttpLoggingInterceptor');
|
|
21
|
-
this.loggingUrl = process.env.LOGGING_API_URL || 'http://logging-microservice:3009/logging-api/logs';
|
|
22
|
-
}
|
|
23
|
-
intercept(context, next) {
|
|
24
|
-
const request = context.switchToHttp().getRequest();
|
|
25
|
-
if (!request)
|
|
26
|
-
return next.handle();
|
|
27
|
-
const { method, url, body, headers } = request;
|
|
28
|
-
const startTime = Date.now();
|
|
29
|
-
return next.handle().pipe((0, operators_1.tap)((response) => {
|
|
30
|
-
const duration = Date.now() - startTime;
|
|
31
|
-
this.sendLog('INFO', `HTTP ${method} ${url} completed`, {
|
|
32
|
-
method,
|
|
33
|
-
url,
|
|
34
|
-
duration: `${duration}ms`,
|
|
35
|
-
statusCode: context.switchToHttp().getResponse().statusCode,
|
|
36
|
-
});
|
|
37
|
-
}), (0, operators_1.catchError)((error) => {
|
|
38
|
-
const duration = Date.now() - startTime;
|
|
39
|
-
this.sendLog('ERROR', `HTTP ${method} ${url} failed: ${error.message}`, {
|
|
40
|
-
method,
|
|
41
|
-
url,
|
|
42
|
-
duration: `${duration}ms`,
|
|
43
|
-
error: error.response?.data || error.message,
|
|
44
|
-
statusCode: error.status || 500,
|
|
45
|
-
});
|
|
46
|
-
return (0, rxjs_1.throwError)(() => error);
|
|
47
|
-
}));
|
|
48
|
-
}
|
|
49
|
-
async sendLog(level, message, metadata) {
|
|
50
|
-
try {
|
|
51
|
-
if (this.serviceName === 'logging-microservice')
|
|
52
|
-
return;
|
|
53
|
-
await axios_1.default.post(this.loggingUrl, {
|
|
54
|
-
logs: [{
|
|
55
|
-
service: this.serviceName,
|
|
56
|
-
level,
|
|
57
|
-
message,
|
|
58
|
-
timestamp: new Date().toISOString(),
|
|
59
|
-
metadata,
|
|
60
|
-
userId: 'system',
|
|
61
|
-
}]
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
catch (e) {
|
|
65
|
-
this.logger.error(`Failed to ship log: ${e.message}`);
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
};
|
|
69
|
-
exports.HttpLoggingInterceptor = HttpLoggingInterceptor;
|
|
70
|
-
exports.HttpLoggingInterceptor = HttpLoggingInterceptor = __decorate([
|
|
71
|
-
(0, common_1.Injectable)(),
|
|
72
|
-
__metadata("design:paramtypes", [String])
|
|
73
|
-
], HttpLoggingInterceptor);
|
|
74
|
-
//# sourceMappingURL=http-logging.interceptor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"http-logging.interceptor.js","sourceRoot":"","sources":["../../src/interceptors/http-logging.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,2CAMwB;AACxB,+BAA8C;AAC9C,8CAAiD;AACjD,iCAA0B;AAGnB,IAAM,sBAAsB,GAA5B,MAAM,sBAAsB;IAI/B,YAA6B,WAAmB;QAAnB,gBAAW,GAAX,WAAW,CAAQ;QAH/B,WAAM,GAAG,IAAI,eAAM,CAAC,wBAAwB,CAAC,CAAC;QAC9C,eAAU,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,IAAI,mDAAmD,CAAC;IAE7D,CAAC;IAErD,SAAS,CAAC,OAAyB,EAAE,IAAiB;QAClD,MAAM,OAAO,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,UAAU,EAAE,CAAC;QACpD,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QAEnC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CACrB,IAAA,eAAG,EAAC,CAAC,QAAQ,EAAE,EAAE;YACb,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,QAAQ,MAAM,IAAI,GAAG,YAAY,EAAE;gBACpD,MAAM;gBACN,GAAG;gBACH,QAAQ,EAAE,GAAG,QAAQ,IAAI;gBACzB,UAAU,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU;aAC9D,CAAC,CAAC;QACP,CAAC,CAAC,EACF,IAAA,sBAAU,EAAC,CAAC,KAAK,EAAE,EAAE;YACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;YACxC,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,QAAQ,MAAM,IAAI,GAAG,YAAY,KAAK,CAAC,OAAO,EAAE,EAAE;gBACpE,MAAM;gBACN,GAAG;gBACH,QAAQ,EAAE,GAAG,QAAQ,IAAI;gBACzB,KAAK,EAAE,KAAK,CAAC,QAAQ,EAAE,IAAI,IAAI,KAAK,CAAC,OAAO;gBAC5C,UAAU,EAAE,KAAK,CAAC,MAAM,IAAI,GAAG;aAClC,CAAC,CAAC;YACH,OAAO,IAAA,iBAAU,EAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC,CAAC,CACL,CAAC;IACN,CAAC;IAEO,KAAK,CAAC,OAAO,CAAC,KAAa,EAAE,OAAe,EAAE,QAAa;QAC/D,IAAI,CAAC;YAGD,IAAI,IAAI,CAAC,WAAW,KAAK,sBAAsB;gBAAE,OAAO;YAExD,MAAM,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;gBAC9B,IAAI,EAAE,CAAC;wBACH,OAAO,EAAE,IAAI,CAAC,WAAW;wBACzB,KAAK;wBACL,OAAO;wBACP,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;wBACnC,QAAQ;wBACR,MAAM,EAAE,QAAQ;qBACnB,CAAC;aACL,CAAC,CAAC;QACP,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YAET,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1D,CAAC;IACL,CAAC;CACJ,CAAA;AA1DY,wDAAsB;iCAAtB,sBAAsB;IADlC,IAAA,mBAAU,GAAE;;GACA,sBAAsB,CA0DlC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./logging.interceptor"), exports);
|
|
18
|
-
__exportStar(require("./transform.interceptor"), exports);
|
|
19
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/interceptors/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,wDAAsC;AACtC,0DAAwC"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
import { NestInterceptor, ExecutionContext, CallHandler } from '@nestjs/common';
|
|
2
|
-
import { Observable } from 'rxjs';
|
|
3
|
-
export declare class LoggingInterceptor implements NestInterceptor {
|
|
4
|
-
private readonly logger;
|
|
5
|
-
intercept(context: ExecutionContext, next: CallHandler): Observable<any>;
|
|
6
|
-
}
|
|
@@ -1,41 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
3
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
4
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
5
|
-
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
|
-
};
|
|
8
|
-
var LoggingInterceptor_1;
|
|
9
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.LoggingInterceptor = void 0;
|
|
11
|
-
const common_1 = require("@nestjs/common");
|
|
12
|
-
const operators_1 = require("rxjs/operators");
|
|
13
|
-
const crypto_1 = require("crypto");
|
|
14
|
-
let LoggingInterceptor = LoggingInterceptor_1 = class LoggingInterceptor {
|
|
15
|
-
constructor() {
|
|
16
|
-
this.logger = new common_1.Logger(LoggingInterceptor_1.name);
|
|
17
|
-
}
|
|
18
|
-
intercept(context, next) {
|
|
19
|
-
const httpContext = context.switchToHttp();
|
|
20
|
-
const request = httpContext.getRequest();
|
|
21
|
-
const response = httpContext.getResponse();
|
|
22
|
-
const userAgent = request.get('user-agent') || '';
|
|
23
|
-
const { ip, method, path: url } = request;
|
|
24
|
-
const traceId = request.headers['x-request-id'] || (0, crypto_1.randomUUID)();
|
|
25
|
-
request.headers['x-request-id'] = traceId;
|
|
26
|
-
response.setHeader('x-request-id', traceId);
|
|
27
|
-
this.logger.log(`[${traceId}] Incoming Request: ${method} ${url} - ${userAgent} ${ip}`);
|
|
28
|
-
const now = Date.now();
|
|
29
|
-
return next
|
|
30
|
-
.handle()
|
|
31
|
-
.pipe((0, operators_1.tap)(() => {
|
|
32
|
-
const duration = Date.now() - now;
|
|
33
|
-
this.logger.log(`[${traceId}] Response Sent: ${method} ${url} ${response.statusCode} - ${duration}ms`);
|
|
34
|
-
}));
|
|
35
|
-
}
|
|
36
|
-
};
|
|
37
|
-
exports.LoggingInterceptor = LoggingInterceptor;
|
|
38
|
-
exports.LoggingInterceptor = LoggingInterceptor = LoggingInterceptor_1 = __decorate([
|
|
39
|
-
(0, common_1.Injectable)()
|
|
40
|
-
], LoggingInterceptor);
|
|
41
|
-
//# sourceMappingURL=logging.interceptor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logging.interceptor.js","sourceRoot":"","sources":["../../src/interceptors/logging.interceptor.ts"],"names":[],"mappings":";;;;;;;;;;AACA,2CAAoG;AAEpG,8CAAqC;AACrC,mCAAoC;AAI7B,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAAxB;QACc,WAAM,GAAG,IAAI,eAAM,CAAC,oBAAkB,CAAC,IAAI,CAAC,CAAC;IA2BlE,CAAC;IAzBG,SAAS,CAAC,OAAyB,EAAE,IAAiB;QAClD,MAAM,WAAW,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,WAAW,CAAC,UAAU,EAAW,CAAC;QAClD,MAAM,QAAQ,GAAG,WAAW,CAAC,WAAW,EAAY,CAAC;QAErD,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,EAAE,CAAC;QAClD,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;QAG1C,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,IAAA,mBAAU,GAAE,CAAC;QAChE,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,OAAiB,CAAC;QACpD,QAAQ,CAAC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;QAE5C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,OAAO,uBAAuB,MAAM,IAAI,GAAG,MAAM,SAAS,IAAI,EAAE,EAAE,CAAC,CAAC;QAExF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,OAAO,IAAI;aACN,MAAM,EAAE;aACR,IAAI,CACD,IAAA,eAAG,EAAC,GAAG,EAAE;YACL,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,GAAG,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,OAAO,oBAAoB,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,UAAU,MAAM,QAAQ,IAAI,CAAC,CAAC;QAC3G,CAAC,CAAC,CACL,CAAC;IACV,CAAC;CACJ,CAAA;AA5BY,gDAAkB;6BAAlB,kBAAkB;IAD9B,IAAA,mBAAU,GAAE;GACA,kBAAkB,CA4B9B"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"transform.interceptor.js","sourceRoot":"","sources":["../../src/interceptors/transform.interceptor.ts"],"names":[],"mappings":";;;;;;;;;AACA,2CAA4F;AAE5F,8CAAqC;AAQ9B,IAAM,oBAAoB,GAA1B,MAAM,oBAAoB;IAC7B,SAAS,CAAC,OAAyB,EAAE,IAAiB;QAClD,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,CACrB,IAAA,eAAG,EAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACT,UAAU,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC,WAAW,EAAE,CAAC,UAAU;YAC3D,IAAI;SACP,CAAC,CAAC,CACN,CAAC;IACN,CAAC;CACJ,CAAA;AATY,oDAAoB;+BAApB,oBAAoB;IADhC,IAAA,mBAAU,GAAE;GACA,oBAAoB,CAShC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./metrics/metrics.module"), exports);
|
|
18
|
-
__exportStar(require("./tracing"), exports);
|
|
19
|
-
//# sourceMappingURL=index.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/observability/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,2DAAyC;AACzC,4CAA0B"}
|