logixia 1.13.3 → 2.0.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 +72 -16
- package/dist/{azure-monitor.transport-BDFO4F-i.d.ts → azure-monitor.transport-Cn_3Usvu.d.ts} +2 -2
- package/dist/{azure-monitor.transport-BDFO4F-i.d.ts.map → azure-monitor.transport-Cn_3Usvu.d.ts.map} +1 -1
- package/dist/{azure-monitor.transport-D5wQEH04.d.mts → azure-monitor.transport-D7Da4RAb.d.mts} +2 -2
- package/dist/{azure-monitor.transport-D5wQEH04.d.mts.map → azure-monitor.transport-D7Da4RAb.d.mts.map} +1 -1
- package/dist/azure.d.mts +2 -2
- package/dist/azure.d.ts +2 -2
- package/dist/browser.d.mts +9 -0
- package/dist/browser.d.mts.map +1 -1
- package/dist/browser.d.ts +9 -0
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +43 -12
- package/dist/browser.js.map +1 -1
- package/dist/browser.mjs +43 -12
- package/dist/browser.mjs.map +1 -1
- package/dist/{nestjs-extras-ImbuDhs1.mjs → builder-0gEzRopq.mjs} +77 -871
- package/dist/builder-0gEzRopq.mjs.map +1 -0
- package/dist/{nestjs-extras-DnJ6vrIC.js → builder-D44QktIo.js} +81 -943
- package/dist/builder-D44QktIo.js.map +1 -0
- package/dist/cli/index.js +32 -13
- package/dist/cloudwatch.d.mts +2 -2
- package/dist/cloudwatch.d.ts +2 -2
- package/dist/{cloudwatch.transport-B00st6Xv.d.ts → cloudwatch.transport-DsEq633o.d.ts} +2 -2
- package/dist/{cloudwatch.transport-B00st6Xv.d.ts.map → cloudwatch.transport-DsEq633o.d.ts.map} +1 -1
- package/dist/{cloudwatch.transport-Blc7Gtxt.d.mts → cloudwatch.transport-UlyZFWMn.d.mts} +2 -2
- package/dist/{cloudwatch.transport-Blc7Gtxt.d.mts.map → cloudwatch.transport-UlyZFWMn.d.mts.map} +1 -1
- package/dist/gcp.d.mts +2 -2
- package/dist/gcp.d.ts +2 -2
- package/dist/{gcp.transport-m4fVw0b1.d.ts → gcp.transport-B7oc97sG.d.ts} +2 -2
- package/dist/{gcp.transport-m4fVw0b1.d.ts.map → gcp.transport-B7oc97sG.d.ts.map} +1 -1
- package/dist/{gcp.transport-zzNyIoih.d.mts → gcp.transport-GrJurKo8.d.mts} +2 -2
- package/dist/{gcp.transport-zzNyIoih.d.mts.map → gcp.transport-GrJurKo8.d.mts.map} +1 -1
- package/dist/{index-BPwEisy4.d.mts → index-3mw5gaCw.d.mts} +2 -2
- package/dist/{index-BPwEisy4.d.mts.map → index-3mw5gaCw.d.mts.map} +1 -1
- package/dist/{index-nZEeCr3X.d.ts → index-DhIoploR.d.ts} +2 -2
- package/dist/{index-nZEeCr3X.d.ts.map → index-DhIoploR.d.ts.map} +1 -1
- package/dist/index.d.mts +44 -47
- package/dist/index.d.mts.map +1 -1
- package/dist/index.d.ts +44 -47
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +38 -126
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +5 -58
- package/dist/index.mjs.map +1 -1
- package/dist/logitron-logger-BFDSO8Io.d.mts +257 -0
- package/dist/logitron-logger-BFDSO8Io.d.mts.map +1 -0
- package/dist/logitron-logger-UVeN-mQm.d.ts +257 -0
- package/dist/logitron-logger-UVeN-mQm.d.ts.map +1 -0
- package/dist/middleware.d.mts +2 -2
- package/dist/middleware.d.ts +2 -2
- package/dist/nest.d.mts +481 -6
- package/dist/nest.d.mts.map +1 -1
- package/dist/nest.d.ts +481 -6
- package/dist/nest.d.ts.map +1 -1
- package/dist/nest.js +877 -15
- package/dist/nest.js.map +1 -0
- package/dist/nest.mjs +861 -6
- package/dist/nest.mjs.map +1 -0
- package/dist/{search-DjXSn6v5.mjs → search-BFbu_oVn.mjs} +13 -3
- package/dist/{search-DjXSn6v5.mjs.map → search-BFbu_oVn.mjs.map} +1 -1
- package/dist/{search-B0MH1SJJ.js → search-C4V0OMEn.js} +13 -3
- package/dist/{search-B0MH1SJJ.js.map → search-C4V0OMEn.js.map} +1 -1
- package/dist/{search-CHUZPl0h.d.ts → search-CNh9uVwR.d.ts} +2 -2
- package/dist/search-CNh9uVwR.d.ts.map +1 -0
- package/dist/{search-BfBzDIT9.d.mts → search-DXANsQ2n.d.mts} +2 -2
- package/dist/{search-CHUZPl0h.d.ts.map → search-DXANsQ2n.d.mts.map} +1 -1
- package/dist/search.d.mts +3 -3
- package/dist/search.d.ts +3 -3
- package/dist/search.js +1 -1
- package/dist/search.mjs +1 -1
- package/dist/slack.transport-BZzoXDPn.d.mts +112 -0
- package/dist/slack.transport-BZzoXDPn.d.mts.map +1 -0
- package/dist/slack.transport-BfJRouB2.js +654 -0
- package/dist/slack.transport-BfJRouB2.js.map +1 -0
- package/dist/slack.transport-Bzw7sucI.mjs +643 -0
- package/dist/slack.transport-Bzw7sucI.mjs.map +1 -0
- package/dist/slack.transport-CXjQYOes.d.ts +112 -0
- package/dist/slack.transport-CXjQYOes.d.ts.map +1 -0
- package/dist/testing.d.mts +2 -2
- package/dist/testing.d.ts +2 -2
- package/dist/{transport.manager-CpdVHEGP.mjs → transport.manager-BiuCAJd2.mjs} +171 -84
- package/dist/transport.manager-BiuCAJd2.mjs.map +1 -0
- package/dist/{transport.manager-Crau3Rle.js → transport.manager-CXbKKdVE.js} +176 -83
- package/dist/transport.manager-CXbKKdVE.js.map +1 -0
- package/dist/{transport.types-CtNr3D7S.d.mts → transport.types-BMnurPcc.d.mts} +5 -2
- package/dist/transport.types-BMnurPcc.d.mts.map +1 -0
- package/dist/{transport.types-DqVLZTyf.d.ts → transport.types-CGoHpWQR.d.ts} +5 -2
- package/dist/transport.types-CGoHpWQR.d.ts.map +1 -0
- package/dist/transports.d.mts +18 -13
- package/dist/transports.d.mts.map +1 -1
- package/dist/transports.d.ts +18 -13
- package/dist/transports.d.ts.map +1 -1
- package/dist/transports.js +5 -2
- package/dist/transports.mjs +4 -3
- package/dist/worker.d.mts +2 -2
- package/dist/worker.d.ts +2 -2
- package/dist/worker.js +1 -1
- package/dist/worker.mjs +1 -1
- package/dist/{worker.transport-JP8YHBuU.js → worker.transport-BdPxu3PN.js} +1 -1
- package/dist/{worker.transport-JP8YHBuU.js.map → worker.transport-BdPxu3PN.js.map} +1 -1
- package/dist/{worker.transport-Bj-i0P9V.d.ts → worker.transport-CdzSZJmw.d.ts} +2 -2
- package/dist/{worker.transport-Bj-i0P9V.d.ts.map → worker.transport-CdzSZJmw.d.ts.map} +1 -1
- package/dist/{worker.transport-Bgv9heDI.d.mts → worker.transport-JvGPog3C.d.mts} +2 -2
- package/dist/{worker.transport-Bgv9heDI.d.mts.map → worker.transport-JvGPog3C.d.mts.map} +1 -1
- package/dist/{worker.transport-otwhJ_Et.mjs → worker.transport-lPxO2MVL.mjs} +1 -1
- package/dist/{worker.transport-otwhJ_Et.mjs.map → worker.transport-lPxO2MVL.mjs.map} +1 -1
- package/package.json +18 -9
- package/dist/nestjs-extras-DnJ6vrIC.js.map +0 -1
- package/dist/nestjs-extras-ImbuDhs1.mjs.map +0 -1
- package/dist/nestjs-extras-OkC796py.d.mts +0 -725
- package/dist/nestjs-extras-OkC796py.d.mts.map +0 -1
- package/dist/nestjs-extras-mKrHE9S6.d.ts +0 -725
- package/dist/nestjs-extras-mKrHE9S6.d.ts.map +0 -1
- package/dist/search-BfBzDIT9.d.mts.map +0 -1
- package/dist/transport.manager-CpdVHEGP.mjs.map +0 -1
- package/dist/transport.manager-Crau3Rle.js.map +0 -1
- package/dist/transport.types-CtNr3D7S.d.mts.map +0 -1
- package/dist/transport.types-DqVLZTyf.d.ts.map +0 -1
|
@@ -4,16 +4,85 @@ const require_safe_stringify = require('./safe-stringify-DWo3aZp_.js');
|
|
|
4
4
|
const require_trace_utils = require('./trace.utils-DpBOLDtq.js');
|
|
5
5
|
const require_async_context = require('./async-context-DyQQYq3I.js');
|
|
6
6
|
const require_coerce_utils = require('./coerce.utils-B-LilukN.js');
|
|
7
|
-
const require_transport_manager = require('./transport.manager-
|
|
7
|
+
const require_transport_manager = require('./transport.manager-CXbKKdVE.js');
|
|
8
8
|
let node_os = require("node:os");
|
|
9
9
|
node_os = require_chunk.__toESM(node_os);
|
|
10
10
|
let fast_json_stringify = require("fast-json-stringify");
|
|
11
11
|
fast_json_stringify = require_chunk.__toESM(fast_json_stringify);
|
|
12
|
-
let __nestjs_common = require("@nestjs/common");
|
|
13
|
-
__nestjs_common = require_chunk.__toESM(__nestjs_common);
|
|
14
|
-
let rxjs = require("rxjs");
|
|
15
|
-
rxjs = require_chunk.__toESM(rxjs);
|
|
16
12
|
|
|
13
|
+
//#region src/types/index.ts
|
|
14
|
+
const LogLevel = {
|
|
15
|
+
ERROR: "error",
|
|
16
|
+
WARN: "warn",
|
|
17
|
+
INFO: "info",
|
|
18
|
+
DEBUG: "debug",
|
|
19
|
+
TRACE: "trace",
|
|
20
|
+
VERBOSE: "verbose"
|
|
21
|
+
};
|
|
22
|
+
const DEFAULT_LOG_LEVELS = {
|
|
23
|
+
error: 0,
|
|
24
|
+
warn: 1,
|
|
25
|
+
info: 2,
|
|
26
|
+
debug: 3,
|
|
27
|
+
trace: 4,
|
|
28
|
+
verbose: 5
|
|
29
|
+
};
|
|
30
|
+
const DEFAULT_LOG_COLORS = {
|
|
31
|
+
error: "red",
|
|
32
|
+
warn: "yellow",
|
|
33
|
+
info: "green",
|
|
34
|
+
debug: "blue",
|
|
35
|
+
trace: "magenta",
|
|
36
|
+
verbose: "cyan"
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
//#endregion
|
|
40
|
+
//#region src/core/default-config.ts
|
|
41
|
+
/**
|
|
42
|
+
* Default configuration for Logixia logger
|
|
43
|
+
*/
|
|
44
|
+
const DEFAULT_CONFIG = {
|
|
45
|
+
appName: "App",
|
|
46
|
+
environment: "development",
|
|
47
|
+
traceId: true,
|
|
48
|
+
format: {
|
|
49
|
+
timestamp: true,
|
|
50
|
+
colorize: true,
|
|
51
|
+
json: false
|
|
52
|
+
},
|
|
53
|
+
silent: false,
|
|
54
|
+
levelOptions: {
|
|
55
|
+
level: LogLevel.INFO,
|
|
56
|
+
levels: {
|
|
57
|
+
[LogLevel.ERROR]: 0,
|
|
58
|
+
[LogLevel.WARN]: 1,
|
|
59
|
+
[LogLevel.INFO]: 2,
|
|
60
|
+
[LogLevel.DEBUG]: 3,
|
|
61
|
+
[LogLevel.TRACE]: 4,
|
|
62
|
+
[LogLevel.VERBOSE]: 5
|
|
63
|
+
},
|
|
64
|
+
colors: {
|
|
65
|
+
[LogLevel.ERROR]: "red",
|
|
66
|
+
[LogLevel.WARN]: "yellow",
|
|
67
|
+
[LogLevel.INFO]: "blue",
|
|
68
|
+
[LogLevel.DEBUG]: "green",
|
|
69
|
+
[LogLevel.TRACE]: "gray",
|
|
70
|
+
[LogLevel.VERBOSE]: "cyan"
|
|
71
|
+
}
|
|
72
|
+
},
|
|
73
|
+
fields: {
|
|
74
|
+
timestamp: true,
|
|
75
|
+
level: true,
|
|
76
|
+
appName: true,
|
|
77
|
+
traceId: true,
|
|
78
|
+
message: true,
|
|
79
|
+
payload: true,
|
|
80
|
+
timeTaken: true
|
|
81
|
+
},
|
|
82
|
+
outputs: ["console"]
|
|
83
|
+
};
|
|
84
|
+
|
|
85
|
+
//#endregion
|
|
17
86
|
//#region src/plugin.ts
|
|
18
87
|
/**
|
|
19
88
|
* Holds an ordered list of `LogixiaPlugin` instances and dispatches lifecycle
|
|
@@ -120,33 +189,6 @@ function usePlugin(plugin) {
|
|
|
120
189
|
globalPluginRegistry.register(plugin);
|
|
121
190
|
}
|
|
122
191
|
|
|
123
|
-
//#endregion
|
|
124
|
-
//#region src/types/index.ts
|
|
125
|
-
const LogLevel = {
|
|
126
|
-
ERROR: "error",
|
|
127
|
-
WARN: "warn",
|
|
128
|
-
INFO: "info",
|
|
129
|
-
DEBUG: "debug",
|
|
130
|
-
TRACE: "trace",
|
|
131
|
-
VERBOSE: "verbose"
|
|
132
|
-
};
|
|
133
|
-
const DEFAULT_LOG_LEVELS = {
|
|
134
|
-
error: 0,
|
|
135
|
-
warn: 1,
|
|
136
|
-
info: 2,
|
|
137
|
-
debug: 3,
|
|
138
|
-
trace: 4,
|
|
139
|
-
verbose: 5
|
|
140
|
-
};
|
|
141
|
-
const DEFAULT_LOG_COLORS = {
|
|
142
|
-
error: "red",
|
|
143
|
-
warn: "yellow",
|
|
144
|
-
info: "green",
|
|
145
|
-
debug: "blue",
|
|
146
|
-
trace: "magenta",
|
|
147
|
-
verbose: "cyan"
|
|
148
|
-
};
|
|
149
|
-
|
|
150
192
|
//#endregion
|
|
151
193
|
//#region src/utils/error.utils.ts
|
|
152
194
|
const EXTRA_FIELDS = [
|
|
@@ -1726,683 +1768,6 @@ function createLogger(config, context) {
|
|
|
1726
1768
|
return logger;
|
|
1727
1769
|
}
|
|
1728
1770
|
|
|
1729
|
-
//#endregion
|
|
1730
|
-
//#region \0@oxc-project+runtime@0.95.0/helpers/decorateMetadata.js
|
|
1731
|
-
function __decorateMetadata(k, v) {
|
|
1732
|
-
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
1733
|
-
}
|
|
1734
|
-
|
|
1735
|
-
//#endregion
|
|
1736
|
-
//#region \0@oxc-project+runtime@0.95.0/helpers/decorate.js
|
|
1737
|
-
function __decorate(decorators, target, key, desc) {
|
|
1738
|
-
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
1739
|
-
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
1740
|
-
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;
|
|
1741
|
-
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
1742
|
-
}
|
|
1743
|
-
|
|
1744
|
-
//#endregion
|
|
1745
|
-
//#region src/core/logitron-nestjs.service.ts
|
|
1746
|
-
var _LogixiaLoggerService;
|
|
1747
|
-
let LogixiaLoggerService = _LogixiaLoggerService = class LogixiaLoggerService$1 {
|
|
1748
|
-
constructor(config) {
|
|
1749
|
-
this._mergedConfig = {
|
|
1750
|
-
appName: "NestJS-App",
|
|
1751
|
-
environment: "development",
|
|
1752
|
-
traceId: true,
|
|
1753
|
-
format: {
|
|
1754
|
-
timestamp: true,
|
|
1755
|
-
colorize: true,
|
|
1756
|
-
json: false
|
|
1757
|
-
},
|
|
1758
|
-
silent: false,
|
|
1759
|
-
levelOptions: {
|
|
1760
|
-
level: LogLevel.INFO,
|
|
1761
|
-
levels: {
|
|
1762
|
-
error: 0,
|
|
1763
|
-
warn: 1,
|
|
1764
|
-
log: 2,
|
|
1765
|
-
debug: 3,
|
|
1766
|
-
verbose: 4
|
|
1767
|
-
},
|
|
1768
|
-
colors: {
|
|
1769
|
-
error: "red",
|
|
1770
|
-
warn: "yellow",
|
|
1771
|
-
log: "green",
|
|
1772
|
-
debug: "blue",
|
|
1773
|
-
verbose: "cyan"
|
|
1774
|
-
}
|
|
1775
|
-
},
|
|
1776
|
-
fields: {
|
|
1777
|
-
timestamp: "[yyyy-mm-dd HH:MM:ss.MS]",
|
|
1778
|
-
level: "[log_level]",
|
|
1779
|
-
appName: "[app_name]",
|
|
1780
|
-
traceId: "[trace_id]",
|
|
1781
|
-
message: "[message]",
|
|
1782
|
-
payload: "[payload]",
|
|
1783
|
-
timeTaken: "[time_taken_MS]"
|
|
1784
|
-
},
|
|
1785
|
-
...config
|
|
1786
|
-
};
|
|
1787
|
-
this.logger = new LogixiaLogger(this._mergedConfig);
|
|
1788
|
-
this._createCustomLevelMethods();
|
|
1789
|
-
}
|
|
1790
|
-
_createCustomLevelMethods() {
|
|
1791
|
-
var _this$_mergedConfig$l;
|
|
1792
|
-
const levels = (_this$_mergedConfig$l = this._mergedConfig.levelOptions) === null || _this$_mergedConfig$l === void 0 ? void 0 : _this$_mergedConfig$l.levels;
|
|
1793
|
-
if (!levels) return;
|
|
1794
|
-
for (const levelName of Object.keys(levels)) {
|
|
1795
|
-
const lower = levelName.toLowerCase();
|
|
1796
|
-
if (typeof this[lower] !== "undefined") continue;
|
|
1797
|
-
this[lower] = async (message, data) => {
|
|
1798
|
-
return this.logger.logLevel(lower, message, data);
|
|
1799
|
-
};
|
|
1800
|
-
}
|
|
1801
|
-
}
|
|
1802
|
-
/**
|
|
1803
|
-
* NestJS `LoggerService.log` — void, string context.
|
|
1804
|
-
* Maps internally to `info`.
|
|
1805
|
-
*
|
|
1806
|
-
* @example `logger.log('User signed up', 'AuthService')`
|
|
1807
|
-
*/
|
|
1808
|
-
log(message, context) {
|
|
1809
|
-
this.setContextIfProvided(context);
|
|
1810
|
-
this.logger.info(this.formatMessage(message)).catch((err) => require_internal_log.internalError("LogixiaLoggerService.log failed", err));
|
|
1811
|
-
}
|
|
1812
|
-
/**
|
|
1813
|
-
* Native async `info` — structured data, returns `Promise<void>`.
|
|
1814
|
-
*
|
|
1815
|
-
* @example `await logger.info('User signed up', { userId: 'u_abc' })`
|
|
1816
|
-
*/
|
|
1817
|
-
async info(message, data) {
|
|
1818
|
-
return this.logger.info(message, data);
|
|
1819
|
-
}
|
|
1820
|
-
error(message, dataOrTrace, context) {
|
|
1821
|
-
if (typeof dataOrTrace === "object" && dataOrTrace !== null) return message instanceof Error ? this.logger.error(message, dataOrTrace) : this.logger.error(this.formatMessage(message), dataOrTrace);
|
|
1822
|
-
this.setContextIfProvided(context);
|
|
1823
|
-
const errorData = {};
|
|
1824
|
-
if (typeof dataOrTrace === "string" && dataOrTrace) errorData.stack = dataOrTrace;
|
|
1825
|
-
(message instanceof Error ? this.logger.error(message, errorData) : this.logger.error(this.formatMessage(message), errorData)).catch((err) => require_internal_log.internalError("LogixiaLoggerService.error failed", err));
|
|
1826
|
-
}
|
|
1827
|
-
warn(message, dataOrContext) {
|
|
1828
|
-
if (typeof dataOrContext === "object" && dataOrContext !== null) return this.logger.warn(this.formatMessage(message), dataOrContext);
|
|
1829
|
-
this.setContextIfProvided(typeof dataOrContext === "string" ? dataOrContext : void 0);
|
|
1830
|
-
this.logger.warn(this.formatMessage(message)).catch((err) => require_internal_log.internalError("LogixiaLoggerService.warn failed", err));
|
|
1831
|
-
}
|
|
1832
|
-
debug(message, dataOrContext) {
|
|
1833
|
-
if (typeof dataOrContext === "object" && dataOrContext !== null) return this.logger.debug(this.formatMessage(message), dataOrContext);
|
|
1834
|
-
this.setContextIfProvided(typeof dataOrContext === "string" ? dataOrContext : void 0);
|
|
1835
|
-
this.logger.debug(this.formatMessage(message)).catch((err) => require_internal_log.internalError("LogixiaLoggerService.debug failed", err));
|
|
1836
|
-
}
|
|
1837
|
-
verbose(message, dataOrContext) {
|
|
1838
|
-
if (typeof dataOrContext === "object" && dataOrContext !== null) return this.logger.trace(this.formatMessage(message), dataOrContext);
|
|
1839
|
-
this.setContextIfProvided(typeof dataOrContext === "string" ? dataOrContext : void 0);
|
|
1840
|
-
this.logger.trace(this.formatMessage(message)).catch((err) => require_internal_log.internalError("LogixiaLoggerService.verbose failed", err));
|
|
1841
|
-
}
|
|
1842
|
-
/**
|
|
1843
|
-
* Native async `trace` — lowest verbosity level, structured data.
|
|
1844
|
-
*/
|
|
1845
|
-
async trace(message, data) {
|
|
1846
|
-
return this.logger.trace(message, data);
|
|
1847
|
-
}
|
|
1848
|
-
/**
|
|
1849
|
-
* Log at any named level with structured data.
|
|
1850
|
-
*/
|
|
1851
|
-
logLevel(level, message, data) {
|
|
1852
|
-
return this.logger.logLevel(level, message, data);
|
|
1853
|
-
}
|
|
1854
|
-
time(label) {
|
|
1855
|
-
this.logger.time(label);
|
|
1856
|
-
}
|
|
1857
|
-
async timeEnd(label) {
|
|
1858
|
-
return this.logger.timeEnd(label);
|
|
1859
|
-
}
|
|
1860
|
-
async timeAsync(label, fn) {
|
|
1861
|
-
return this.logger.timeAsync(label, fn);
|
|
1862
|
-
}
|
|
1863
|
-
setContext(context) {
|
|
1864
|
-
const coerced = typeof context === "string" ? context : require_coerce_utils.safeToString(context);
|
|
1865
|
-
this.context = coerced;
|
|
1866
|
-
this.logger.setContext(coerced);
|
|
1867
|
-
}
|
|
1868
|
-
getContext() {
|
|
1869
|
-
return this.context;
|
|
1870
|
-
}
|
|
1871
|
-
setLevel(level) {
|
|
1872
|
-
this.logger.setLevel(level);
|
|
1873
|
-
}
|
|
1874
|
-
getLevel() {
|
|
1875
|
-
return this.logger.getLevel();
|
|
1876
|
-
}
|
|
1877
|
-
child(context, data) {
|
|
1878
|
-
const childService = new _LogixiaLoggerService(this._mergedConfig);
|
|
1879
|
-
childService.logger = this.logger.child(context, data);
|
|
1880
|
-
childService.context = context;
|
|
1881
|
-
return childService;
|
|
1882
|
-
}
|
|
1883
|
-
getCurrentTraceId() {
|
|
1884
|
-
return require_trace_utils.TraceContext.instance.getCurrentTraceId();
|
|
1885
|
-
}
|
|
1886
|
-
/** Returns the AsyncLocalStorage key currently used to store the trace ID. */
|
|
1887
|
-
get traceContextKey() {
|
|
1888
|
-
return require_trace_utils.getTraceContextKey();
|
|
1889
|
-
}
|
|
1890
|
-
async close() {
|
|
1891
|
-
return this.logger.close();
|
|
1892
|
-
}
|
|
1893
|
-
static create(config) {
|
|
1894
|
-
return new _LogixiaLoggerService(config);
|
|
1895
|
-
}
|
|
1896
|
-
getLogger() {
|
|
1897
|
-
return this.logger;
|
|
1898
|
-
}
|
|
1899
|
-
setContextIfProvided(context) {
|
|
1900
|
-
if (typeof context !== "string" || context.length === 0) return;
|
|
1901
|
-
if (context !== this.context) this.setContext(context);
|
|
1902
|
-
}
|
|
1903
|
-
formatMessage(message) {
|
|
1904
|
-
if (typeof message === "string") return message;
|
|
1905
|
-
return require_coerce_utils.safeToString(message);
|
|
1906
|
-
}
|
|
1907
|
-
};
|
|
1908
|
-
LogixiaLoggerService = _LogixiaLoggerService = __decorate([(0, __nestjs_common.Injectable)({ scope: __nestjs_common.Scope.TRANSIENT }), __decorateMetadata("design:paramtypes", [Object])], LogixiaLoggerService);
|
|
1909
|
-
|
|
1910
|
-
//#endregion
|
|
1911
|
-
//#region src/core/kafka-trace.interceptor.ts
|
|
1912
|
-
var _KafkaTraceInterceptor;
|
|
1913
|
-
let KafkaTraceInterceptor = class KafkaTraceInterceptor$1 {
|
|
1914
|
-
static {
|
|
1915
|
-
_KafkaTraceInterceptor = this;
|
|
1916
|
-
}
|
|
1917
|
-
static #_ = this.metrics = {
|
|
1918
|
-
accepted: 0,
|
|
1919
|
-
acceptedWithoutTrace: 0,
|
|
1920
|
-
dropped: 0
|
|
1921
|
-
};
|
|
1922
|
-
/** Reset counters (tests). */
|
|
1923
|
-
static resetMetrics() {
|
|
1924
|
-
_KafkaTraceInterceptor.metrics.accepted = 0;
|
|
1925
|
-
_KafkaTraceInterceptor.metrics.acceptedWithoutTrace = 0;
|
|
1926
|
-
_KafkaTraceInterceptor.metrics.dropped = 0;
|
|
1927
|
-
}
|
|
1928
|
-
/**
|
|
1929
|
-
* @param config - TraceIdConfig options (extractor keys, contextKey, etc.)
|
|
1930
|
-
* @param requireTraceId - When true, messages with no traceId are silently skipped
|
|
1931
|
-
* (EMPTY Observable — message is ack'd, consumer stays alive).
|
|
1932
|
-
* A WARN is logged AND `KafkaTraceInterceptor.metrics.dropped`
|
|
1933
|
-
* increments so the missing traceId is observable end-to-end.
|
|
1934
|
-
* Default: false (handler runs without trace context).
|
|
1935
|
-
*/
|
|
1936
|
-
constructor(config, requireTraceId = false) {
|
|
1937
|
-
this.config = config;
|
|
1938
|
-
this.requireTraceId = requireTraceId;
|
|
1939
|
-
this.ctx = require_trace_utils.TraceContext.instance;
|
|
1940
|
-
this.config = {
|
|
1941
|
-
enabled: true,
|
|
1942
|
-
contextKey: "traceId",
|
|
1943
|
-
extractor: {
|
|
1944
|
-
body: [
|
|
1945
|
-
"traceId",
|
|
1946
|
-
"trace_id",
|
|
1947
|
-
"x-trace-id"
|
|
1948
|
-
],
|
|
1949
|
-
header: ["x-trace-id", "trace-id"]
|
|
1950
|
-
},
|
|
1951
|
-
...config
|
|
1952
|
-
};
|
|
1953
|
-
}
|
|
1954
|
-
intercept(context, next) {
|
|
1955
|
-
var _this$config;
|
|
1956
|
-
if (!((_this$config = this.config) === null || _this$config === void 0 ? void 0 : _this$config.enabled)) return next.handle();
|
|
1957
|
-
const rpcContext = context.switchToRpc();
|
|
1958
|
-
const data = rpcContext.getData();
|
|
1959
|
-
const rpcData = rpcContext.getContext();
|
|
1960
|
-
let traceId;
|
|
1961
|
-
if (this.config.extractor) traceId = require_trace_utils.extractTraceId({
|
|
1962
|
-
body: data,
|
|
1963
|
-
headers: (rpcData === null || rpcData === void 0 ? void 0 : rpcData.headers) ?? {},
|
|
1964
|
-
query: {},
|
|
1965
|
-
params: {}
|
|
1966
|
-
}, this.config.extractor);
|
|
1967
|
-
if (!traceId) traceId = this.ctx.getCurrentTraceId();
|
|
1968
|
-
if (!traceId) {
|
|
1969
|
-
if (this.requireTraceId) {
|
|
1970
|
-
var _LogixiaLoggerModule$;
|
|
1971
|
-
_KafkaTraceInterceptor.metrics.dropped++;
|
|
1972
|
-
(_LogixiaLoggerModule$ = LogixiaLoggerModule.getGlobalLogger()) === null || _LogixiaLoggerModule$ === void 0 || _LogixiaLoggerModule$.warn(`[KafkaTraceInterceptor] Missing traceId on topic "${rpcData === null || rpcData === void 0 ? void 0 : rpcData.topic}" — message skipped.`);
|
|
1973
|
-
return rxjs.EMPTY;
|
|
1974
|
-
}
|
|
1975
|
-
_KafkaTraceInterceptor.metrics.acceptedWithoutTrace++;
|
|
1976
|
-
return next.handle();
|
|
1977
|
-
}
|
|
1978
|
-
_KafkaTraceInterceptor.metrics.accepted++;
|
|
1979
|
-
const kafkaContext = {
|
|
1980
|
-
messageType: "kafka",
|
|
1981
|
-
topic: rpcData === null || rpcData === void 0 ? void 0 : rpcData.topic,
|
|
1982
|
-
partition: rpcData === null || rpcData === void 0 ? void 0 : rpcData.partition,
|
|
1983
|
-
offset: rpcData === null || rpcData === void 0 ? void 0 : rpcData.offset,
|
|
1984
|
-
key: rpcData === null || rpcData === void 0 ? void 0 : rpcData.key,
|
|
1985
|
-
timestamp: rpcData === null || rpcData === void 0 ? void 0 : rpcData.timestamp
|
|
1986
|
-
};
|
|
1987
|
-
return new rxjs.Observable((subscriber) => {
|
|
1988
|
-
let inner;
|
|
1989
|
-
this.ctx.run(traceId, () => {
|
|
1990
|
-
inner = next.handle().subscribe({
|
|
1991
|
-
next: (value) => subscriber.next(value),
|
|
1992
|
-
error: (err) => subscriber.error(err),
|
|
1993
|
-
complete: () => subscriber.complete()
|
|
1994
|
-
});
|
|
1995
|
-
}, kafkaContext);
|
|
1996
|
-
return () => inner === null || inner === void 0 ? void 0 : inner.unsubscribe();
|
|
1997
|
-
});
|
|
1998
|
-
}
|
|
1999
|
-
};
|
|
2000
|
-
KafkaTraceInterceptor = _KafkaTraceInterceptor = __decorate([(0, __nestjs_common.Injectable)(), __decorateMetadata("design:paramtypes", [Object, Boolean])], KafkaTraceInterceptor);
|
|
2001
|
-
|
|
2002
|
-
//#endregion
|
|
2003
|
-
//#region \0@oxc-project+runtime@0.95.0/helpers/decorateParam.js
|
|
2004
|
-
function __decorateParam(paramIndex, decorator) {
|
|
2005
|
-
return function(target, key) {
|
|
2006
|
-
decorator(target, key, paramIndex);
|
|
2007
|
-
};
|
|
2008
|
-
}
|
|
2009
|
-
|
|
2010
|
-
//#endregion
|
|
2011
|
-
//#region src/core/trace.middleware.ts
|
|
2012
|
-
/** Default response header used to echo the resolved traceId back to the caller. */
|
|
2013
|
-
const DEFAULT_TRACE_RESPONSE_HEADER = "X-Trace-Id";
|
|
2014
|
-
/**
|
|
2015
|
-
* Resolve the response header name from config.
|
|
2016
|
-
* - `undefined` → default `'X-Trace-Id'`
|
|
2017
|
-
* - `string` → user's custom header
|
|
2018
|
-
* - `false` → `null` (suppress entirely)
|
|
2019
|
-
*/
|
|
2020
|
-
function resolveResponseHeader(config) {
|
|
2021
|
-
if ((config === null || config === void 0 ? void 0 : config.responseHeader) === false) return null;
|
|
2022
|
-
return (config === null || config === void 0 ? void 0 : config.responseHeader) ?? DEFAULT_TRACE_RESPONSE_HEADER;
|
|
2023
|
-
}
|
|
2024
|
-
/**
|
|
2025
|
-
* Echo the trace ID on the response, tolerating non-Express responses and
|
|
2026
|
-
* already-sent headers. NestJS can run on Fastify (reply.header() instead of
|
|
2027
|
-
* res.setHeader()), and on a closed/sent response setHeader throws — neither
|
|
2028
|
-
* should crash the request. The trace ID is still propagated via async context.
|
|
2029
|
-
*/
|
|
2030
|
-
function writeTraceHeader(res, header, traceId) {
|
|
2031
|
-
const r = res;
|
|
2032
|
-
if (r.headersSent) return;
|
|
2033
|
-
try {
|
|
2034
|
-
if (typeof r.setHeader === "function") r.setHeader(header, traceId);
|
|
2035
|
-
else if (typeof r.header === "function") r.header(header, traceId);
|
|
2036
|
-
} catch {}
|
|
2037
|
-
}
|
|
2038
|
-
let TraceMiddleware = class TraceMiddleware$1 {
|
|
2039
|
-
constructor(config) {
|
|
2040
|
-
this.config = config;
|
|
2041
|
-
this.ctx = require_trace_utils.TraceContext.instance;
|
|
2042
|
-
const defaultExtractor = {
|
|
2043
|
-
header: require_trace_utils.DEFAULT_TRACE_HEADERS,
|
|
2044
|
-
query: ["traceId", "trace_id"]
|
|
2045
|
-
};
|
|
2046
|
-
this.config = {
|
|
2047
|
-
enabled: true,
|
|
2048
|
-
generator: () => this.ctx.generate(),
|
|
2049
|
-
contextKey: "traceId",
|
|
2050
|
-
...config,
|
|
2051
|
-
extractor: (config === null || config === void 0 ? void 0 : config.extractor) ? {
|
|
2052
|
-
...defaultExtractor,
|
|
2053
|
-
...config.extractor
|
|
2054
|
-
} : defaultExtractor
|
|
2055
|
-
};
|
|
2056
|
-
if (this.config.enabled) this.ctx.setContextKey(this.config.contextKey ?? "traceId");
|
|
2057
|
-
}
|
|
2058
|
-
use(req, res, next) {
|
|
2059
|
-
var _this$config, _req$socket, _req$connection;
|
|
2060
|
-
if (!((_this$config = this.config) === null || _this$config === void 0 ? void 0 : _this$config.enabled)) return next();
|
|
2061
|
-
let traceId;
|
|
2062
|
-
if (this.config.extractor) traceId = require_trace_utils.extractTraceId(req, this.config.extractor);
|
|
2063
|
-
if (!traceId && this.config.generator) {
|
|
2064
|
-
const candidate = this.config.generator();
|
|
2065
|
-
if (typeof candidate === "string" && candidate.trim().length > 0) traceId = candidate;
|
|
2066
|
-
else require_internal_log.internalWarn("TraceIdConfig.generator returned a non-string/empty value — using built-in generator.");
|
|
2067
|
-
}
|
|
2068
|
-
if (!traceId) traceId = this.ctx.generate();
|
|
2069
|
-
req.traceId = traceId;
|
|
2070
|
-
const header = resolveResponseHeader(this.config);
|
|
2071
|
-
if (header) writeTraceHeader(res, header, traceId);
|
|
2072
|
-
this.ctx.run(traceId, () => next(), {
|
|
2073
|
-
method: req.method,
|
|
2074
|
-
url: req.url,
|
|
2075
|
-
userAgent: req.get("User-Agent"),
|
|
2076
|
-
ip: req.ip || ((_req$socket = req.socket) === null || _req$socket === void 0 ? void 0 : _req$socket.remoteAddress) || ((_req$connection = req.connection) === null || _req$connection === void 0 ? void 0 : _req$connection.remoteAddress)
|
|
2077
|
-
});
|
|
2078
|
-
}
|
|
2079
|
-
};
|
|
2080
|
-
TraceMiddleware = __decorate([
|
|
2081
|
-
(0, __nestjs_common.Injectable)(),
|
|
2082
|
-
__decorateParam(0, (0, __nestjs_common.Optional)()),
|
|
2083
|
-
__decorateMetadata("design:paramtypes", [Object])
|
|
2084
|
-
], TraceMiddleware);
|
|
2085
|
-
|
|
2086
|
-
//#endregion
|
|
2087
|
-
//#region src/core/websocket-trace.interceptor.ts
|
|
2088
|
-
let WebSocketTraceInterceptor = class WebSocketTraceInterceptor$1 {
|
|
2089
|
-
constructor(config) {
|
|
2090
|
-
this.config = config;
|
|
2091
|
-
this.ctx = require_trace_utils.TraceContext.instance;
|
|
2092
|
-
this.config = {
|
|
2093
|
-
enabled: true,
|
|
2094
|
-
contextKey: "traceId",
|
|
2095
|
-
extractor: {
|
|
2096
|
-
body: [
|
|
2097
|
-
"traceId",
|
|
2098
|
-
"trace_id",
|
|
2099
|
-
"x-trace-id"
|
|
2100
|
-
],
|
|
2101
|
-
header: ["x-trace-id", "trace-id"],
|
|
2102
|
-
query: ["traceId", "trace_id"]
|
|
2103
|
-
},
|
|
2104
|
-
...config
|
|
2105
|
-
};
|
|
2106
|
-
}
|
|
2107
|
-
intercept(context, next) {
|
|
2108
|
-
var _this$config, _client$handshake3;
|
|
2109
|
-
if (!((_this$config = this.config) === null || _this$config === void 0 ? void 0 : _this$config.enabled)) return next.handle();
|
|
2110
|
-
const wsContext = context.switchToWs();
|
|
2111
|
-
const data = wsContext.getData();
|
|
2112
|
-
const client = wsContext.getClient();
|
|
2113
|
-
let traceId;
|
|
2114
|
-
if (this.config.extractor) {
|
|
2115
|
-
var _client$handshake, _client$handshake2;
|
|
2116
|
-
traceId = require_trace_utils.extractTraceId({
|
|
2117
|
-
body: data,
|
|
2118
|
-
headers: (client === null || client === void 0 || (_client$handshake = client.handshake) === null || _client$handshake === void 0 ? void 0 : _client$handshake.headers) || {},
|
|
2119
|
-
query: (client === null || client === void 0 || (_client$handshake2 = client.handshake) === null || _client$handshake2 === void 0 ? void 0 : _client$handshake2.query) || {},
|
|
2120
|
-
params: {}
|
|
2121
|
-
}, this.config.extractor);
|
|
2122
|
-
}
|
|
2123
|
-
if (!traceId) traceId = this.ctx.getCurrentTraceId();
|
|
2124
|
-
if (!traceId) return next.handle();
|
|
2125
|
-
const wsContextData = {
|
|
2126
|
-
messageType: "websocket",
|
|
2127
|
-
event: data === null || data === void 0 ? void 0 : data.event,
|
|
2128
|
-
socketId: client === null || client === void 0 ? void 0 : client.id,
|
|
2129
|
-
rooms: (client === null || client === void 0 ? void 0 : client.rooms) ? Array.from(client.rooms) : [],
|
|
2130
|
-
clientAddress: client === null || client === void 0 || (_client$handshake3 = client.handshake) === null || _client$handshake3 === void 0 ? void 0 : _client$handshake3.address
|
|
2131
|
-
};
|
|
2132
|
-
return new rxjs.Observable((observer) => {
|
|
2133
|
-
let inner;
|
|
2134
|
-
this.ctx.run(traceId, () => {
|
|
2135
|
-
inner = next.handle().subscribe({
|
|
2136
|
-
next: (value) => observer.next(value),
|
|
2137
|
-
error: (err) => observer.error(err),
|
|
2138
|
-
complete: () => observer.complete()
|
|
2139
|
-
});
|
|
2140
|
-
}, wsContextData);
|
|
2141
|
-
return () => inner === null || inner === void 0 ? void 0 : inner.unsubscribe();
|
|
2142
|
-
});
|
|
2143
|
-
}
|
|
2144
|
-
};
|
|
2145
|
-
WebSocketTraceInterceptor = __decorate([(0, __nestjs_common.Injectable)(), __decorateMetadata("design:paramtypes", [Object])], WebSocketTraceInterceptor);
|
|
2146
|
-
|
|
2147
|
-
//#endregion
|
|
2148
|
-
//#region src/core/logitron-logger.module.ts
|
|
2149
|
-
var _LogixiaLoggerModule;
|
|
2150
|
-
const DEFAULT_ROUTES = [{
|
|
2151
|
-
path: "*",
|
|
2152
|
-
method: __nestjs_common.RequestMethod.ALL
|
|
2153
|
-
}];
|
|
2154
|
-
const LOGIXIA_LOGGER_CONFIG = "LOGIXIA_LOGGER_CONFIG";
|
|
2155
|
-
const LOGIXIA_TRACE_CONFIG = "TRACE_CONFIG";
|
|
2156
|
-
const LOGIXIA_LOGGER_PREFIX = "LOGIXIA_LOGGER_";
|
|
2157
|
-
let LogixiaLoggerModule = class LogixiaLoggerModule$1 {
|
|
2158
|
-
static {
|
|
2159
|
-
_LogixiaLoggerModule = this;
|
|
2160
|
-
}
|
|
2161
|
-
constructor() {
|
|
2162
|
-
this.config = {};
|
|
2163
|
-
}
|
|
2164
|
-
static #_ = this.loggerConfig = {};
|
|
2165
|
-
static #_2 = this._globalLogger = null;
|
|
2166
|
-
/**
|
|
2167
|
-
* @internal Set the global logger exactly once.
|
|
2168
|
-
*
|
|
2169
|
-
* Called from the module's forRoot / forRootAsync factory. If the module is
|
|
2170
|
-
* initialised more than once in the same process (nested DI context, test
|
|
2171
|
-
* harness creating multiple apps, hot reload, etc.) a warning is written to
|
|
2172
|
-
* stderr and the first logger wins — silently overwriting would allow the
|
|
2173
|
-
* newer instance's transport config to replace the live one while the old
|
|
2174
|
-
* one is still being used by registered shutdown hooks, decorators, etc.
|
|
2175
|
-
*
|
|
2176
|
-
* Use {@link _resetGlobalLogger} in tests to reset between runs.
|
|
2177
|
-
*/
|
|
2178
|
-
static _setGlobalLogger(service) {
|
|
2179
|
-
if (_LogixiaLoggerModule._globalLogger !== null) {
|
|
2180
|
-
require_internal_log.internalWarn("LogixiaLoggerModule.forRoot() was called more than once — ignoring the second init. If this is intentional (e.g. in tests), call LogixiaLoggerModule._resetGlobalLogger() first.");
|
|
2181
|
-
return;
|
|
2182
|
-
}
|
|
2183
|
-
_LogixiaLoggerModule._globalLogger = service;
|
|
2184
|
-
}
|
|
2185
|
-
/** @internal Clear the global logger. Tests only. */
|
|
2186
|
-
static _resetGlobalLogger() {
|
|
2187
|
-
_LogixiaLoggerModule._globalLogger = null;
|
|
2188
|
-
}
|
|
2189
|
-
/**
|
|
2190
|
-
* Returns the global LogixiaLoggerService instance that was created when the
|
|
2191
|
-
* module booted. Useful for logging outside of NestJS DI — utility functions,
|
|
2192
|
-
* plain scripts, decorators — without injecting the service everywhere.
|
|
2193
|
-
*
|
|
2194
|
-
* Returns `null` if called before `LogixiaLoggerModule.forRoot[Async]()` has
|
|
2195
|
-
* been initialised (i.e. before the NestJS app has started).
|
|
2196
|
-
*
|
|
2197
|
-
* @example
|
|
2198
|
-
* ```ts
|
|
2199
|
-
* // some-util.ts
|
|
2200
|
-
* import { LogixiaLoggerModule } from 'logixia/nest';
|
|
2201
|
-
*
|
|
2202
|
-
* export function doSomething() {
|
|
2203
|
-
* LogixiaLoggerModule.getGlobalLogger()?.info('doing something');
|
|
2204
|
-
* }
|
|
2205
|
-
* ```
|
|
2206
|
-
*/
|
|
2207
|
-
static getGlobalLogger() {
|
|
2208
|
-
return _LogixiaLoggerModule._globalLogger;
|
|
2209
|
-
}
|
|
2210
|
-
configure(consumer) {
|
|
2211
|
-
const { forRoutes = DEFAULT_ROUTES, exclude } = this.config;
|
|
2212
|
-
let resolvedTraceConfig;
|
|
2213
|
-
if (typeof _LogixiaLoggerModule.loggerConfig.traceId === "object") resolvedTraceConfig = _LogixiaLoggerModule.loggerConfig.traceId;
|
|
2214
|
-
else if (_LogixiaLoggerModule.loggerConfig.traceId === true) resolvedTraceConfig = {
|
|
2215
|
-
enabled: true,
|
|
2216
|
-
contextKey: "traceId",
|
|
2217
|
-
generator: () => require_trace_utils.TraceContext.instance.generate()
|
|
2218
|
-
};
|
|
2219
|
-
const middleware = new TraceMiddleware(resolvedTraceConfig);
|
|
2220
|
-
const middlewareConfig = (req, res, next) => middleware.use(req, res, next);
|
|
2221
|
-
if (exclude) consumer.apply(middlewareConfig).exclude(...exclude).forRoutes(...forRoutes);
|
|
2222
|
-
else consumer.apply(middlewareConfig).forRoutes(...forRoutes);
|
|
2223
|
-
}
|
|
2224
|
-
/**
|
|
2225
|
-
* Configure the module with synchronous options
|
|
2226
|
-
*/
|
|
2227
|
-
static forRoot(config) {
|
|
2228
|
-
_LogixiaLoggerModule.loggerConfig = config || {};
|
|
2229
|
-
const traceConfig = (config === null || config === void 0 ? void 0 : config.traceId) && typeof config.traceId === "object" ? config.traceId : { enabled: !!(config === null || config === void 0 ? void 0 : config.traceId) };
|
|
2230
|
-
return {
|
|
2231
|
-
module: _LogixiaLoggerModule,
|
|
2232
|
-
providers: [
|
|
2233
|
-
{
|
|
2234
|
-
provide: LOGIXIA_LOGGER_CONFIG,
|
|
2235
|
-
useValue: config || {}
|
|
2236
|
-
},
|
|
2237
|
-
{
|
|
2238
|
-
provide: LOGIXIA_TRACE_CONFIG,
|
|
2239
|
-
useValue: traceConfig
|
|
2240
|
-
},
|
|
2241
|
-
{
|
|
2242
|
-
provide: LogixiaLoggerService,
|
|
2243
|
-
useFactory: (loggerConfig) => {
|
|
2244
|
-
const service = new LogixiaLoggerService({
|
|
2245
|
-
level: "info",
|
|
2246
|
-
service: "NestJSApp",
|
|
2247
|
-
environment: "development",
|
|
2248
|
-
fields: {},
|
|
2249
|
-
formatters: ["text"],
|
|
2250
|
-
outputs: ["console"],
|
|
2251
|
-
levelOptions: {
|
|
2252
|
-
level: "info",
|
|
2253
|
-
levels: {
|
|
2254
|
-
error: 0,
|
|
2255
|
-
warn: 1,
|
|
2256
|
-
info: 2,
|
|
2257
|
-
debug: 3,
|
|
2258
|
-
verbose: 4
|
|
2259
|
-
},
|
|
2260
|
-
colors: {
|
|
2261
|
-
error: "red",
|
|
2262
|
-
warn: "yellow",
|
|
2263
|
-
info: "green",
|
|
2264
|
-
debug: "blue",
|
|
2265
|
-
verbose: "cyan"
|
|
2266
|
-
}
|
|
2267
|
-
},
|
|
2268
|
-
...loggerConfig
|
|
2269
|
-
});
|
|
2270
|
-
_LogixiaLoggerModule._setGlobalLogger(service);
|
|
2271
|
-
return service;
|
|
2272
|
-
},
|
|
2273
|
-
inject: [LOGIXIA_LOGGER_CONFIG]
|
|
2274
|
-
},
|
|
2275
|
-
{
|
|
2276
|
-
provide: KafkaTraceInterceptor,
|
|
2277
|
-
useFactory: (traceConfig$1) => new KafkaTraceInterceptor(traceConfig$1),
|
|
2278
|
-
inject: [LOGIXIA_TRACE_CONFIG]
|
|
2279
|
-
},
|
|
2280
|
-
{
|
|
2281
|
-
provide: WebSocketTraceInterceptor,
|
|
2282
|
-
useFactory: (traceConfig$1) => new WebSocketTraceInterceptor(traceConfig$1),
|
|
2283
|
-
inject: [LOGIXIA_TRACE_CONFIG]
|
|
2284
|
-
}
|
|
2285
|
-
],
|
|
2286
|
-
exports: [
|
|
2287
|
-
LogixiaLoggerService,
|
|
2288
|
-
LOGIXIA_LOGGER_CONFIG,
|
|
2289
|
-
KafkaTraceInterceptor,
|
|
2290
|
-
WebSocketTraceInterceptor
|
|
2291
|
-
],
|
|
2292
|
-
global: true
|
|
2293
|
-
};
|
|
2294
|
-
}
|
|
2295
|
-
/**
|
|
2296
|
-
* Configure the module with asynchronous options
|
|
2297
|
-
*/
|
|
2298
|
-
static forRootAsync(options) {
|
|
2299
|
-
return {
|
|
2300
|
-
module: _LogixiaLoggerModule,
|
|
2301
|
-
imports: options.imports || [],
|
|
2302
|
-
providers: [
|
|
2303
|
-
...this.createAsyncProviders(options),
|
|
2304
|
-
{
|
|
2305
|
-
provide: LOGIXIA_TRACE_CONFIG,
|
|
2306
|
-
useFactory: (loggerConfig) => {
|
|
2307
|
-
return typeof (loggerConfig === null || loggerConfig === void 0 ? void 0 : loggerConfig.traceId) === "object" ? loggerConfig.traceId : { enabled: !!(loggerConfig === null || loggerConfig === void 0 ? void 0 : loggerConfig.traceId) };
|
|
2308
|
-
},
|
|
2309
|
-
inject: [LOGIXIA_LOGGER_CONFIG]
|
|
2310
|
-
},
|
|
2311
|
-
{
|
|
2312
|
-
provide: LogixiaLoggerService,
|
|
2313
|
-
useFactory: (loggerConfig) => {
|
|
2314
|
-
const defaultConfig = {
|
|
2315
|
-
level: "info",
|
|
2316
|
-
service: "NestJSApp",
|
|
2317
|
-
environment: "development",
|
|
2318
|
-
fields: {},
|
|
2319
|
-
formatters: ["text"],
|
|
2320
|
-
outputs: ["console"],
|
|
2321
|
-
levelOptions: {
|
|
2322
|
-
level: "info",
|
|
2323
|
-
levels: {
|
|
2324
|
-
error: 0,
|
|
2325
|
-
warn: 1,
|
|
2326
|
-
info: 2,
|
|
2327
|
-
debug: 3,
|
|
2328
|
-
verbose: 4
|
|
2329
|
-
},
|
|
2330
|
-
colors: {
|
|
2331
|
-
error: "red",
|
|
2332
|
-
warn: "yellow",
|
|
2333
|
-
info: "green",
|
|
2334
|
-
debug: "blue",
|
|
2335
|
-
verbose: "cyan"
|
|
2336
|
-
}
|
|
2337
|
-
},
|
|
2338
|
-
...loggerConfig
|
|
2339
|
-
};
|
|
2340
|
-
_LogixiaLoggerModule.loggerConfig = defaultConfig;
|
|
2341
|
-
const service = new LogixiaLoggerService(defaultConfig);
|
|
2342
|
-
_LogixiaLoggerModule._setGlobalLogger(service);
|
|
2343
|
-
return service;
|
|
2344
|
-
},
|
|
2345
|
-
inject: [LOGIXIA_LOGGER_CONFIG]
|
|
2346
|
-
},
|
|
2347
|
-
{
|
|
2348
|
-
provide: KafkaTraceInterceptor,
|
|
2349
|
-
useFactory: (traceConfig) => new KafkaTraceInterceptor(traceConfig),
|
|
2350
|
-
inject: [LOGIXIA_TRACE_CONFIG]
|
|
2351
|
-
},
|
|
2352
|
-
{
|
|
2353
|
-
provide: WebSocketTraceInterceptor,
|
|
2354
|
-
useFactory: (traceConfig) => new WebSocketTraceInterceptor(traceConfig),
|
|
2355
|
-
inject: [LOGIXIA_TRACE_CONFIG]
|
|
2356
|
-
}
|
|
2357
|
-
],
|
|
2358
|
-
exports: [
|
|
2359
|
-
LogixiaLoggerService,
|
|
2360
|
-
LOGIXIA_LOGGER_CONFIG,
|
|
2361
|
-
KafkaTraceInterceptor,
|
|
2362
|
-
WebSocketTraceInterceptor
|
|
2363
|
-
],
|
|
2364
|
-
global: true
|
|
2365
|
-
};
|
|
2366
|
-
}
|
|
2367
|
-
/**
|
|
2368
|
-
* Create feature-specific logger instances
|
|
2369
|
-
*/
|
|
2370
|
-
static forFeature(context) {
|
|
2371
|
-
const providerToken = `${LOGIXIA_LOGGER_PREFIX}${context.toUpperCase()}`;
|
|
2372
|
-
return {
|
|
2373
|
-
module: _LogixiaLoggerModule,
|
|
2374
|
-
providers: [{
|
|
2375
|
-
provide: providerToken,
|
|
2376
|
-
useFactory: (baseLogger) => {
|
|
2377
|
-
return baseLogger.child(context);
|
|
2378
|
-
},
|
|
2379
|
-
inject: [LogixiaLoggerService]
|
|
2380
|
-
}],
|
|
2381
|
-
exports: [providerToken]
|
|
2382
|
-
};
|
|
2383
|
-
}
|
|
2384
|
-
static createAsyncProviders(options) {
|
|
2385
|
-
if (options.useExisting || options.useFactory) return [this.createAsyncOptionsProvider(options)];
|
|
2386
|
-
return [this.createAsyncOptionsProvider(options), {
|
|
2387
|
-
provide: options.useClass,
|
|
2388
|
-
useClass: options.useClass
|
|
2389
|
-
}];
|
|
2390
|
-
}
|
|
2391
|
-
static createAsyncOptionsProvider(options) {
|
|
2392
|
-
if (options.useFactory) return {
|
|
2393
|
-
provide: LOGIXIA_LOGGER_CONFIG,
|
|
2394
|
-
useFactory: options.useFactory,
|
|
2395
|
-
inject: options.inject || []
|
|
2396
|
-
};
|
|
2397
|
-
return {
|
|
2398
|
-
provide: LOGIXIA_LOGGER_CONFIG,
|
|
2399
|
-
useFactory: async (optionsFactory) => await optionsFactory.createLogixiaOptions(),
|
|
2400
|
-
inject: [options.useExisting || options.useClass]
|
|
2401
|
-
};
|
|
2402
|
-
}
|
|
2403
|
-
};
|
|
2404
|
-
LogixiaLoggerModule = _LogixiaLoggerModule = __decorate([(0, __nestjs_common.Module)({})], LogixiaLoggerModule);
|
|
2405
|
-
|
|
2406
1771
|
//#endregion
|
|
2407
1772
|
//#region src/exceptions/exception.ts
|
|
2408
1773
|
var LogixiaException = class extends Error {
|
|
@@ -2617,167 +1982,12 @@ var ErrorResponseBuilder = class {
|
|
|
2617
1982
|
};
|
|
2618
1983
|
|
|
2619
1984
|
//#endregion
|
|
2620
|
-
|
|
2621
|
-
|
|
2622
|
-
|
|
2623
|
-
|
|
2624
|
-
|
|
2625
|
-
|
|
2626
|
-
* the internal token constant yourself.
|
|
2627
|
-
*
|
|
2628
|
-
* @example
|
|
2629
|
-
* ```ts
|
|
2630
|
-
* constructor(@InjectLogger() private readonly logger: LogixiaLoggerService) {}
|
|
2631
|
-
* ```
|
|
2632
|
-
*/
|
|
2633
|
-
const InjectLogger = () => (0, __nestjs_common.Inject)(`${LOGIXIA_LOGGER_PREFIX}SERVICE`);
|
|
2634
|
-
/**
|
|
2635
|
-
* Method decorator that auto-logs entry, exit, duration, and errors.
|
|
2636
|
-
*
|
|
2637
|
-
* Preserves the original method's sync/async contract: a synchronous method
|
|
2638
|
-
* stays synchronous (returns its value directly, with logs emitted
|
|
2639
|
-
* fire-and-forget), and an async method is awaited so exit/error logs reflect
|
|
2640
|
-
* the resolved result. Attaches to the logger found on the class instance via a
|
|
2641
|
-
* `logger` property (the conventional NestJS name).
|
|
2642
|
-
*
|
|
2643
|
-
* @example
|
|
2644
|
-
* ```ts
|
|
2645
|
-
* @LogMethod({ level: 'info', logArgs: true })
|
|
2646
|
-
* async processPayment(orderId: string): Promise<void> { … }
|
|
2647
|
-
* ```
|
|
2648
|
-
*/
|
|
2649
|
-
function LogMethod(options = {}) {
|
|
2650
|
-
const { level = "debug", logArgs = true, logResult = false, logErrors = true } = options;
|
|
2651
|
-
return function(target, propertyKey, descriptor) {
|
|
2652
|
-
var _constructor;
|
|
2653
|
-
const originalMethod = descriptor.value;
|
|
2654
|
-
if (typeof originalMethod !== "function") return descriptor;
|
|
2655
|
-
const methodName = String(propertyKey);
|
|
2656
|
-
const className = ((_constructor = target.constructor) === null || _constructor === void 0 ? void 0 : _constructor.name) ?? "Unknown";
|
|
2657
|
-
const label = options.label ?? `${className}.${methodName}`;
|
|
2658
|
-
let _warnedNoLogger = false;
|
|
2659
|
-
const reportLogFailure = (phase, err) => {
|
|
2660
|
-
require_internal_log.internalError(`@LogMethod(${label}) ${phase} log failed: ${String(err)}`);
|
|
2661
|
-
};
|
|
2662
|
-
const emit = (logger, phase, message, data) => {
|
|
2663
|
-
const logFnRaw = logger[level];
|
|
2664
|
-
const p = (typeof logFnRaw === "function" ? logFnRaw : logger.debug).bind(logger)(message, data);
|
|
2665
|
-
if (p && typeof p.catch === "function") p.catch((e) => reportLogFailure(phase, e));
|
|
2666
|
-
};
|
|
2667
|
-
const emitError = (logger, error, start) => {
|
|
2668
|
-
const err = error instanceof Error ? error : new Error(String(error));
|
|
2669
|
-
const errLog = logger.error(err, {
|
|
2670
|
-
method: label,
|
|
2671
|
-
durationMs: Date.now() - start
|
|
2672
|
-
});
|
|
2673
|
-
if (errLog && typeof errLog.catch === "function") errLog.catch((e) => reportLogFailure("error", e));
|
|
2674
|
-
};
|
|
2675
|
-
descriptor.value = function(...args) {
|
|
2676
|
-
const logger = this.logger ?? LogixiaLoggerModule._globalLogger ?? void 0;
|
|
2677
|
-
if (!logger && !_warnedNoLogger) {
|
|
2678
|
-
_warnedNoLogger = true;
|
|
2679
|
-
require_internal_log.internalWarn(`@LogMethod on ${label}: no logger available. Either inject LogixiaLoggerService as this.logger or ensure LogixiaLoggerModule is initialised.`);
|
|
2680
|
-
}
|
|
2681
|
-
const start = Date.now();
|
|
2682
|
-
const entry = { method: label };
|
|
2683
|
-
if (logArgs && args.length > 0) entry["args"] = args;
|
|
2684
|
-
if (logger) emit(logger, "entry", `→ ${label}`, entry);
|
|
2685
|
-
const buildExit = (result$1) => {
|
|
2686
|
-
const exit = {
|
|
2687
|
-
method: label,
|
|
2688
|
-
durationMs: Date.now() - start
|
|
2689
|
-
};
|
|
2690
|
-
if (logResult) exit["result"] = result$1;
|
|
2691
|
-
return exit;
|
|
2692
|
-
};
|
|
2693
|
-
let result;
|
|
2694
|
-
try {
|
|
2695
|
-
result = originalMethod.apply(this, args);
|
|
2696
|
-
} catch (error) {
|
|
2697
|
-
if (logger && logErrors) emitError(logger, error, start);
|
|
2698
|
-
throw error;
|
|
2699
|
-
}
|
|
2700
|
-
if (result && typeof result.then === "function") return result.then((resolved) => {
|
|
2701
|
-
if (logger) emit(logger, "exit", `← ${label}`, buildExit(resolved));
|
|
2702
|
-
return resolved;
|
|
2703
|
-
}, (error) => {
|
|
2704
|
-
if (logger && logErrors) emitError(logger, error, start);
|
|
2705
|
-
throw error;
|
|
2706
|
-
});
|
|
2707
|
-
if (logger) emit(logger, "exit", `← ${label}`, buildExit(result));
|
|
2708
|
-
return result;
|
|
2709
|
-
};
|
|
2710
|
-
return descriptor;
|
|
2711
|
-
};
|
|
2712
|
-
}
|
|
2713
|
-
/** Injection token for {@link LogixiaExceptionFilterOptions}. */
|
|
2714
|
-
const LOGIXIA_EXCEPTION_FILTER_OPTIONS = "LOGIXIA_EXCEPTION_FILTER_OPTIONS";
|
|
2715
|
-
let LogixiaExceptionFilter = class LogixiaExceptionFilter$1 {
|
|
2716
|
-
constructor(logger, loggerConfig, options) {
|
|
2717
|
-
this._options = options ?? {};
|
|
2718
|
-
this._logger = logger ?? LogixiaLoggerModule._globalLogger ?? void 0;
|
|
2719
|
-
this._traceConfig = typeof (loggerConfig === null || loggerConfig === void 0 ? void 0 : loggerConfig.traceId) === "object" ? loggerConfig.traceId : void 0;
|
|
2720
|
-
}
|
|
2721
|
-
catch(exception, host) {
|
|
2722
|
-
var _request$headers;
|
|
2723
|
-
const ctx = host.switchToHttp();
|
|
2724
|
-
const request = ctx.getRequest();
|
|
2725
|
-
const response = ctx.getResponse();
|
|
2726
|
-
const traceId = require_trace_utils.TraceContext.instance.getCurrentTraceId() ?? require_trace_utils.sanitizeIncomingId((_request$headers = request.headers) === null || _request$headers === void 0 ? void 0 : _request$headers["x-trace-id"]) ?? require_trace_utils.sanitizeIncomingId(request.id) ?? void 0;
|
|
2727
|
-
const { response: errorResponse, httpStatus } = ErrorResponseBuilder.build({
|
|
2728
|
-
exception,
|
|
2729
|
-
traceId,
|
|
2730
|
-
path: request.url ?? "/",
|
|
2731
|
-
startTime: request.startTime,
|
|
2732
|
-
exposeDebug: this._options.exposeDebug === true,
|
|
2733
|
-
exposeCause: this._options.exposeCause === true
|
|
2734
|
-
});
|
|
2735
|
-
if (this._logger) {
|
|
2736
|
-
const requestMeta = {
|
|
2737
|
-
method: request.method ?? "",
|
|
2738
|
-
url: request.url ?? "",
|
|
2739
|
-
status: httpStatus,
|
|
2740
|
-
...errorResponse.meta.trace_id !== void 0 ? { trace_id: errorResponse.meta.trace_id } : {}
|
|
2741
|
-
};
|
|
2742
|
-
const onLogFailure = (err) => {
|
|
2743
|
-
require_internal_log.internalError(`ExceptionFilter failed to write log entry: ${String(err)}`);
|
|
2744
|
-
};
|
|
2745
|
-
let logPromise;
|
|
2746
|
-
if (httpStatus >= 500) {
|
|
2747
|
-
const err = exception instanceof Error ? exception : new Error(String(exception));
|
|
2748
|
-
logPromise = this._logger.error(err, requestMeta);
|
|
2749
|
-
} else if (isLogixiaException(exception)) logPromise = this._logger.warn(`[${errorResponse.error.code}] ${errorResponse.error.message}`, requestMeta);
|
|
2750
|
-
else logPromise = this._logger.warn(`[${httpStatus}] ${errorResponse.error.message}`, requestMeta);
|
|
2751
|
-
if (logPromise && typeof logPromise.catch === "function") logPromise.catch(onLogFailure);
|
|
2752
|
-
}
|
|
2753
|
-
if (errorResponse.meta.trace_id) {
|
|
2754
|
-
const traceHeader = resolveResponseHeader(this._traceConfig);
|
|
2755
|
-
if (traceHeader) try {
|
|
2756
|
-
response.setHeader(traceHeader, errorResponse.meta.trace_id);
|
|
2757
|
-
} catch {}
|
|
2758
|
-
}
|
|
2759
|
-
if (httpStatus === 429) try {
|
|
2760
|
-
response.setHeader("Retry-After", "60");
|
|
2761
|
-
} catch {}
|
|
2762
|
-
response.status(httpStatus).json(errorResponse);
|
|
2763
|
-
}
|
|
2764
|
-
};
|
|
2765
|
-
LogixiaExceptionFilter = __decorate([
|
|
2766
|
-
(0, __nestjs_common.Catch)(),
|
|
2767
|
-
__decorateParam(0, (0, __nestjs_common.Optional)()),
|
|
2768
|
-
__decorateParam(0, (0, __nestjs_common.Inject)(`${LOGIXIA_LOGGER_PREFIX}SERVICE`)),
|
|
2769
|
-
__decorateParam(1, (0, __nestjs_common.Optional)()),
|
|
2770
|
-
__decorateParam(1, (0, __nestjs_common.Inject)(LOGIXIA_LOGGER_CONFIG)),
|
|
2771
|
-
__decorateParam(2, (0, __nestjs_common.Optional)()),
|
|
2772
|
-
__decorateParam(2, (0, __nestjs_common.Inject)(LOGIXIA_EXCEPTION_FILTER_OPTIONS)),
|
|
2773
|
-
__decorateMetadata("design:paramtypes", [
|
|
2774
|
-
Object,
|
|
2775
|
-
typeof (_ref = typeof Partial !== "undefined" && Partial) === "function" ? _ref : Object,
|
|
2776
|
-
Object
|
|
2777
|
-
])
|
|
2778
|
-
], LogixiaExceptionFilter);
|
|
2779
|
-
|
|
2780
|
-
//#endregion
|
|
1985
|
+
Object.defineProperty(exports, 'DEFAULT_CONFIG', {
|
|
1986
|
+
enumerable: true,
|
|
1987
|
+
get: function () {
|
|
1988
|
+
return DEFAULT_CONFIG;
|
|
1989
|
+
}
|
|
1990
|
+
});
|
|
2781
1991
|
Object.defineProperty(exports, 'DEFAULT_LOG_COLORS', {
|
|
2782
1992
|
enumerable: true,
|
|
2783
1993
|
get: function () {
|
|
@@ -2796,102 +2006,30 @@ Object.defineProperty(exports, 'ErrorResponseBuilder', {
|
|
|
2796
2006
|
return ErrorResponseBuilder;
|
|
2797
2007
|
}
|
|
2798
2008
|
});
|
|
2799
|
-
Object.defineProperty(exports, 'InjectLogger', {
|
|
2800
|
-
enumerable: true,
|
|
2801
|
-
get: function () {
|
|
2802
|
-
return InjectLogger;
|
|
2803
|
-
}
|
|
2804
|
-
});
|
|
2805
|
-
Object.defineProperty(exports, 'KafkaTraceInterceptor', {
|
|
2806
|
-
enumerable: true,
|
|
2807
|
-
get: function () {
|
|
2808
|
-
return KafkaTraceInterceptor;
|
|
2809
|
-
}
|
|
2810
|
-
});
|
|
2811
|
-
Object.defineProperty(exports, 'LOGIXIA_EXCEPTION_FILTER_OPTIONS', {
|
|
2812
|
-
enumerable: true,
|
|
2813
|
-
get: function () {
|
|
2814
|
-
return LOGIXIA_EXCEPTION_FILTER_OPTIONS;
|
|
2815
|
-
}
|
|
2816
|
-
});
|
|
2817
|
-
Object.defineProperty(exports, 'LOGIXIA_LOGGER_CONFIG', {
|
|
2818
|
-
enumerable: true,
|
|
2819
|
-
get: function () {
|
|
2820
|
-
return LOGIXIA_LOGGER_CONFIG;
|
|
2821
|
-
}
|
|
2822
|
-
});
|
|
2823
|
-
Object.defineProperty(exports, 'LOGIXIA_LOGGER_PREFIX', {
|
|
2824
|
-
enumerable: true,
|
|
2825
|
-
get: function () {
|
|
2826
|
-
return LOGIXIA_LOGGER_PREFIX;
|
|
2827
|
-
}
|
|
2828
|
-
});
|
|
2829
|
-
Object.defineProperty(exports, 'LOGIXIA_TRACE_CONFIG', {
|
|
2830
|
-
enumerable: true,
|
|
2831
|
-
get: function () {
|
|
2832
|
-
return LOGIXIA_TRACE_CONFIG;
|
|
2833
|
-
}
|
|
2834
|
-
});
|
|
2835
2009
|
Object.defineProperty(exports, 'LogLevel', {
|
|
2836
2010
|
enumerable: true,
|
|
2837
2011
|
get: function () {
|
|
2838
2012
|
return LogLevel;
|
|
2839
2013
|
}
|
|
2840
2014
|
});
|
|
2841
|
-
Object.defineProperty(exports, 'LogMethod', {
|
|
2842
|
-
enumerable: true,
|
|
2843
|
-
get: function () {
|
|
2844
|
-
return LogMethod;
|
|
2845
|
-
}
|
|
2846
|
-
});
|
|
2847
2015
|
Object.defineProperty(exports, 'LogixiaException', {
|
|
2848
2016
|
enumerable: true,
|
|
2849
2017
|
get: function () {
|
|
2850
2018
|
return LogixiaException;
|
|
2851
2019
|
}
|
|
2852
2020
|
});
|
|
2853
|
-
Object.defineProperty(exports, 'LogixiaExceptionFilter', {
|
|
2854
|
-
enumerable: true,
|
|
2855
|
-
get: function () {
|
|
2856
|
-
return LogixiaExceptionFilter;
|
|
2857
|
-
}
|
|
2858
|
-
});
|
|
2859
2021
|
Object.defineProperty(exports, 'LogixiaLogger', {
|
|
2860
2022
|
enumerable: true,
|
|
2861
2023
|
get: function () {
|
|
2862
2024
|
return LogixiaLogger;
|
|
2863
2025
|
}
|
|
2864
2026
|
});
|
|
2865
|
-
Object.defineProperty(exports, 'LogixiaLoggerModule', {
|
|
2866
|
-
enumerable: true,
|
|
2867
|
-
get: function () {
|
|
2868
|
-
return LogixiaLoggerModule;
|
|
2869
|
-
}
|
|
2870
|
-
});
|
|
2871
|
-
Object.defineProperty(exports, 'LogixiaLoggerService', {
|
|
2872
|
-
enumerable: true,
|
|
2873
|
-
get: function () {
|
|
2874
|
-
return LogixiaLoggerService;
|
|
2875
|
-
}
|
|
2876
|
-
});
|
|
2877
2027
|
Object.defineProperty(exports, 'PluginRegistry', {
|
|
2878
2028
|
enumerable: true,
|
|
2879
2029
|
get: function () {
|
|
2880
2030
|
return PluginRegistry;
|
|
2881
2031
|
}
|
|
2882
2032
|
});
|
|
2883
|
-
Object.defineProperty(exports, 'TraceMiddleware', {
|
|
2884
|
-
enumerable: true,
|
|
2885
|
-
get: function () {
|
|
2886
|
-
return TraceMiddleware;
|
|
2887
|
-
}
|
|
2888
|
-
});
|
|
2889
|
-
Object.defineProperty(exports, 'WebSocketTraceInterceptor', {
|
|
2890
|
-
enumerable: true,
|
|
2891
|
-
get: function () {
|
|
2892
|
-
return WebSocketTraceInterceptor;
|
|
2893
|
-
}
|
|
2894
|
-
});
|
|
2895
2033
|
Object.defineProperty(exports, '_shutdownRegistrySize', {
|
|
2896
2034
|
enumerable: true,
|
|
2897
2035
|
get: function () {
|
|
@@ -3012,4 +2150,4 @@ Object.defineProperty(exports, 'usePlugin', {
|
|
|
3012
2150
|
return usePlugin;
|
|
3013
2151
|
}
|
|
3014
2152
|
});
|
|
3015
|
-
//# sourceMappingURL=
|
|
2153
|
+
//# sourceMappingURL=builder-D44QktIo.js.map
|