@eqxjs/nest-logger 3.1.1-beta.0 → 3.2.0
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/README.md +24 -0
- package/dist/core/loggers/base-app.logger.js +1 -1
- package/dist/core/loggers/base-app.logger.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.js.map +1 -1
- package/dist/logger.module.d.ts +6 -0
- package/dist/logger.module.js +29 -3
- package/dist/logger.module.js.map +1 -1
- package/package.json +67 -34
- package/CHANGELOG +0 -89
- package/MIGRATION.md +0 -234
- package/PERFORMANCE_IMPROVEMENTS.md +0 -158
- package/RESTRUCTURING_SUMMARY.md +0 -272
- package/STRUCTURE.md +0 -110
- package/commitlint.config.mjs +0 -46
- package/jest.config.mjs +0 -24
- package/tsconfig.spec.json +0 -6
package/README.md
CHANGED
|
@@ -110,6 +110,8 @@ LoggerDto includes 27+ fields for comprehensive logging:
|
|
|
110
110
|
|
|
111
111
|
### 1. Import the Module
|
|
112
112
|
|
|
113
|
+
Use default configuration:
|
|
114
|
+
|
|
113
115
|
```typescript
|
|
114
116
|
import { Module } from '@nestjs/common';
|
|
115
117
|
import { CustomLoggerModule } from '@eqxjs/nest-logger';
|
|
@@ -120,6 +122,28 @@ import { CustomLoggerModule } from '@eqxjs/nest-logger';
|
|
|
120
122
|
export class AppModule {}
|
|
121
123
|
```
|
|
122
124
|
|
|
125
|
+
Use static register to set global logger defaults:
|
|
126
|
+
|
|
127
|
+
```typescript
|
|
128
|
+
import { Module } from '@nestjs/common';
|
|
129
|
+
import { CustomLoggerModule } from '@eqxjs/nest-logger';
|
|
130
|
+
|
|
131
|
+
@Module({
|
|
132
|
+
imports: [
|
|
133
|
+
CustomLoggerModule.register({
|
|
134
|
+
appName: 'PaymentAPI',
|
|
135
|
+
context: 'PaymentService',
|
|
136
|
+
}),
|
|
137
|
+
],
|
|
138
|
+
})
|
|
139
|
+
export class AppModule {}
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
`register` options:
|
|
143
|
+
|
|
144
|
+
- `appName` - default application name used by `CustomLogger` and `AppLogger`
|
|
145
|
+
- `context` - default component/context name used by `AppLogger`
|
|
146
|
+
|
|
123
147
|
### 2. Use the Logger
|
|
124
148
|
|
|
125
149
|
```typescript
|
|
@@ -446,7 +446,7 @@ let BaseAppLogger = class BaseAppLogger extends custom_logger_1.CustomLogger {
|
|
|
446
446
|
this.otelLogger.emit({
|
|
447
447
|
severityNumber: severityNumber,
|
|
448
448
|
severityText: loggerDetail.level,
|
|
449
|
-
body: JSON.stringify(loggerDetail, this.jsonTransformer),
|
|
449
|
+
body: JSON.stringify(loggerDetail, (key, value) => this.jsonTransformer(key, value)),
|
|
450
450
|
attributes: attributes,
|
|
451
451
|
timestamp: Date.now(),
|
|
452
452
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-app.logger.js","sourceRoot":"","sources":["../../../src/core/loggers/base-app.logger.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"base-app.logger.js","sourceRoot":"","sources":["../../../src/core/loggers/base-app.logger.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ export { CustomLogger } from './core/loggers/custom.logger';
|
|
|
3
3
|
export { AppLogger } from './core/loggers/app.logger';
|
|
4
4
|
export { BaseAppLogger } from './core/loggers/base-app.logger';
|
|
5
5
|
export { CustomLoggerModule } from './logger.module';
|
|
6
|
+
export { CustomLoggerModuleOptions } from './logger.module';
|
|
6
7
|
export { DataM, DataM1I, DataM2I, DataM3I, IDataM, } from './interfaces/data.interface';
|
|
7
8
|
export { DataHeaderI } from './interfaces/data-header.interface';
|
|
8
9
|
export { DataProtocolI } from './interfaces/data-protocol.interface';
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,4BAA0B;AAE1B,eAAe;AACf,8DAA4D;AAAnD,6GAAA,YAAY,OAAA;AACrB,wDAAsD;AAA7C,uGAAA,SAAS,OAAA;AAClB,kEAA+D;AAAtD,gHAAA,aAAa,OAAA;AAEtB,SAAS;AACT,iDAAqD;AAA5C,mHAAA,kBAAkB,OAAA;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,4BAA0B;AAE1B,eAAe;AACf,8DAA4D;AAAnD,6GAAA,YAAY,OAAA;AACrB,wDAAsD;AAA7C,uGAAA,SAAS,OAAA;AAClB,kEAA+D;AAAtD,gHAAA,aAAa,OAAA;AAEtB,SAAS;AACT,iDAAqD;AAA5C,mHAAA,kBAAkB,OAAA;AAgB3B,SAAS;AACT,kDAAgD;AAAvC,uGAAA,SAAS,OAAA;AAElB,YAAY;AACZ,+EAAoE;AAA3D,wHAAA,aAAa,OAAA;AAEtB,UAAU;AACV,6EAA6D;AAApD,mHAAA,QAAQ,OAAA;AACjB,6DAAuD;AAA9C,6GAAA,UAAU,OAAA;AACnB,mDAI8B;AAH5B,2GAAA,aAAa,OAAA;AACb,0GAAA,YAAY,OAAA;AACZ,iHAAA,mBAAmB,OAAA"}
|
package/dist/logger.module.d.ts
CHANGED
package/dist/logger.module.js
CHANGED
|
@@ -5,17 +5,43 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
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
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
|
+
var CustomLoggerModule_1;
|
|
8
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
10
|
exports.CustomLoggerModule = void 0;
|
|
10
11
|
const common_1 = require("@nestjs/common");
|
|
11
12
|
const app_logger_1 = require("./core/loggers/app.logger");
|
|
12
13
|
const custom_logger_1 = require("./core/loggers/custom.logger");
|
|
13
|
-
|
|
14
|
+
const DEFAULT_MODULE_OPTIONS = {
|
|
15
|
+
appName: undefined,
|
|
16
|
+
context: undefined,
|
|
17
|
+
};
|
|
18
|
+
const createLoggerProviders = (options) => [
|
|
19
|
+
{
|
|
20
|
+
provide: custom_logger_1.CustomLogger,
|
|
21
|
+
useFactory: () => new custom_logger_1.CustomLogger(options.appName),
|
|
22
|
+
},
|
|
23
|
+
{
|
|
24
|
+
provide: app_logger_1.AppLogger,
|
|
25
|
+
useFactory: () => new app_logger_1.AppLogger(options.appName, options.context),
|
|
26
|
+
},
|
|
27
|
+
];
|
|
28
|
+
let CustomLoggerModule = CustomLoggerModule_1 = class CustomLoggerModule {
|
|
29
|
+
static register(options = {}) {
|
|
30
|
+
const normalizedOptions = {
|
|
31
|
+
...DEFAULT_MODULE_OPTIONS,
|
|
32
|
+
...options,
|
|
33
|
+
};
|
|
34
|
+
return {
|
|
35
|
+
module: CustomLoggerModule_1,
|
|
36
|
+
providers: createLoggerProviders(normalizedOptions),
|
|
37
|
+
exports: [custom_logger_1.CustomLogger, app_logger_1.AppLogger],
|
|
38
|
+
};
|
|
39
|
+
}
|
|
14
40
|
};
|
|
15
41
|
exports.CustomLoggerModule = CustomLoggerModule;
|
|
16
|
-
exports.CustomLoggerModule = CustomLoggerModule = __decorate([
|
|
42
|
+
exports.CustomLoggerModule = CustomLoggerModule = CustomLoggerModule_1 = __decorate([
|
|
17
43
|
(0, common_1.Module)({
|
|
18
|
-
providers:
|
|
44
|
+
providers: createLoggerProviders(DEFAULT_MODULE_OPTIONS),
|
|
19
45
|
exports: [custom_logger_1.CustomLogger, app_logger_1.AppLogger],
|
|
20
46
|
})
|
|
21
47
|
], CustomLoggerModule);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.module.js","sourceRoot":"","sources":["../src/logger.module.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"logger.module.js","sourceRoot":"","sources":["../src/logger.module.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,2CAAiE;AACjE,0DAAsD;AACtD,gEAA4D;AAO5D,MAAM,sBAAsB,GAA8B;IACxD,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;CACnB,CAAC;AAEF,MAAM,qBAAqB,GAAG,CAC5B,OAAkC,EACtB,EAAE,CAAC;IACf;QACE,OAAO,EAAE,4BAAY;QACrB,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,4BAAY,CAAC,OAAO,CAAC,OAAO,CAAC;KACpD;IACD;QACE,OAAO,EAAE,sBAAS;QAClB,UAAU,EAAE,GAAG,EAAE,CAAC,IAAI,sBAAS,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC,OAAO,CAAC;KAClE;CACF,CAAC;AAMK,IAAM,kBAAkB,0BAAxB,MAAM,kBAAkB;IAC7B,MAAM,CAAC,QAAQ,CAAC,UAAqC,EAAE;QACrD,MAAM,iBAAiB,GAAG;YACxB,GAAG,sBAAsB;YACzB,GAAG,OAAO;SACX,CAAC;QAEF,OAAO;YACL,MAAM,EAAE,oBAAkB;YAC1B,SAAS,EAAE,qBAAqB,CAAC,iBAAiB,CAAC;YACnD,OAAO,EAAE,CAAC,4BAAY,EAAE,sBAAS,CAAC;SACnC,CAAC;IACJ,CAAC;CACF,CAAA;AAbY,gDAAkB;6BAAlB,kBAAkB;IAJ9B,IAAA,eAAM,EAAC;QACN,SAAS,EAAE,qBAAqB,CAAC,sBAAsB,CAAC;QACxD,OAAO,EAAE,CAAC,4BAAY,EAAE,sBAAS,CAAC;KACnC,CAAC;GACW,kBAAkB,CAa9B"}
|
package/package.json
CHANGED
|
@@ -1,14 +1,27 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eqxjs/nest-logger",
|
|
3
|
-
"version": "3.
|
|
3
|
+
"version": "3.2.0",
|
|
4
4
|
"description": "NestJS logger module for EQXJS",
|
|
5
5
|
"author": "Atit Plangson",
|
|
6
6
|
"license": "ISC",
|
|
7
|
-
"
|
|
7
|
+
"repository": {
|
|
8
|
+
"type": "git",
|
|
9
|
+
"url": "git+https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger.git"
|
|
10
|
+
},
|
|
11
|
+
"bugs": {
|
|
12
|
+
"url": "https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/issues"
|
|
13
|
+
},
|
|
14
|
+
"homepage": "https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger#readme",
|
|
8
15
|
"main": "./dist/index.js",
|
|
9
16
|
"types": "./dist/index.d.ts",
|
|
17
|
+
"files": [
|
|
18
|
+
"dist"
|
|
19
|
+
],
|
|
20
|
+
"engines": {
|
|
21
|
+
"node": ">=24"
|
|
22
|
+
},
|
|
10
23
|
"scripts": {
|
|
11
|
-
"prebuild": "
|
|
24
|
+
"prebuild": "tsc -b tsconfig.build.json --clean && rm -rf dist",
|
|
12
25
|
"format": "prettier --check \"src/**/*.ts\" \"test/**/*.ts\"",
|
|
13
26
|
"format:fix": "prettier --write --list-different \"src/**/*.ts\" \"test/**/*.ts\"",
|
|
14
27
|
"install:dev": "yarn install && husky && yarn run install:dev:commit-msg && yarn run install:dev:pre-commit && yarn run install:dev:prepare-commit-msg",
|
|
@@ -26,63 +39,83 @@
|
|
|
26
39
|
"test:watch": "jest --watch",
|
|
27
40
|
"test:cov": "jest --coverage",
|
|
28
41
|
"test:debug": "node --inspect-brk -r tsconfig-paths/register -r ts-node/register node_modules/.bin/jest --runInBand",
|
|
29
|
-
"release": "
|
|
30
|
-
"release:changelog": "
|
|
31
|
-
"release:init": "
|
|
32
|
-
"release:init:changelog": "
|
|
33
|
-
"prepublishOnly": "
|
|
34
|
-
|
|
35
|
-
"engines": {
|
|
36
|
-
"node": ">=22"
|
|
37
|
-
},
|
|
38
|
-
"overrides": {
|
|
39
|
-
"lodash": "^4.17.23",
|
|
40
|
-
"tmp": "^0.2.5",
|
|
41
|
-
"inquirer": "^13.3.0"
|
|
42
|
+
"release": "commit-and-tag-version --infile CHANGELOG",
|
|
43
|
+
"release:changelog": "commit-and-tag-version --infile CHANGELOG --skip.tag --skip.commit",
|
|
44
|
+
"release:init": "commit-and-tag-version --first-release --infile CHANGELOG",
|
|
45
|
+
"release:init:changelog": "commit-and-tag-version --first-release --infile CHANGELOG --skip.tag --skip.commit",
|
|
46
|
+
"prepublishOnly": "npm run build && npm run test:cov",
|
|
47
|
+
"prepack": "npm run build && npm run test:cov"
|
|
42
48
|
},
|
|
43
49
|
"dependencies": {
|
|
44
|
-
"@nestjs/common": "
|
|
45
|
-
"@opentelemetry/api": "^1.9.
|
|
46
|
-
"@opentelemetry/api-logs": "^0.
|
|
50
|
+
"@nestjs/common": "^11.1.17",
|
|
51
|
+
"@opentelemetry/api": "^1.9.1",
|
|
52
|
+
"@opentelemetry/api-logs": "^0.214.0",
|
|
47
53
|
"moment": "^2.30.1",
|
|
48
54
|
"perf_hooks": "^0.0.1",
|
|
49
55
|
"rxjs": "^7.8.2",
|
|
50
56
|
"winston": "^3.19.0"
|
|
51
57
|
},
|
|
52
58
|
"devDependencies": {
|
|
53
|
-
"@commitlint/cli": "^20.
|
|
54
|
-
"@commitlint/config-conventional": "^20.
|
|
55
|
-
"@commitlint/types": "^20.
|
|
59
|
+
"@commitlint/cli": "^20.5.0",
|
|
60
|
+
"@commitlint/config-conventional": "^20.5.0",
|
|
61
|
+
"@commitlint/types": "^20.5.0",
|
|
56
62
|
"@eslint/eslintrc": "^3.3.5",
|
|
57
|
-
"@eslint/js": "^
|
|
58
|
-
"@
|
|
63
|
+
"@eslint/js": "^9.39.4",
|
|
64
|
+
"@jest/globals": "^30.3.0",
|
|
65
|
+
"@nestjs/core": "^11.1.17",
|
|
66
|
+
"@nestjs/testing": "^11.1.17",
|
|
59
67
|
"@types/jest": "^30.0.0",
|
|
60
|
-
"@types/node": "^
|
|
68
|
+
"@types/node": "^24.12.2",
|
|
61
69
|
"@types/supertest": "^7.2.0",
|
|
70
|
+
"commit-and-tag-version": "^12.7.1",
|
|
62
71
|
"commitizen": "^4.3.1",
|
|
63
|
-
"conventional-changelog
|
|
64
|
-
"conventional-changelog-cli": "^5.0.0",
|
|
72
|
+
"conventional-changelog": "^7.2.0",
|
|
65
73
|
"cz-conventional-changelog": "^3.3.0",
|
|
66
|
-
"eslint": "^
|
|
74
|
+
"eslint": "^9.39.4",
|
|
67
75
|
"eslint-config-prettier": "^10.1.8",
|
|
68
|
-
"eslint-plugin-jest": "^29.15.
|
|
76
|
+
"eslint-plugin-jest": "^29.15.1",
|
|
69
77
|
"eslint-plugin-prettier": "^5.5.5",
|
|
70
78
|
"globals": "^17.4.0",
|
|
71
79
|
"husky": "^9.1.7",
|
|
72
80
|
"jest": "^30.3.0",
|
|
73
81
|
"jest-mock-extended": "^4.0.0",
|
|
74
|
-
"lint-staged": "^16.
|
|
82
|
+
"lint-staged": "^16.4.0",
|
|
75
83
|
"prettier": "^3.8.1",
|
|
76
84
|
"reflect-metadata": "^0.2.2",
|
|
77
85
|
"source-map-support": "^0.5.21",
|
|
78
|
-
"standard-version": "^9.5.0",
|
|
79
86
|
"supertest": "^7.2.2",
|
|
80
|
-
"ts-jest": "^29.4.
|
|
81
|
-
"ts-loader": "^9.5.
|
|
87
|
+
"ts-jest": "^29.4.9",
|
|
88
|
+
"ts-loader": "^9.5.7",
|
|
82
89
|
"ts-node": "^10.9.2",
|
|
83
90
|
"tsconfig-paths": "^4.2.0",
|
|
84
91
|
"typescript": "^5.9.3",
|
|
85
|
-
"typescript-eslint": "^8.
|
|
92
|
+
"typescript-eslint": "^8.58.1",
|
|
86
93
|
"webpack": "^5.105.4"
|
|
94
|
+
},
|
|
95
|
+
"overrides": {
|
|
96
|
+
"fast-xml-parser": "^5.5.6",
|
|
97
|
+
"file-type": "^21.3.3",
|
|
98
|
+
"flatted": "^3.4.0",
|
|
99
|
+
"handlebars": "^4.7.9",
|
|
100
|
+
"inquirer": "^13.3.0",
|
|
101
|
+
"lodash": "^4.17.23",
|
|
102
|
+
"minimatch": "^10.2.3",
|
|
103
|
+
"path-to-regexp": "^8.4.0",
|
|
104
|
+
"picomatch": "^4.0.4",
|
|
105
|
+
"tmp": "^0.2.5",
|
|
106
|
+
"yaml": "^2.8.3"
|
|
107
|
+
},
|
|
108
|
+
"resolutions": {
|
|
109
|
+
"fast-xml-parser": "^5.5.6",
|
|
110
|
+
"file-type": "^21.3.3",
|
|
111
|
+
"flatted": "^3.4.0",
|
|
112
|
+
"handlebars": "^4.7.9",
|
|
113
|
+
"inquirer": "^13.3.0",
|
|
114
|
+
"lodash": "^4.17.23",
|
|
115
|
+
"minimatch": "^10.2.3",
|
|
116
|
+
"path-to-regexp": "^8.4.0",
|
|
117
|
+
"picomatch": "^4.0.4",
|
|
118
|
+
"tmp": "^0.2.5",
|
|
119
|
+
"yaml": "^2.8.3"
|
|
87
120
|
}
|
|
88
121
|
}
|
package/CHANGELOG
DELETED
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
|
-
|
|
5
|
-
## [3.1.1-beta.0](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/compare/v3.1.0-beta.8...v3.1.1-beta.0) (2026-03-10)
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
### 🚀 Features
|
|
9
|
-
|
|
10
|
-
* **otel:** push summary logs to OpenTelemetry Logs API (`@opentelemetry/api-logs`) on `summarySuccess` and `summaryError` calls
|
|
11
|
-
* **otel:** include structured log record attributes (result code, service time, session/transaction IDs, use case, device, instance, component) in emitted log records
|
|
12
|
-
* **otel:** include `stack` attribute in error log records when a stack trace is present in `summaryError`
|
|
13
|
-
* **otel:** map `summarySuccess` to `SeverityNumber.INFO` and `summaryError` to `SeverityNumber.ERROR`
|
|
14
|
-
* **masking:** support sensitive data masking feature for log output
|
|
15
|
-
* **types:** support `DataM` body/service fields as `any` type for flexible payload handling
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
### 🐛 Bug Fixes
|
|
19
|
-
|
|
20
|
-
* **timer:** fix floating-point precision of `TimeDiff.diff()` return value (standardised to 3 decimal places via `toFixed(3)`)
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
### 🧼 Code Refactoring
|
|
24
|
-
|
|
25
|
-
* major project restructuring — split monolithic `logger.app.ts` / `logger.service.ts` into layered modules:
|
|
26
|
-
* `src/core/loggers/` — `CustomLogger`, `BaseAppLogger`, `AppLogger`
|
|
27
|
-
* `src/core/formatters/` — `LoggerFormat` (M1/M2/M3 protocol adapters)
|
|
28
|
-
* `src/helpers/` — `LoggerDtoBuilder`, message-formatter, log level, datetime, time-performance helpers
|
|
29
|
-
* `src/interfaces/` — `DataM1I`, `DataM2I`, `DataM3I`, `DataHeaderI`, `DataProtocolI`, `DataServiceI`, `LoggerOpt`
|
|
30
|
-
* `src/models/` — `LoggerDto`
|
|
31
|
-
* `src/constants/` — `ActionMessage`, `DEFAULT_VALUES`, `LOG_LEVELS`
|
|
32
|
-
* remove legacy files: `src/logger.app.ts`, `src/logger.service.ts`, `src/utils/`, `src/dto/`
|
|
33
|
-
* initialize `OtelLogger` instance (`logs.getLogger`) alongside existing tracer and metrics in `BaseAppLogger` constructor
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
### 🧹 Miscellaneous Chores
|
|
37
|
-
|
|
38
|
-
* **deps:** add `@opentelemetry/api-logs ^0.54.0` as production dependency
|
|
39
|
-
* **deps:** fix npm audit — resolve 11 vulnerabilities (1 high, 6 moderate, 4 low) via `overrides` for `lodash`, `tmp`, and `inquirer`
|
|
40
|
-
* **deps:** update all devDependencies to latest versions
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
### 📚 Documentation
|
|
44
|
-
|
|
45
|
-
* comprehensive README rewrite with full API reference, message protocol examples (M1/M2/M3), OpenTelemetry setup guide, environment variables, and troubleshooting section
|
|
46
|
-
* document new OpenTelemetry Logs API integration including all log record attributes and severity mapping
|
|
47
|
-
* add `MIGRATION.md` with upgrade guidance from v3.0.x
|
|
48
|
-
* add `PERFORMANCE_IMPROVEMENTS.md` describing optimisations in the new architecture
|
|
49
|
-
* add `RESTRUCTURING_SUMMARY.md` and `STRUCTURE.md` for project layout overview
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
### 🧪 Tests
|
|
53
|
-
|
|
54
|
-
* achieve **100% coverage** across all metrics (Statements, Branches, Functions, Lines) — 322 test cases
|
|
55
|
-
* add tests for new `pushLogToOpenTelemetry` branches (stack inclusion, array device join, severity mapping)
|
|
56
|
-
* add tests for all disabled-level early-return branches in `BaseAppLogger`
|
|
57
|
-
* add tests for `TimeDiff.start()` static factory and `TimeDiff.end()` alias
|
|
58
|
-
* add `callLogger` non-function severity branch test in `LoggerFormat`
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
## [3.1.0-beta.8](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/compare/v3.1.0-beta.7...v3.1.0-beta.8) (2025-11-20)
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
### 🧼 Code Refactoring
|
|
65
|
-
|
|
66
|
-
* add placeholder spec file as it required at least 1 spec file to run test ([bf2e67b](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/bf2e67bdf9a8f98f55296b57182220103bea4fa6))
|
|
67
|
-
* **config:** resync project and vscode configuration from library-template ([95029e2](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/95029e25bb26f345b6eba730f2d79cbdc3765062))
|
|
68
|
-
* fix logger option as record type backward-compatible ([600f319](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/600f319f2b0f1863b6fb4723ab7f0c8e9e0a2999))
|
|
69
|
-
* migrate to support nestjs 11 ([9f2eb3e](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/9f2eb3ecce0be9bea2042e91ea2b015d575090bb))
|
|
70
|
-
* reorganize ESLint and Jest configurations; add tsconfig.spec.json ([3f7c3ad](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/3f7c3ad8ad04a427cfa8dd5878ab4d4f5d06b03a))
|
|
71
|
-
* reset all files ending to LF ([68c0bad](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/68c0bad12f18df48a75a9fc26705363b4e35f5ad))
|
|
72
|
-
* revise type issue in moment and unit tests ([b1cb189](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/b1cb189662db1546a9009fc5bc2c97b3cb359e03))
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
### 🚀 Features
|
|
76
|
-
|
|
77
|
-
* add exception logging method to ActionMessage class ([dea8f02](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/dea8f02e002a294555378be7c730932705765ac5))
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
### 🧹 Miscellaneous Chores
|
|
81
|
-
|
|
82
|
-
* **deps:** update dependencies ([d716cf9](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/d716cf9093f409f466d2bc621839d04226169419))
|
|
83
|
-
* **deps:** update dependencies (2025-09-02) ([2b27d10](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/2b27d10eba371ae078be87cc3e60411d691cfac9))
|
|
84
|
-
* **release:** bump version to 3.1.0-beta.2 ([aadb41b](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/aadb41b9ffcd66c4122e90fd22d0ea0c90eb96f2))
|
|
85
|
-
* **release:** v3.1.0-beta.3 ([8773b02](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/8773b0279f2d367f2fc0d2351c933869924846cd))
|
|
86
|
-
* update version to 3.1.0-beta.4 ([d731408](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/d731408083838cd8c63b539bb16986e7f27d2ed5))
|
|
87
|
-
* update version to 3.1.0-beta.5 ([623e51e](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/623e51edab395ec434198ed55e88e4f6c155fe9b))
|
|
88
|
-
* update version to 3.1.0-beta.6 ([2dba797](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/2dba797591b3e0d5e3f633ccf0f994310114f9fc))
|
|
89
|
-
* update version to 3.1.0-beta.7 ([6592131](https://github.com/corp-ais/cronus-eqxjs-common-library-nest-logger/commit/659213149237264d3d55e8e6754eb75672a96623))
|
package/MIGRATION.md
DELETED
|
@@ -1,234 +0,0 @@
|
|
|
1
|
-
# Migration Guide - Nest Logger Restructuring
|
|
2
|
-
|
|
3
|
-
## Overview
|
|
4
|
-
This guide helps you understand the changes made to the nest-logger project structure and how to work with the new organization.
|
|
5
|
-
|
|
6
|
-
## What Changed
|
|
7
|
-
|
|
8
|
-
### Before (Old Structure)
|
|
9
|
-
```
|
|
10
|
-
src/
|
|
11
|
-
├── dto/ # All DTOs
|
|
12
|
-
├── utils/ # All utilities
|
|
13
|
-
├── logger.app.ts # Large monolithic file (1107 lines)
|
|
14
|
-
├── logger.service.ts # Logger service
|
|
15
|
-
├── logger.util.ts # Utility functions
|
|
16
|
-
├── logger.module.ts # NestJS module
|
|
17
|
-
├── types.ts # Type definitions
|
|
18
|
-
└── index.ts # Exports
|
|
19
|
-
```
|
|
20
|
-
|
|
21
|
-
### After (New Structure)
|
|
22
|
-
```
|
|
23
|
-
src/
|
|
24
|
-
├── core/
|
|
25
|
-
│ ├── loggers/ # Separated logger classes
|
|
26
|
-
│ │ ├── custom.logger.ts (CustomLogger)
|
|
27
|
-
│ │ ├── base-app.logger.ts (BaseAppLogger)
|
|
28
|
-
│ │ └── app.logger.ts (AppLogger)
|
|
29
|
-
│ └── formatters/ # Formatting logic
|
|
30
|
-
│ └── logger.formatter.ts (LoggerFormat)
|
|
31
|
-
│
|
|
32
|
-
├── interfaces/ # All TypeScript interfaces
|
|
33
|
-
│ ├── data.interface.ts
|
|
34
|
-
│ ├── data-header.interface.ts
|
|
35
|
-
│ ├── data-protocol.interface.ts
|
|
36
|
-
│ ├── data-service.interface.ts
|
|
37
|
-
│ └── logger-opt.interface.ts
|
|
38
|
-
│
|
|
39
|
-
├── models/ # Data models
|
|
40
|
-
│ └── logger.dto.ts
|
|
41
|
-
│
|
|
42
|
-
├── helpers/ # Helper functions
|
|
43
|
-
│ ├── log.helper.ts
|
|
44
|
-
│ └── time-performance.helper.ts
|
|
45
|
-
│
|
|
46
|
-
├── constants/ # Constants
|
|
47
|
-
│ └── action-message.constant.ts
|
|
48
|
-
│
|
|
49
|
-
├── logger.module.ts
|
|
50
|
-
└── index.ts
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
## Benefits of New Structure
|
|
54
|
-
|
|
55
|
-
### 1. **Better Separation of Concerns**
|
|
56
|
-
- **Loggers** (`core/loggers/`): Pure logging implementation
|
|
57
|
-
- **Formatters** (`core/formatters/`): Message formatting logic
|
|
58
|
-
- **Interfaces** (`interfaces/`): Type definitions
|
|
59
|
-
- **Models** (`models/`): Data structures
|
|
60
|
-
- **Helpers** (`helpers/`): Utility functions
|
|
61
|
-
- **Constants** (`constants/`): Static values
|
|
62
|
-
|
|
63
|
-
### 2. **Improved Maintainability**
|
|
64
|
-
- Smaller, focused files (instead of 1107-line monolith)
|
|
65
|
-
- Easy to locate specific functionality
|
|
66
|
-
- Clear dependencies between modules
|
|
67
|
-
|
|
68
|
-
### 3. **Better Scalability**
|
|
69
|
-
- Easy to add new loggers without modifying existing ones
|
|
70
|
-
- Simple to extend with new formatters
|
|
71
|
-
- Clear place for new interfaces and models
|
|
72
|
-
|
|
73
|
-
### 4. **Enhanced Type Safety**
|
|
74
|
-
- All interfaces in dedicated directory
|
|
75
|
-
- Clear separation of types from implementation
|
|
76
|
-
- Better IDE support and autocomplete
|
|
77
|
-
|
|
78
|
-
## API Compatibility
|
|
79
|
-
|
|
80
|
-
### ✅ **No Breaking Changes**
|
|
81
|
-
The public API remains exactly the same. All exports are maintained:
|
|
82
|
-
|
|
83
|
-
```typescript
|
|
84
|
-
// This still works exactly as before
|
|
85
|
-
import {
|
|
86
|
-
AppLogger,
|
|
87
|
-
CustomLogger,
|
|
88
|
-
CustomLoggerModule,
|
|
89
|
-
ActionMessage,
|
|
90
|
-
TimeDiff,
|
|
91
|
-
LoggerOpt,
|
|
92
|
-
DataM,
|
|
93
|
-
DataM1I,
|
|
94
|
-
DataM2I,
|
|
95
|
-
DataM3I
|
|
96
|
-
} from '@eqxjs/nest-logger';
|
|
97
|
-
|
|
98
|
-
// Usage remains unchanged
|
|
99
|
-
const logger = new AppLogger('MyApp', 'MyComponent');
|
|
100
|
-
logger.loggerM1.info('topic', 'action', data, 'message');
|
|
101
|
-
```
|
|
102
|
-
|
|
103
|
-
## File Mapping
|
|
104
|
-
|
|
105
|
-
### Loggers
|
|
106
|
-
| Old File | New File |
|
|
107
|
-
|----------|----------|
|
|
108
|
-
| `logger.service.ts` → `CustomLogger` | `core/loggers/custom.logger.ts` |
|
|
109
|
-
| `logger.app.ts` → `internalAppLogger` | `core/loggers/base-app.logger.ts` |
|
|
110
|
-
| `logger.app.ts` → `AppLogger` | `core/loggers/app.logger.ts` |
|
|
111
|
-
| `logger.app.ts` → `LoggerFormat` | `core/formatters/logger.formatter.ts` |
|
|
112
|
-
|
|
113
|
-
### Interfaces & Types
|
|
114
|
-
| Old File | New File |
|
|
115
|
-
|----------|----------|
|
|
116
|
-
| `types.ts` | `interfaces/data.interface.ts` |
|
|
117
|
-
| `dto/header.dto.ts` | `interfaces/data-header.interface.ts` |
|
|
118
|
-
| `dto/protocol.dto.ts` | `interfaces/data-protocol.interface.ts` |
|
|
119
|
-
| `dto/service.dto.ts` | `interfaces/data-service.interface.ts` |
|
|
120
|
-
| `utils/logger.opt.ts` | `interfaces/logger-opt.interface.ts` |
|
|
121
|
-
|
|
122
|
-
### Models
|
|
123
|
-
| Old File | New File |
|
|
124
|
-
|----------|----------|
|
|
125
|
-
| `dto/logger.dto.ts` | `models/logger.dto.ts` |
|
|
126
|
-
|
|
127
|
-
### Helpers & Utilities
|
|
128
|
-
| Old File | New File |
|
|
129
|
-
|----------|----------|
|
|
130
|
-
| `logger.util.ts` | `helpers/log.helper.ts` |
|
|
131
|
-
| `utils/time.performance.ts` | `helpers/time-performance.helper.ts` |
|
|
132
|
-
| `utils/action.common.ts` | `constants/action-message.constant.ts` |
|
|
133
|
-
|
|
134
|
-
## Internal Import Changes
|
|
135
|
-
|
|
136
|
-
If you're working on the codebase itself (not consuming the library), imports have changed:
|
|
137
|
-
|
|
138
|
-
### Before
|
|
139
|
-
```typescript
|
|
140
|
-
import { CustomLogger } from './logger.service';
|
|
141
|
-
import { LoggerDto } from './dto/logger.dto';
|
|
142
|
-
import { LoggerOpt } from './utils/logger.opt';
|
|
143
|
-
import * as logUtil from './logger.util';
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
### After
|
|
147
|
-
```typescript
|
|
148
|
-
import { CustomLogger } from './core/loggers/custom.logger';
|
|
149
|
-
import { LoggerDto } from './models/logger.dto';
|
|
150
|
-
import { LoggerOpt } from './interfaces/logger-opt.interface';
|
|
151
|
-
import * as logUtil from './helpers/log.helper';
|
|
152
|
-
|
|
153
|
-
// Or use barrel exports:
|
|
154
|
-
import { CustomLogger } from './core/loggers';
|
|
155
|
-
import { LoggerDto } from './models';
|
|
156
|
-
import { LoggerOpt } from './interfaces';
|
|
157
|
-
import * as logUtil from './helpers';
|
|
158
|
-
```
|
|
159
|
-
|
|
160
|
-
## Development Workflow
|
|
161
|
-
|
|
162
|
-
### Building
|
|
163
|
-
```bash
|
|
164
|
-
npm run build
|
|
165
|
-
```
|
|
166
|
-
|
|
167
|
-
### Testing
|
|
168
|
-
```bash
|
|
169
|
-
npm test
|
|
170
|
-
```
|
|
171
|
-
|
|
172
|
-
### Linting
|
|
173
|
-
```bash
|
|
174
|
-
npm run lint
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
## Deprecated Files
|
|
178
|
-
|
|
179
|
-
The following files are kept for backward compatibility but should not be modified:
|
|
180
|
-
- `src/dto/` (old DTO files)
|
|
181
|
-
- `src/utils/` (old utility files)
|
|
182
|
-
- `src/logger.app.ts` (old app logger)
|
|
183
|
-
- `src/logger.service.ts` (old service)
|
|
184
|
-
- `src/logger.util.ts` (old utility)
|
|
185
|
-
- `src/types.ts` (old types)
|
|
186
|
-
|
|
187
|
-
**Note**: These files will be removed in a future major version.
|
|
188
|
-
|
|
189
|
-
## Troubleshooting
|
|
190
|
-
|
|
191
|
-
### Build Issues
|
|
192
|
-
If you encounter build issues:
|
|
193
|
-
```bash
|
|
194
|
-
# Clean and rebuild
|
|
195
|
-
npm run clean
|
|
196
|
-
npm run build
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
### Import Errors
|
|
200
|
-
Make sure you're using the correct import paths. The public API exports everything through `index.ts`, so prefer:
|
|
201
|
-
```typescript
|
|
202
|
-
import { ... } from '@eqxjs/nest-logger';
|
|
203
|
-
```
|
|
204
|
-
|
|
205
|
-
### TypeScript Errors
|
|
206
|
-
Ensure your `tsconfig.json` includes the new directories:
|
|
207
|
-
```json
|
|
208
|
-
{
|
|
209
|
-
"include": ["src/**/*"]
|
|
210
|
-
}
|
|
211
|
-
```
|
|
212
|
-
|
|
213
|
-
## Best Practices
|
|
214
|
-
|
|
215
|
-
1. **Use the public API**: Always import from the package root (`@eqxjs/nest-logger`)
|
|
216
|
-
2. **Avoid internal imports**: Don't import from internal paths in external projects
|
|
217
|
-
3. **Check type definitions**: Use TypeScript's IntelliSense to explore available types
|
|
218
|
-
4. **Follow the structure**: When adding new features, place them in the appropriate directory
|
|
219
|
-
|
|
220
|
-
## Next Steps
|
|
221
|
-
|
|
222
|
-
1. ✅ Project restructured with improved organization
|
|
223
|
-
2. ✅ Build and tests passing
|
|
224
|
-
3. ✅ Public API maintained (no breaking changes)
|
|
225
|
-
4. 🔄 Update internal documentation
|
|
226
|
-
5. 🔄 Remove deprecated files in next major version
|
|
227
|
-
6. 🔄 Add more comprehensive tests for new structure
|
|
228
|
-
|
|
229
|
-
## Questions or Issues?
|
|
230
|
-
|
|
231
|
-
If you encounter any issues with the new structure:
|
|
232
|
-
1. Check this migration guide
|
|
233
|
-
2. Review the [STRUCTURE.md](./STRUCTURE.md) file
|
|
234
|
-
3. Open an issue on the project repository
|
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
# Logger Performance Improvements
|
|
2
|
-
|
|
3
|
-
## Overview
|
|
4
|
-
This document outlines the performance optimizations implemented in the nest-logger library to reduce overhead and improve logging throughput.
|
|
5
|
-
|
|
6
|
-
## Key Optimizations
|
|
7
|
-
|
|
8
|
-
### 1. Cached System Values
|
|
9
|
-
**Impact:** High - Eliminates repeated expensive system calls
|
|
10
|
-
|
|
11
|
-
- **Hostname caching**: `os.hostname()` is now called once during logger initialization and cached
|
|
12
|
-
- **App version caching**: `process.env.APP_VERSION` is cached to avoid repeated environment variable lookups
|
|
13
|
-
- **Benefit:** Eliminates ~2 system calls per log entry
|
|
14
|
-
|
|
15
|
-
**Before:**
|
|
16
|
-
```typescript
|
|
17
|
-
.setInstance(os.hostname()) // Called for every log
|
|
18
|
-
```
|
|
19
|
-
|
|
20
|
-
**After:**
|
|
21
|
-
```typescript
|
|
22
|
-
this.cachedHostname = os.hostname(); // Called once in constructor
|
|
23
|
-
dto.instance = this.cachedHostname; // Reused for every log
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
### 2. Direct Object Creation
|
|
27
|
-
**Impact:** Medium-High - Reduces object allocations and method calls
|
|
28
|
-
|
|
29
|
-
Replaced the builder pattern with direct object property assignment for LoggerDto creation.
|
|
30
|
-
|
|
31
|
-
- **Benefit:** Eliminates ~20 intermediate method calls per log entry
|
|
32
|
-
- **Trade-off:** Slightly less readable code, but significantly faster execution
|
|
33
|
-
|
|
34
|
-
**Before (Builder Pattern):**
|
|
35
|
-
```typescript
|
|
36
|
-
return new LoggerDtoBuilder()
|
|
37
|
-
.setLevel(level)
|
|
38
|
-
.setTimestamp(this.dateFormat(new Date()))
|
|
39
|
-
.setComponentName(this.context)
|
|
40
|
-
// ... 15+ more chained method calls
|
|
41
|
-
.build();
|
|
42
|
-
```
|
|
43
|
-
|
|
44
|
-
**After (Direct Assignment):**
|
|
45
|
-
```typescript
|
|
46
|
-
const dto = new LoggerDto();
|
|
47
|
-
dto.level = level;
|
|
48
|
-
dto.timestamp = this.dateFormat(new Date());
|
|
49
|
-
dto.componentName = this.context || DEFAULT_VALUES.NONE;
|
|
50
|
-
// ... direct property assignments
|
|
51
|
-
return dto;
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
### 3. Optimized Message Formatting
|
|
55
|
-
**Impact:** Medium - Faster string operations
|
|
56
|
-
|
|
57
|
-
**Fast-path optimization for common types:**
|
|
58
|
-
- String messages (most common) are now checked first
|
|
59
|
-
- Number conversion uses `String()` instead of template literals
|
|
60
|
-
- Added null/undefined checks before object serialization
|
|
61
|
-
|
|
62
|
-
**Before:**
|
|
63
|
-
```typescript
|
|
64
|
-
switch (typeof message) {
|
|
65
|
-
case 'string': return message;
|
|
66
|
-
case 'function': return `${message()}`;
|
|
67
|
-
case 'number': return `${message}`;
|
|
68
|
-
case 'object':
|
|
69
|
-
default: return logUtil.logStringify(message);
|
|
70
|
-
}
|
|
71
|
-
```
|
|
72
|
-
|
|
73
|
-
**After:**
|
|
74
|
-
```typescript
|
|
75
|
-
if (typeof message === 'string') return message; // Fast path
|
|
76
|
-
if (typeof message === 'number') return String(message);
|
|
77
|
-
if (typeof message === 'function') return String(message());
|
|
78
|
-
if (message == null) return '';
|
|
79
|
-
return logUtil.logStringify(message);
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
### 4. Optimized Message Truncation
|
|
83
|
-
**Impact:** Low-Medium - Faster string operations
|
|
84
|
-
|
|
85
|
-
**Early return for messages within limit:**
|
|
86
|
-
```typescript
|
|
87
|
-
// Fast path: most messages are within limit
|
|
88
|
-
if (message.length <= maxLength) return message;
|
|
89
|
-
return message.substring(0, maxLength) + '...';
|
|
90
|
-
```
|
|
91
|
-
|
|
92
|
-
### 5. Reduced Property Deletions
|
|
93
|
-
**Impact:** Low - Slightly faster object manipulation
|
|
94
|
-
|
|
95
|
-
Changed from `delete` operations to setting properties to `undefined`:
|
|
96
|
-
```typescript
|
|
97
|
-
// Before
|
|
98
|
-
delete loggerDetail.message;
|
|
99
|
-
delete loggerDetail.action;
|
|
100
|
-
|
|
101
|
-
// After
|
|
102
|
-
loggerDetail.message = undefined as any;
|
|
103
|
-
loggerDetail.action = undefined as any;
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
**Note:** While `delete` and setting to `undefined` have different semantics, in this logging context, setting to `undefined` is sufficient and faster.
|
|
107
|
-
|
|
108
|
-
## Performance Impact Summary
|
|
109
|
-
|
|
110
|
-
### Estimated Improvements per Log Entry:
|
|
111
|
-
- **System calls reduced:** 2 calls → 0 calls (100% reduction)
|
|
112
|
-
- **Method calls reduced:** ~20 builder methods → 0 (direct assignment)
|
|
113
|
-
- **Type checks optimized:** Common string case checked first
|
|
114
|
-
- **Memory allocations:** Reduced intermediate builder objects
|
|
115
|
-
|
|
116
|
-
### Expected Throughput Improvement:
|
|
117
|
-
- **Low volume (< 100 logs/sec):** 15-25% faster
|
|
118
|
-
- **Medium volume (100-1000 logs/sec):** 20-35% faster
|
|
119
|
-
- **High volume (> 1000 logs/sec):** 30-50% faster
|
|
120
|
-
|
|
121
|
-
### Memory Impact:
|
|
122
|
-
- **Reduced garbage collection pressure** from fewer intermediate objects
|
|
123
|
-
- **Lower memory footprint** per logger instance due to cached values
|
|
124
|
-
|
|
125
|
-
## Compatibility Notes
|
|
126
|
-
|
|
127
|
-
✅ **All optimizations are backward compatible**
|
|
128
|
-
- Public API remains unchanged
|
|
129
|
-
- All tests pass
|
|
130
|
-
- No breaking changes to functionality
|
|
131
|
-
|
|
132
|
-
## Future Optimization Opportunities
|
|
133
|
-
|
|
134
|
-
1. **Object Pooling**: Reuse LoggerDto objects for even lower GC pressure
|
|
135
|
-
2. **Lazy Formatting**: Only format telemetry attributes when needed
|
|
136
|
-
3. **Batch Logging**: Buffer logs and flush in batches for high-volume scenarios
|
|
137
|
-
4. **Worker Thread**: Offload serialization to worker threads for CPU-intensive formatting
|
|
138
|
-
|
|
139
|
-
## Benchmarking
|
|
140
|
-
|
|
141
|
-
To benchmark the improvements in your environment:
|
|
142
|
-
|
|
143
|
-
```typescript
|
|
144
|
-
import { BaseAppLogger } from '@eqxjs/nest-logger';
|
|
145
|
-
|
|
146
|
-
const logger = new BaseAppLogger('benchmark-app', 'benchmark');
|
|
147
|
-
const iterations = 10000;
|
|
148
|
-
|
|
149
|
-
console.time('logging-performance');
|
|
150
|
-
for (let i = 0; i < iterations; i++) {
|
|
151
|
-
logger.info(`Test message ${i}`, 'test-action');
|
|
152
|
-
}
|
|
153
|
-
console.timeEnd('logging-performance');
|
|
154
|
-
```
|
|
155
|
-
|
|
156
|
-
## Conclusion
|
|
157
|
-
|
|
158
|
-
These optimizations maintain code clarity while significantly improving performance, especially in high-throughput scenarios. The logger now handles increased load with reduced CPU and memory overhead.
|
package/RESTRUCTURING_SUMMARY.md
DELETED
|
@@ -1,272 +0,0 @@
|
|
|
1
|
-
# Code Restructuring Summary
|
|
2
|
-
|
|
3
|
-
## Project: @eqxjs/nest-logger
|
|
4
|
-
|
|
5
|
-
### Date: January 9, 2026
|
|
6
|
-
|
|
7
|
-
## Overview
|
|
8
|
-
Successfully restructured the nest-logger project from a flat, monolithic architecture to a well-organized, maintainable structure with clear separation of concerns.
|
|
9
|
-
|
|
10
|
-
## Statistics
|
|
11
|
-
|
|
12
|
-
### Before
|
|
13
|
-
- **Total Structure Depth**: 2 levels (src/ → files)
|
|
14
|
-
- **Largest File**: logger.app.ts (1,107 lines)
|
|
15
|
-
- **Organization**: Flat with mixed concerns
|
|
16
|
-
|
|
17
|
-
### After
|
|
18
|
-
- **Total Structure Depth**: 4 levels (src/ → category/ → subcategory/ → files)
|
|
19
|
-
- **Largest File**: base-app.logger.ts (~550 lines)
|
|
20
|
-
- **Organization**: Hierarchical with clear separation
|
|
21
|
-
|
|
22
|
-
## New Directory Structure
|
|
23
|
-
|
|
24
|
-
```
|
|
25
|
-
src/
|
|
26
|
-
├── constants/ # Application constants
|
|
27
|
-
│ ├── action-message.constant.ts
|
|
28
|
-
│ └── index.ts
|
|
29
|
-
│
|
|
30
|
-
├── core/ # Core business logic
|
|
31
|
-
│ ├── formatters/ # Message formatters
|
|
32
|
-
│ │ ├── logger.formatter.ts
|
|
33
|
-
│ │ └── index.ts
|
|
34
|
-
│ └── loggers/ # Logger implementations
|
|
35
|
-
│ ├── app.logger.ts
|
|
36
|
-
│ ├── base-app.logger.ts
|
|
37
|
-
│ ├── custom.logger.ts
|
|
38
|
-
│ └── index.ts
|
|
39
|
-
│
|
|
40
|
-
├── helpers/ # Utility functions
|
|
41
|
-
│ ├── log.helper.ts
|
|
42
|
-
│ ├── time-performance.helper.ts
|
|
43
|
-
│ └── index.ts
|
|
44
|
-
│
|
|
45
|
-
├── interfaces/ # TypeScript interfaces
|
|
46
|
-
│ ├── data-header.interface.ts
|
|
47
|
-
│ ├── data-protocol.interface.ts
|
|
48
|
-
│ ├── data-service.interface.ts
|
|
49
|
-
│ ├── data.interface.ts
|
|
50
|
-
│ ├── logger-opt.interface.ts
|
|
51
|
-
│ └── index.ts
|
|
52
|
-
│
|
|
53
|
-
├── models/ # Data models
|
|
54
|
-
│ ├── logger.dto.ts
|
|
55
|
-
│ └── index.ts
|
|
56
|
-
│
|
|
57
|
-
├── logger.module.ts # NestJS module
|
|
58
|
-
└── index.ts # Public API
|
|
59
|
-
|
|
60
|
-
# Legacy (Deprecated - to be removed in v4.0.0)
|
|
61
|
-
├── dto/ # Old DTOs
|
|
62
|
-
├── utils/ # Old utilities
|
|
63
|
-
├── logger.app.ts # Old app logger
|
|
64
|
-
├── logger.service.ts # Old service
|
|
65
|
-
├── logger.util.ts # Old utility
|
|
66
|
-
└── types.ts # Old types
|
|
67
|
-
```
|
|
68
|
-
|
|
69
|
-
## Key Improvements
|
|
70
|
-
|
|
71
|
-
### 1. Separation of Concerns ✅
|
|
72
|
-
- **Before**: Everything mixed in flat structure
|
|
73
|
-
- **After**: Clear layers (core, interfaces, models, helpers, constants)
|
|
74
|
-
|
|
75
|
-
### 2. File Size Reduction ✅
|
|
76
|
-
- **Before**: Single 1,107-line file (logger.app.ts)
|
|
77
|
-
- **After**: Split into 4 focused files:
|
|
78
|
-
- `custom.logger.ts` (~120 lines)
|
|
79
|
-
- `base-app.logger.ts` (~550 lines)
|
|
80
|
-
- `app.logger.ts` (~25 lines)
|
|
81
|
-
- `logger.formatter.ts` (~550 lines)
|
|
82
|
-
|
|
83
|
-
### 3. Better Organization ✅
|
|
84
|
-
| Category | Before | After |
|
|
85
|
-
|----------|--------|-------|
|
|
86
|
-
| Loggers | Mixed in 2 files | Organized in `core/loggers/` |
|
|
87
|
-
| Formatters | Embedded in logger | Separate `core/formatters/` |
|
|
88
|
-
| Interfaces | `types.ts` + DTOs | Dedicated `interfaces/` |
|
|
89
|
-
| Models | Scattered in `dto/` | Centralized in `models/` |
|
|
90
|
-
| Utilities | Mixed in `utils/` | Organized in `helpers/` |
|
|
91
|
-
| Constants | Mixed with code | Dedicated `constants/` |
|
|
92
|
-
|
|
93
|
-
### 4. Improved Discoverability ✅
|
|
94
|
-
- Barrel exports (`index.ts`) in each directory
|
|
95
|
-
- Clear naming conventions
|
|
96
|
-
- Logical file locations
|
|
97
|
-
|
|
98
|
-
### 5. Enhanced Maintainability ✅
|
|
99
|
-
- Smaller, focused files
|
|
100
|
-
- Clear dependencies
|
|
101
|
-
- Easy to locate functionality
|
|
102
|
-
|
|
103
|
-
## Technical Changes
|
|
104
|
-
|
|
105
|
-
### Class Structure
|
|
106
|
-
```typescript
|
|
107
|
-
// Before: All in one file (logger.app.ts)
|
|
108
|
-
class internalAppLogger { ... } // 1107 lines
|
|
109
|
-
class LoggerFormat { ... }
|
|
110
|
-
class AppLogger { ... }
|
|
111
|
-
|
|
112
|
-
// After: Separated and renamed
|
|
113
|
-
core/loggers/base-app.logger.ts → BaseAppLogger
|
|
114
|
-
core/formatters/logger.formatter.ts → LoggerFormat
|
|
115
|
-
core/loggers/app.logger.ts → AppLogger
|
|
116
|
-
```
|
|
117
|
-
|
|
118
|
-
### Import Paths (Internal Development)
|
|
119
|
-
```typescript
|
|
120
|
-
// Before
|
|
121
|
-
import { CustomLogger } from './logger.service';
|
|
122
|
-
import { LoggerDto } from './dto/logger.dto';
|
|
123
|
-
|
|
124
|
-
// After
|
|
125
|
-
import { CustomLogger } from './core/loggers/custom.logger';
|
|
126
|
-
import { LoggerDto } from './models/logger.dto';
|
|
127
|
-
|
|
128
|
-
// Or using barrel exports
|
|
129
|
-
import { CustomLogger } from './core/loggers';
|
|
130
|
-
import { LoggerDto } from './models';
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
### Public API (External Usage)
|
|
134
|
-
```typescript
|
|
135
|
-
// Unchanged - no breaking changes
|
|
136
|
-
import {
|
|
137
|
-
AppLogger,
|
|
138
|
-
CustomLogger,
|
|
139
|
-
ActionMessage
|
|
140
|
-
} from '@eqxjs/nest-logger';
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
## Build & Test Results
|
|
144
|
-
|
|
145
|
-
### Build Status: ✅ PASSING
|
|
146
|
-
```bash
|
|
147
|
-
$ npm run build
|
|
148
|
-
# Successfully compiled all files
|
|
149
|
-
# Output: dist/ directory with proper structure
|
|
150
|
-
```
|
|
151
|
-
|
|
152
|
-
### Test Status: ✅ PASSING
|
|
153
|
-
```bash
|
|
154
|
-
$ npm test
|
|
155
|
-
# Test Suites: 2 passed, 2 total
|
|
156
|
-
# Tests: 2 passed, 2 total
|
|
157
|
-
```
|
|
158
|
-
|
|
159
|
-
### Type Checking: ✅ PASSING
|
|
160
|
-
- All TypeScript types properly resolved
|
|
161
|
-
- No compilation errors
|
|
162
|
-
- Full IntelliSense support
|
|
163
|
-
|
|
164
|
-
## Files Created
|
|
165
|
-
|
|
166
|
-
### New Structure Files
|
|
167
|
-
1. `src/core/loggers/custom.logger.ts`
|
|
168
|
-
2. `src/core/loggers/base-app.logger.ts`
|
|
169
|
-
3. `src/core/loggers/app.logger.ts`
|
|
170
|
-
4. `src/core/loggers/index.ts`
|
|
171
|
-
5. `src/core/formatters/logger.formatter.ts`
|
|
172
|
-
6. `src/core/formatters/index.ts`
|
|
173
|
-
7. `src/interfaces/data.interface.ts`
|
|
174
|
-
8. `src/interfaces/data-header.interface.ts`
|
|
175
|
-
9. `src/interfaces/data-protocol.interface.ts`
|
|
176
|
-
10. `src/interfaces/data-service.interface.ts`
|
|
177
|
-
11. `src/interfaces/logger-opt.interface.ts`
|
|
178
|
-
12. `src/interfaces/index.ts`
|
|
179
|
-
13. `src/models/logger.dto.ts`
|
|
180
|
-
14. `src/models/index.ts`
|
|
181
|
-
15. `src/helpers/log.helper.ts`
|
|
182
|
-
16. `src/helpers/time-performance.helper.ts`
|
|
183
|
-
17. `src/helpers/index.ts`
|
|
184
|
-
18. `src/constants/action-message.constant.ts`
|
|
185
|
-
19. `src/constants/index.ts`
|
|
186
|
-
|
|
187
|
-
### Documentation Files
|
|
188
|
-
1. `STRUCTURE.md` - Detailed structure documentation
|
|
189
|
-
2. `MIGRATION.md` - Migration guide for developers
|
|
190
|
-
3. `RESTRUCTURING_SUMMARY.md` - This file
|
|
191
|
-
|
|
192
|
-
## Backward Compatibility
|
|
193
|
-
|
|
194
|
-
### ✅ Fully Backward Compatible
|
|
195
|
-
- All public APIs maintained
|
|
196
|
-
- No breaking changes
|
|
197
|
-
- Existing code continues to work
|
|
198
|
-
- Legacy files preserved (marked as deprecated)
|
|
199
|
-
|
|
200
|
-
## Benefits for Development
|
|
201
|
-
|
|
202
|
-
### For Library Consumers
|
|
203
|
-
- ✅ No changes required
|
|
204
|
-
- ✅ Same imports work
|
|
205
|
-
- ✅ Better TypeScript support
|
|
206
|
-
- ✅ Improved documentation
|
|
207
|
-
|
|
208
|
-
### For Library Maintainers
|
|
209
|
-
- ✅ Easier to locate code
|
|
210
|
-
- ✅ Simpler to add features
|
|
211
|
-
- ✅ Better code organization
|
|
212
|
-
- ✅ Reduced cognitive load
|
|
213
|
-
- ✅ Clear responsibilities
|
|
214
|
-
- ✅ Improved testability
|
|
215
|
-
|
|
216
|
-
## Metrics
|
|
217
|
-
|
|
218
|
-
### Code Organization
|
|
219
|
-
- **Directories**: 2 → 7 (+250%)
|
|
220
|
-
- **Max File Size**: 1,107 lines → 550 lines (-50%)
|
|
221
|
-
- **Average File Size**: ~200 lines → ~100 lines (-50%)
|
|
222
|
-
- **Coupling**: High → Low
|
|
223
|
-
- **Cohesion**: Low → High
|
|
224
|
-
|
|
225
|
-
### Developer Experience
|
|
226
|
-
- **Time to Find Code**: 🔴 Hard → 🟢 Easy
|
|
227
|
-
- **Time to Add Feature**: 🔴 Slow → 🟢 Fast
|
|
228
|
-
- **Understanding Structure**: 🔴 Difficult → 🟢 Simple
|
|
229
|
-
- **Onboarding Time**: 🔴 Long → 🟢 Short
|
|
230
|
-
|
|
231
|
-
## Next Steps
|
|
232
|
-
|
|
233
|
-
### Immediate (Done) ✅
|
|
234
|
-
- [x] Create new structure
|
|
235
|
-
- [x] Move and refactor code
|
|
236
|
-
- [x] Update imports
|
|
237
|
-
- [x] Ensure builds pass
|
|
238
|
-
- [x] Verify tests pass
|
|
239
|
-
- [x] Create documentation
|
|
240
|
-
|
|
241
|
-
### Short Term (Next Sprint)
|
|
242
|
-
- [ ] Update unit tests to cover new structure
|
|
243
|
-
- [ ] Add integration tests
|
|
244
|
-
- [ ] Update README.md with new examples
|
|
245
|
-
- [ ] Create API documentation
|
|
246
|
-
- [ ] Add JSDoc comments
|
|
247
|
-
|
|
248
|
-
### Long Term (v4.0.0)
|
|
249
|
-
- [ ] Remove deprecated files
|
|
250
|
-
- [ ] Clean up legacy DTOs
|
|
251
|
-
- [ ] Optimize barrel exports
|
|
252
|
-
- [ ] Add more comprehensive examples
|
|
253
|
-
- [ ] Performance optimization
|
|
254
|
-
|
|
255
|
-
## Conclusion
|
|
256
|
-
|
|
257
|
-
The restructuring has been successfully completed with:
|
|
258
|
-
- ✅ Zero breaking changes
|
|
259
|
-
- ✅ Improved code organization
|
|
260
|
-
- ✅ Better maintainability
|
|
261
|
-
- ✅ Enhanced developer experience
|
|
262
|
-
- ✅ Full backward compatibility
|
|
263
|
-
- ✅ Comprehensive documentation
|
|
264
|
-
|
|
265
|
-
The project is now much more maintainable and scalable, with clear separation of concerns and improved code organization.
|
|
266
|
-
|
|
267
|
-
---
|
|
268
|
-
|
|
269
|
-
**Restructured by**: GitHub Copilot
|
|
270
|
-
**Date**: January 9, 2026
|
|
271
|
-
**Version**: 3.1.0-beta.9
|
|
272
|
-
**Status**: ✅ Complete & Tested
|
package/STRUCTURE.md
DELETED
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
# Nest Logger - Project Structure
|
|
2
|
-
|
|
3
|
-
## Overview
|
|
4
|
-
This project has been restructured for better maintainability, scalability, and separation of concerns.
|
|
5
|
-
|
|
6
|
-
## Directory Structure
|
|
7
|
-
|
|
8
|
-
```
|
|
9
|
-
src/
|
|
10
|
-
├── core/ # Core functionality
|
|
11
|
-
│ ├── loggers/ # Logger implementations
|
|
12
|
-
│ │ ├── custom.logger.ts # Base custom logger
|
|
13
|
-
│ │ ├── base-app.logger.ts # Application logger with telemetry
|
|
14
|
-
│ │ └── app.logger.ts # Main app logger (M1, M2, M3)
|
|
15
|
-
│ └── formatters/ # Log formatting logic
|
|
16
|
-
│ └── logger.formatter.ts # Message format handlers
|
|
17
|
-
│
|
|
18
|
-
├── interfaces/ # TypeScript interfaces
|
|
19
|
-
│ ├── data.interface.ts # Data message interfaces (DataM, DataM1I, DataM2I, DataM3I)
|
|
20
|
-
│ ├── data-header.interface.ts # Header interface
|
|
21
|
-
│ ├── data-protocol.interface.ts # Protocol interface
|
|
22
|
-
│ ├── data-service.interface.ts # Service interface
|
|
23
|
-
│ └── logger-opt.interface.ts # Logger options interface
|
|
24
|
-
│
|
|
25
|
-
├── models/ # Data models/DTOs
|
|
26
|
-
│ └── logger.dto.ts # Logger DTO class
|
|
27
|
-
│
|
|
28
|
-
├── helpers/ # Utility functions
|
|
29
|
-
│ ├── log.helper.ts # Log utility functions (masking, stringify, level check)
|
|
30
|
-
│ └── time-performance.helper.ts # Performance timing utilities
|
|
31
|
-
│
|
|
32
|
-
├── constants/ # Application constants
|
|
33
|
-
│ └── action-message.constant.ts # Action message constants
|
|
34
|
-
│
|
|
35
|
-
├── logger.module.ts # NestJS module
|
|
36
|
-
└── index.ts # Public API exports
|
|
37
|
-
|
|
38
|
-
# Legacy (to be removed)
|
|
39
|
-
├── dto/ # Old DTO files (deprecated)
|
|
40
|
-
├── utils/ # Old utility files (deprecated)
|
|
41
|
-
├── logger.app.ts # Old app logger (deprecated)
|
|
42
|
-
├── logger.service.ts # Old service (deprecated)
|
|
43
|
-
├── logger.util.ts # Old utility (deprecated)
|
|
44
|
-
└── types.ts # Old types (deprecated)
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
## Architecture
|
|
48
|
-
|
|
49
|
-
### Core Layer (`core/`)
|
|
50
|
-
Contains the primary business logic:
|
|
51
|
-
- **Loggers**: Different logger implementations (Custom, BaseApp, App)
|
|
52
|
-
- **Formatters**: Message formatting logic for different message types (M1, M2, M3)
|
|
53
|
-
|
|
54
|
-
### Interfaces Layer (`interfaces/`)
|
|
55
|
-
TypeScript interfaces for type safety:
|
|
56
|
-
- Data message interfaces
|
|
57
|
-
- Configuration interfaces
|
|
58
|
-
- Service contracts
|
|
59
|
-
|
|
60
|
-
### Models Layer (`models/`)
|
|
61
|
-
Data transfer objects and domain models:
|
|
62
|
-
- LoggerDto for log data structure
|
|
63
|
-
|
|
64
|
-
### Helpers Layer (`helpers/`)
|
|
65
|
-
Reusable utility functions:
|
|
66
|
-
- Log formatting and masking
|
|
67
|
-
- Performance measurement
|
|
68
|
-
- Level checking
|
|
69
|
-
|
|
70
|
-
### Constants Layer (`constants/`)
|
|
71
|
-
Application-wide constants:
|
|
72
|
-
- Action message types
|
|
73
|
-
- Configuration defaults
|
|
74
|
-
|
|
75
|
-
## Key Improvements
|
|
76
|
-
|
|
77
|
-
1. **Separation of Concerns**: Each layer has a specific responsibility
|
|
78
|
-
2. **Better Modularity**: Code is organized by feature and function
|
|
79
|
-
3. **Improved Maintainability**: Easier to locate and modify code
|
|
80
|
-
4. **Type Safety**: Clear interface definitions in dedicated directory
|
|
81
|
-
5. **Scalability**: Easy to add new loggers, formatters, or helpers
|
|
82
|
-
|
|
83
|
-
## Usage
|
|
84
|
-
|
|
85
|
-
The public API remains unchanged. Import from the main module:
|
|
86
|
-
|
|
87
|
-
```typescript
|
|
88
|
-
import {
|
|
89
|
-
AppLogger,
|
|
90
|
-
CustomLogger,
|
|
91
|
-
CustomLoggerModule,
|
|
92
|
-
ActionMessage,
|
|
93
|
-
TimeDiff,
|
|
94
|
-
LoggerOpt
|
|
95
|
-
} from '@eqxjs/nest-logger';
|
|
96
|
-
```
|
|
97
|
-
|
|
98
|
-
## Migration Notes
|
|
99
|
-
|
|
100
|
-
- Old files are kept for backward compatibility during transition
|
|
101
|
-
- New structure is in `core/`, `interfaces/`, `models/`, `helpers/`, and `constants/`
|
|
102
|
-
- All exports are properly re-exported through `index.ts`
|
|
103
|
-
- No breaking changes to the public API
|
|
104
|
-
|
|
105
|
-
## Next Steps
|
|
106
|
-
|
|
107
|
-
1. Update tests to use new structure
|
|
108
|
-
2. Remove deprecated files once all dependencies are updated
|
|
109
|
-
3. Add additional documentation for each module
|
|
110
|
-
4. Consider adding barrel exports for each directory
|
package/commitlint.config.mjs
DELETED
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
/** @type {import('@commitlint/types').UserConfig} */
|
|
2
|
-
const Configuration = {
|
|
3
|
-
extends: ['@commitlint/config-conventional'],
|
|
4
|
-
parserPreset: 'conventional-changelog-atom',
|
|
5
|
-
formatter: '@commitlint/format',
|
|
6
|
-
rules: {
|
|
7
|
-
'type-enum': [
|
|
8
|
-
2,
|
|
9
|
-
'always',
|
|
10
|
-
[
|
|
11
|
-
'feat', // New feature
|
|
12
|
-
'fix', // Bug fix
|
|
13
|
-
'docs', // Documentation changes
|
|
14
|
-
'style', // Changes that do not affect the meaning of the code (white-space, formatting, etc.)
|
|
15
|
-
'refactor', // Code changes that neither fix a bug nor add a feature
|
|
16
|
-
'perf', // Performance improvement
|
|
17
|
-
'test', // Adding missing tests or correcting existing tests
|
|
18
|
-
'build', // Changes that affect the build system or external dependencies (example scopes: npm)
|
|
19
|
-
'ci', // Changes to CI configuration files and scripts
|
|
20
|
-
'chore', // Other changes that don't modify src or test files
|
|
21
|
-
'revert', // Reverts a previous commit
|
|
22
|
-
],
|
|
23
|
-
],
|
|
24
|
-
'scope-enum': [
|
|
25
|
-
2,
|
|
26
|
-
'always',
|
|
27
|
-
[
|
|
28
|
-
'setup', // Project setup
|
|
29
|
-
'config', // Configuration files
|
|
30
|
-
'deps', // Dependency updates
|
|
31
|
-
'feature', // Feature-specific changes
|
|
32
|
-
'bug', // Bug fixes
|
|
33
|
-
'docs', // Documentation
|
|
34
|
-
'style', // Code style/formatting
|
|
35
|
-
'refactor', // Code refactoring
|
|
36
|
-
'test', // Tests
|
|
37
|
-
'build', // Build scripts or configuration
|
|
38
|
-
'ci', // Continuous integration
|
|
39
|
-
'release', // Release related changes
|
|
40
|
-
'other', // Other changes
|
|
41
|
-
],
|
|
42
|
-
],
|
|
43
|
-
},
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
export default Configuration;
|
package/jest.config.mjs
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/** @type {import('ts-jest').JestConfigWithTsJest} */
|
|
2
|
-
export default {
|
|
3
|
-
preset: 'ts-jest/presets/default-esm',
|
|
4
|
-
extensionsToTreatAsEsm: ['.ts'],
|
|
5
|
-
moduleNameMapper: {
|
|
6
|
-
'^(\\.{1,2}/.*)\\.js$': '$1',
|
|
7
|
-
},
|
|
8
|
-
rootDir: '.',
|
|
9
|
-
testRegex: '.*\\.spec\\.ts$',
|
|
10
|
-
transform: {
|
|
11
|
-
'^.+\\.ts$': [
|
|
12
|
-
'ts-jest',
|
|
13
|
-
{
|
|
14
|
-
useESM: true,
|
|
15
|
-
tsconfig: 'tsconfig.spec.json',
|
|
16
|
-
},
|
|
17
|
-
],
|
|
18
|
-
},
|
|
19
|
-
collectCoverageFrom: ['src/**/*.ts', '!src/**/index.ts'],
|
|
20
|
-
coverageDirectory: './coverage',
|
|
21
|
-
testEnvironment: 'node',
|
|
22
|
-
testPathIgnorePatterns: ['/node_modules/', '/dist/'],
|
|
23
|
-
setupFilesAfterEnv: ['<rootDir>/test/jest-setup.ts'],
|
|
24
|
-
};
|