@codefresh-io/cf-telemetry 2.0.0-alpha.9 → 2.1.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 +14 -6
- package/dist/global-config.d.ts +5 -0
- package/dist/global-config.js +10 -0
- package/dist/global-config.js.map +1 -0
- package/dist/init.d.mts +1 -0
- package/dist/{cjs/index.js → init.js} +24 -18
- package/dist/init.js.map +1 -0
- package/dist/init.mjs +2 -0
- package/dist/init.mjs.map +1 -0
- package/dist/logs/config.d.ts +2 -0
- package/dist/logs/config.js +35 -0
- package/dist/logs/config.js.map +1 -0
- package/dist/logs/express/http-logger-middleware.d.ts +10 -0
- package/dist/logs/express/http-logger-middleware.js +30 -0
- package/dist/logs/express/http-logger-middleware.js.map +1 -0
- package/dist/logs/express/index.d.ts +1 -0
- package/dist/logs/express/index.js +6 -0
- package/dist/logs/express/index.js.map +1 -0
- package/dist/logs/express/public.d.mts +1 -0
- package/dist/logs/express/public.d.ts +1 -0
- package/dist/logs/express/public.js +7 -0
- package/dist/logs/express/public.js.map +1 -0
- package/dist/logs/express/public.mjs +3 -0
- package/dist/logs/express/public.mjs.map +1 -0
- package/dist/logs/index.js.map +1 -0
- package/dist/{cjs/logs → logs}/logger.js +27 -5
- package/dist/logs/logger.js.map +1 -0
- package/dist/logs/metadata-storage.js.map +1 -0
- package/dist/logs/nest/index.d.ts +2 -0
- package/dist/logs/nest/index.js +8 -0
- package/dist/logs/nest/index.js.map +1 -0
- package/dist/logs/nest/logger-module.d.ts +4 -0
- package/dist/logs/nest/logger-module.js +69 -0
- package/dist/logs/nest/logger-module.js.map +1 -0
- package/dist/logs/nest/logger.d.ts +4 -0
- package/dist/logs/nest/logger.js +69 -0
- package/dist/logs/nest/logger.js.map +1 -0
- package/dist/logs/nest/public.d.mts +1 -0
- package/dist/logs/nest/public.d.ts +1 -0
- package/dist/logs/nest/public.js +8 -0
- package/dist/logs/nest/public.js.map +1 -0
- package/dist/logs/nest/public.mjs +3 -0
- package/dist/logs/nest/public.mjs.map +1 -0
- package/dist/logs/public.d.mts +1 -0
- package/dist/{cjs/logs → logs}/public.js +1 -0
- package/dist/logs/public.js.map +1 -0
- package/dist/logs/public.mjs +3 -0
- package/dist/logs/public.mjs.map +1 -0
- package/dist/logs/run-in-context.js.map +1 -0
- package/dist/{esm/logs → logs}/types.d.ts +9 -1
- package/dist/{cjs/logs → logs}/types.js +3 -1
- package/dist/logs/types.js.map +1 -0
- package/dist/{cjs/metrics → metrics}/mongodb/monitor-mongodb-client.js +2 -1
- package/dist/metrics/mongodb/monitor-mongodb-client.js.map +1 -0
- package/dist/metrics/mongodb/public.d.mts +1 -0
- package/dist/metrics/mongodb/public.d.ts +1 -0
- package/dist/{cjs/metrics/mongodb/index.js → metrics/mongodb/public.js} +2 -1
- package/dist/metrics/mongodb/public.js.map +1 -0
- package/dist/metrics/mongodb/public.mjs +3 -0
- package/dist/metrics/mongodb/public.mjs.map +1 -0
- package/dist/{cjs/metrics → metrics}/prometheus/client.js +3 -6
- package/dist/metrics/prometheus/client.js.map +1 -0
- package/dist/metrics/prometheus/config.d.ts +10 -0
- package/dist/metrics/prometheus/config.js +29 -0
- package/dist/metrics/prometheus/config.js.map +1 -0
- package/dist/metrics/prometheus/helpers.d.ts +5 -0
- package/dist/metrics/prometheus/helpers.js +16 -0
- package/dist/metrics/prometheus/helpers.js.map +1 -0
- package/dist/{cjs/metrics/prometheus/public.d.ts → metrics/prometheus/index.d.ts} +1 -0
- package/dist/{cjs/metrics → metrics}/prometheus/index.js +2 -2
- package/dist/metrics/prometheus/index.js.map +1 -0
- package/dist/{cjs/metrics/prometheus/init-prometheus.js → metrics/prometheus/init.js} +12 -2
- package/dist/metrics/prometheus/init.js.map +1 -0
- package/dist/metrics/prometheus/metrics.d.ts +24 -0
- package/dist/metrics/prometheus/metrics.js.map +1 -0
- package/dist/metrics/prometheus/public.d.mts +1 -0
- package/dist/metrics/prometheus/public.d.ts +5 -0
- package/dist/{cjs/metrics → metrics}/prometheus/public.js +12 -3
- package/dist/metrics/prometheus/public.js.map +1 -0
- package/dist/metrics/prometheus/public.mjs +3 -0
- package/dist/metrics/prometheus/public.mjs.map +1 -0
- package/dist/otel/config.js.map +1 -0
- package/dist/{cjs/otel → otel}/index.d.ts +1 -1
- package/dist/{cjs/otel → otel}/index.js +1 -1
- package/dist/otel/index.js.map +1 -0
- package/dist/otel/public.d.mts +1 -0
- package/dist/otel/public.d.ts +1 -0
- package/dist/otel/public.js +19 -0
- package/dist/otel/public.js.map +1 -0
- package/dist/otel/public.mjs +3 -0
- package/dist/otel/public.mjs.map +1 -0
- package/dist/{cjs/otel → otel}/sdk.js +10 -18
- package/dist/otel/sdk.js.map +1 -0
- package/dist/{cjs/profiles → profiles}/config.d.ts +2 -1
- package/dist/profiles/config.js +24 -0
- package/dist/profiles/config.js.map +1 -0
- package/dist/{esm/otel → profiles}/index.d.ts +1 -1
- package/dist/profiles/index.js +39 -0
- package/dist/profiles/index.js.map +1 -0
- package/package.json +33 -26
- package/dist/cjs/global-config.d.ts +0 -4
- package/dist/cjs/global-config.js +0 -8
- package/dist/cjs/global-config.js.map +0 -1
- package/dist/cjs/index.d.ts +0 -7
- package/dist/cjs/index.js.map +0 -1
- package/dist/cjs/init.mjs +0 -5
- package/dist/cjs/init.mjs.map +0 -1
- package/dist/cjs/logs/config.d.ts +0 -8
- package/dist/cjs/logs/config.js +0 -16
- package/dist/cjs/logs/config.js.map +0 -1
- package/dist/cjs/logs/index.js.map +0 -1
- package/dist/cjs/logs/logger.js.map +0 -1
- package/dist/cjs/logs/metadata-storage.js.map +0 -1
- package/dist/cjs/logs/public.js.map +0 -1
- package/dist/cjs/logs/run-in-context.js.map +0 -1
- package/dist/cjs/logs/types.d.ts +0 -81
- package/dist/cjs/logs/types.js.map +0 -1
- package/dist/cjs/metrics/mongodb/index.d.ts +0 -1
- package/dist/cjs/metrics/mongodb/index.js.map +0 -1
- package/dist/cjs/metrics/mongodb/monitor-mongodb-client.js.map +0 -1
- package/dist/cjs/metrics/mongodb/public.d.ts +0 -1
- package/dist/cjs/metrics/mongodb/public.js +0 -6
- package/dist/cjs/metrics/mongodb/public.js.map +0 -1
- package/dist/cjs/metrics/prometheus/client.js.map +0 -1
- package/dist/cjs/metrics/prometheus/config.d.ts +0 -7
- package/dist/cjs/metrics/prometheus/config.js +0 -11
- package/dist/cjs/metrics/prometheus/config.js.map +0 -1
- package/dist/cjs/metrics/prometheus/index.d.ts +0 -3
- package/dist/cjs/metrics/prometheus/index.js.map +0 -1
- package/dist/cjs/metrics/prometheus/init-prometheus.js.map +0 -1
- package/dist/cjs/metrics/prometheus/metrics.d.ts +0 -22
- package/dist/cjs/metrics/prometheus/metrics.js.map +0 -1
- package/dist/cjs/metrics/prometheus/public.js.map +0 -1
- package/dist/cjs/otel/config.js.map +0 -1
- package/dist/cjs/otel/index.js.map +0 -1
- package/dist/cjs/otel/public.d.ts +0 -1
- package/dist/cjs/otel/public.js +0 -38
- package/dist/cjs/otel/public.js.map +0 -1
- package/dist/cjs/otel/sdk.js.map +0 -1
- package/dist/cjs/profiles/config.js +0 -18
- package/dist/cjs/profiles/config.js.map +0 -1
- package/dist/cjs/profiles/index.d.ts +0 -2
- package/dist/cjs/profiles/index.js +0 -22
- package/dist/cjs/profiles/index.js.map +0 -1
- package/dist/esm/global-config.d.ts +0 -4
- package/dist/esm/global-config.js +0 -5
- package/dist/esm/global-config.js.map +0 -1
- package/dist/esm/index.d.ts +0 -7
- package/dist/esm/index.js +0 -38
- package/dist/esm/index.js.map +0 -1
- package/dist/esm/init.d.mts +0 -1
- package/dist/esm/init.mjs +0 -5
- package/dist/esm/init.mjs.map +0 -1
- package/dist/esm/logs/config.d.ts +0 -8
- package/dist/esm/logs/config.js +0 -13
- package/dist/esm/logs/config.js.map +0 -1
- package/dist/esm/logs/index.d.ts +0 -2
- package/dist/esm/logs/index.js +0 -3
- package/dist/esm/logs/index.js.map +0 -1
- package/dist/esm/logs/logger.d.ts +0 -61
- package/dist/esm/logs/logger.js +0 -90
- package/dist/esm/logs/logger.js.map +0 -1
- package/dist/esm/logs/metadata-storage.d.ts +0 -3
- package/dist/esm/logs/metadata-storage.js +0 -3
- package/dist/esm/logs/metadata-storage.js.map +0 -1
- package/dist/esm/logs/public.d.ts +0 -1
- package/dist/esm/logs/public.js +0 -2
- package/dist/esm/logs/public.js.map +0 -1
- package/dist/esm/logs/run-in-context.d.ts +0 -9
- package/dist/esm/logs/run-in-context.js +0 -17
- package/dist/esm/logs/run-in-context.js.map +0 -1
- package/dist/esm/logs/types.js +0 -6
- package/dist/esm/logs/types.js.map +0 -1
- package/dist/esm/metrics/mongodb/index.d.ts +0 -1
- package/dist/esm/metrics/mongodb/index.js +0 -2
- package/dist/esm/metrics/mongodb/index.js.map +0 -1
- package/dist/esm/metrics/mongodb/monitor-mongodb-client.d.ts +0 -13
- package/dist/esm/metrics/mongodb/monitor-mongodb-client.js +0 -47
- package/dist/esm/metrics/mongodb/monitor-mongodb-client.js.map +0 -1
- package/dist/esm/metrics/mongodb/public.d.ts +0 -1
- package/dist/esm/metrics/mongodb/public.js +0 -2
- package/dist/esm/metrics/mongodb/public.js.map +0 -1
- package/dist/esm/metrics/prometheus/client.d.ts +0 -3
- package/dist/esm/metrics/prometheus/client.js +0 -11
- package/dist/esm/metrics/prometheus/client.js.map +0 -1
- package/dist/esm/metrics/prometheus/config.d.ts +0 -7
- package/dist/esm/metrics/prometheus/config.js +0 -8
- package/dist/esm/metrics/prometheus/config.js.map +0 -1
- package/dist/esm/metrics/prometheus/index.d.ts +0 -3
- package/dist/esm/metrics/prometheus/index.js +0 -4
- package/dist/esm/metrics/prometheus/index.js.map +0 -1
- package/dist/esm/metrics/prometheus/init-prometheus.d.ts +0 -2
- package/dist/esm/metrics/prometheus/init-prometheus.js +0 -32
- package/dist/esm/metrics/prometheus/init-prometheus.js.map +0 -1
- package/dist/esm/metrics/prometheus/metrics.d.ts +0 -22
- package/dist/esm/metrics/prometheus/metrics.js +0 -22
- package/dist/esm/metrics/prometheus/metrics.js.map +0 -1
- package/dist/esm/metrics/prometheus/public.d.ts +0 -2
- package/dist/esm/metrics/prometheus/public.js +0 -3
- package/dist/esm/metrics/prometheus/public.js.map +0 -1
- package/dist/esm/otel/config.d.ts +0 -3
- package/dist/esm/otel/config.js +0 -4
- package/dist/esm/otel/config.js.map +0 -1
- package/dist/esm/otel/index.js +0 -30
- package/dist/esm/otel/index.js.map +0 -1
- package/dist/esm/otel/public.d.ts +0 -1
- package/dist/esm/otel/public.js +0 -2
- package/dist/esm/otel/public.js.map +0 -1
- package/dist/esm/otel/sdk.d.ts +0 -2
- package/dist/esm/otel/sdk.js +0 -38
- package/dist/esm/otel/sdk.js.map +0 -1
- package/dist/esm/profiles/config.d.ts +0 -6
- package/dist/esm/profiles/config.js +0 -15
- package/dist/esm/profiles/config.js.map +0 -1
- package/dist/esm/profiles/index.d.ts +0 -2
- package/dist/esm/profiles/index.js +0 -15
- package/dist/esm/profiles/index.js.map +0 -1
- /package/dist/{cjs/init.d.mts → init.d.ts} +0 -0
- /package/dist/{cjs/logs → logs}/index.d.ts +0 -0
- /package/dist/{cjs/logs → logs}/index.js +0 -0
- /package/dist/{cjs/logs → logs}/logger.d.ts +0 -0
- /package/dist/{cjs/logs → logs}/metadata-storage.d.ts +0 -0
- /package/dist/{cjs/logs → logs}/metadata-storage.js +0 -0
- /package/dist/{cjs/logs → logs}/public.d.ts +0 -0
- /package/dist/{cjs/logs → logs}/run-in-context.d.ts +0 -0
- /package/dist/{cjs/logs → logs}/run-in-context.js +0 -0
- /package/dist/{cjs/metrics → metrics}/mongodb/monitor-mongodb-client.d.ts +0 -0
- /package/dist/{cjs/metrics → metrics}/prometheus/client.d.ts +0 -0
- /package/dist/{cjs/metrics/prometheus/init-prometheus.d.ts → metrics/prometheus/init.d.ts} +0 -0
- /package/dist/{cjs/metrics → metrics}/prometheus/metrics.js +0 -0
- /package/dist/{cjs/otel → otel}/config.d.ts +0 -0
- /package/dist/{cjs/otel → otel}/config.js +0 -0
- /package/dist/{cjs/otel → otel}/sdk.d.ts +0 -0
package/README.md
CHANGED
|
@@ -4,20 +4,28 @@ Base utils for monitoring.
|
|
|
4
4
|
|
|
5
5
|
Includes:
|
|
6
6
|
|
|
7
|
-
* [
|
|
7
|
+
* [Logs](./src/logs/README.md).
|
|
8
|
+
* [MongoDB](./src/metrics/mongodb/README.md) client monitoring.
|
|
9
|
+
* [OpenTelemetry](./src/otel/README.md) auto instrumentation.
|
|
8
10
|
* [Prometheus](./src/metrics/prometheus/README.md) server and custom metrics.
|
|
9
|
-
* [MongoDB](./src//metrics/mongodb/README.md) client monitoring.
|
|
10
11
|
* [Pyroscope](./src/profiles/README.md) to profile CPU and memory.
|
|
11
12
|
|
|
12
13
|
## Usage
|
|
13
14
|
|
|
14
|
-
|
|
15
|
+
Add `import '@codefresh-io/cf-telemetry/init'` statement at the very beginning of the application lifecycle.
|
|
15
16
|
|
|
16
17
|
Please refer to the separate docs above for further configuration and usage details.
|
|
17
18
|
|
|
18
19
|
```TS
|
|
19
20
|
// index.ts
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
// ↓ Should be imported first
|
|
22
|
+
import '@codefresh-io/cf-telemetry/init'
|
|
23
|
+
// ↓ Keep one blank line below to prevent automatic import reordering
|
|
23
24
|
```
|
|
25
|
+
|
|
26
|
+
## Environment variables
|
|
27
|
+
|
|
28
|
+
| Variable | Required | Default value | Description |
|
|
29
|
+
|------------------------| -------- |-------------------------------------------------------------------|---------------------------------------------|
|
|
30
|
+
| `CF_SERVICE_NAME` | optional | `unknown_service:node` | Sets service name for OpenTelemetry, Pyroscope and Prometheus. |
|
|
31
|
+
| `CF_SERVICE_VERSION` | optional | `unknown` | Sets service name for OpenTelemetry, Pyroscope and Prometheus. |
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.globalConfig = void 0;
|
|
4
|
+
/* eslint-disable @typescript-eslint/prefer-nullish-coalescing */
|
|
5
|
+
exports.globalConfig = {
|
|
6
|
+
serviceName: process.env['CF_SERVICE_NAME'] || 'unknown_service:node',
|
|
7
|
+
serviceVersion: process.env['CF_SERVICE_VERSION'] || 'unknown',
|
|
8
|
+
libLogScope: 'cf-telemetry',
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=global-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-config.js","sourceRoot":"","sources":["../src/global-config.ts"],"names":[],"mappings":";;;AAAA,iEAAiE;AACpD,QAAA,YAAY,GAAG;IAC1B,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,IAAI,sBAAsB;IACrE,cAAc,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,SAAS;IAC9D,WAAW,EAAE,cAAc;CACnB,CAAC"}
|
package/dist/init.d.mts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import './init.js';
|
|
@@ -33,38 +33,41 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
33
33
|
};
|
|
34
34
|
})();
|
|
35
35
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
-
exports.terminate = exports.init = void 0;
|
|
37
36
|
// ↓ Should be imported first
|
|
38
37
|
const otel = __importStar(require("./otel"));
|
|
39
38
|
// ↑ Should be imported first
|
|
39
|
+
const global_config_1 = require("./global-config");
|
|
40
40
|
const logs = __importStar(require("./logs"));
|
|
41
41
|
const prometheus = __importStar(require("./metrics/prometheus"));
|
|
42
42
|
const profiles = __importStar(require("./profiles"));
|
|
43
43
|
let isInitialized = false;
|
|
44
44
|
/**
|
|
45
|
-
* Initializes telemetry services.
|
|
46
|
-
*
|
|
47
|
-
* instead of calling this function directly.
|
|
45
|
+
* Initializes telemetry services.
|
|
46
|
+
* Should be called once as early as possible in the application lifecycle.
|
|
48
47
|
*/
|
|
49
|
-
const init =
|
|
48
|
+
const init = () => {
|
|
50
49
|
if (isInitialized)
|
|
51
50
|
return;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
profiles.init(logger)
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
51
|
+
try {
|
|
52
|
+
const logger = new logs.Logger(global_config_1.globalConfig.libLogScope);
|
|
53
|
+
logger.info('Initializing telemetry services');
|
|
54
|
+
logger.debug('Telemetry configuration', global_config_1.globalConfig);
|
|
55
|
+
otel.init(logger);
|
|
56
|
+
profiles.init(logger);
|
|
57
|
+
prometheus.init(logger).catch(logger.error);
|
|
58
|
+
isInitialized = true;
|
|
59
|
+
logger.info('Telemetry services initialized');
|
|
60
|
+
}
|
|
61
|
+
catch (error) {
|
|
62
|
+
console.error('Failed to initialize telemetry services', error);
|
|
63
|
+
}
|
|
61
64
|
};
|
|
62
|
-
exports.init = init;
|
|
63
65
|
const terminate = async () => {
|
|
64
|
-
const logger = new logs.Logger(
|
|
66
|
+
const logger = new logs.Logger(global_config_1.globalConfig.libLogScope);
|
|
65
67
|
try {
|
|
66
68
|
logger.info('Terminating telemetry services');
|
|
67
69
|
await otel.terminate(logger).catch(logger.error);
|
|
70
|
+
await profiles.terminate(logger).catch(logger.error);
|
|
68
71
|
isInitialized = false;
|
|
69
72
|
logger.info('Telemetry services terminated');
|
|
70
73
|
}
|
|
@@ -72,5 +75,8 @@ const terminate = async () => {
|
|
|
72
75
|
logger.error('Failed to terminate telemetry services', exception);
|
|
73
76
|
}
|
|
74
77
|
};
|
|
75
|
-
|
|
76
|
-
|
|
78
|
+
init();
|
|
79
|
+
process.on('SIGINT', terminate);
|
|
80
|
+
process.on('SIGTERM', terminate);
|
|
81
|
+
process.once('beforeExit', terminate);
|
|
82
|
+
//# sourceMappingURL=init.js.map
|
package/dist/init.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../src/init.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAA6B;AAC7B,6CAA+B;AAC/B,6BAA6B;AAE7B,mDAA+C;AAC/C,6CAA+B;AAC/B,iEAAmD;AACnD,qDAAuC;AAEvC,IAAI,aAAa,GAAG,KAAK,CAAC;AAE1B;;;GAGG;AACH,MAAM,IAAI,GAAG,GAAS,EAAE;IACtB,IAAI,aAAa;QAAE,OAAO;IAE1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,4BAAY,CAAC,WAAW,CAAC,CAAC;QACzD,MAAM,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;QAC/C,MAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,4BAAY,CAAC,CAAC;QACtD,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAClB,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACtB,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC5C,aAAa,GAAG,IAAI,CAAC;QACrB,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;IAClE,CAAC;AACH,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,KAAK,IAAmB,EAAE;IAC1C,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,4BAAY,CAAC,WAAW,CAAC,CAAC;IACzD,IAAI,CAAC;QACH,MAAM,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;QAC9C,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrD,aAAa,GAAG,KAAK,CAAC;QACtB,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,SAAS,EAAE,CAAC;QACnB,MAAM,CAAC,KAAK,CAAC,wCAAwC,EAAE,SAAS,CAAC,CAAC;IACpE,CAAC;AACH,CAAC,CAAC;AAEF,IAAI,EAAE,CAAC;AAEP,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;AAChC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;AACjC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC"}
|
package/dist/init.mjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"init.mjs","sourceRoot":"","sources":["../src/init.mts"],"names":[],"mappings":"AAAA,OAAO,WAAW,CAAC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.config = void 0;
|
|
4
|
+
const types_1 = require("./types");
|
|
5
|
+
const getLevel = () => {
|
|
6
|
+
const detectedLevel = process.env['CF_TELEMETRY_LOGS_LEVEL'] ?? 'info';
|
|
7
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
8
|
+
const isKnownLevel = types_1.Level.includes(detectedLevel);
|
|
9
|
+
if (!isKnownLevel) {
|
|
10
|
+
console.warn(`Unknown value for 'CF_TELEMETRY_LOGS_LEVEL': "${detectedLevel}". Defaulting to 'info'. Allowed values: ${types_1.Level.join('|')}.`);
|
|
11
|
+
return 'info';
|
|
12
|
+
}
|
|
13
|
+
;
|
|
14
|
+
return detectedLevel;
|
|
15
|
+
};
|
|
16
|
+
const getPrettify = () => {
|
|
17
|
+
const prettify = process.env['CF_TELEMETRY_LOGS_PRETTIFY'];
|
|
18
|
+
switch (prettify) {
|
|
19
|
+
case 'single-line':
|
|
20
|
+
case 'multi-line':
|
|
21
|
+
return prettify;
|
|
22
|
+
case 'false':
|
|
23
|
+
return false;
|
|
24
|
+
default:
|
|
25
|
+
console.warn(`Unknown value for 'CF_TELEMETRY_LOGS_PRETTIFY': "${prettify}". Defaulting to false. Allowed values: ${types_1.Prettify.join('|')}.`);
|
|
26
|
+
return false;
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
exports.config = {
|
|
30
|
+
level: getLevel(),
|
|
31
|
+
prettify: getPrettify(),
|
|
32
|
+
sync: process.env['CF_TELEMETRY_LOGS_SYNC'] === 'true',
|
|
33
|
+
defaultInitiator: { type: 'system' },
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/logs/config.ts"],"names":[],"mappings":";;;AAAA,mCAAsD;AAEtD,MAAM,QAAQ,GAAG,GAAU,EAAE;IAC3B,MAAM,aAAa,GAAG,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,IAAI,MAAM,CAAC;IACvE,8DAA8D;IAC9D,MAAM,YAAY,GAAG,aAAK,CAAC,QAAQ,CAAC,aAAoB,CAAC,CAAC;IAC1D,IAAI,CAAC,YAAY,EAAE,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,iDAAiD,aAAa,4CAA4C,aAAK,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC3I,OAAO,MAAM,CAAC;IAChB,CAAC;IAAA,CAAC;IACF,OAAO,aAAsB,CAAC;AAChC,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,GAAa,EAAE;IACjC,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,4BAA4B,CAAC,CAAC;IAC3D,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,aAAa,CAAC;QACnB,KAAK,YAAY;YACf,OAAO,QAAQ,CAAC;QAClB,KAAK,OAAO;YACV,OAAO,KAAK,CAAC;QACf;YACE,OAAO,CAAC,IAAI,CAAC,oDAAoD,QAAQ,2CAA2C,gBAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC3I,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC,CAAC;AAEW,QAAA,MAAM,GAAe;IAChC,KAAK,EAAE,QAAQ,EAAE;IACjB,QAAQ,EAAE,WAAW,EAAE;IACvB,IAAI,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB,CAAC,KAAK,MAAM;IACtD,gBAAgB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;CAC5B,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { RequestHandler } from 'express';
|
|
2
|
+
import type { Level, Logger } from '../types';
|
|
3
|
+
/**
|
|
4
|
+
* Factory function to create an HTTP logger middleware for Express.
|
|
5
|
+
* This middleware logs incoming HTTP requests and their completion status.
|
|
6
|
+
* @param logger Logger instance.
|
|
7
|
+
* @param level Log level for HTTP requests logging. Default is "info".
|
|
8
|
+
* @returns Express middleware function.
|
|
9
|
+
*/
|
|
10
|
+
export declare const httpLoggerMiddlewareFactory: (logger: Logger, level?: Level) => RequestHandler;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.httpLoggerMiddlewareFactory = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Factory function to create an HTTP logger middleware for Express.
|
|
6
|
+
* This middleware logs incoming HTTP requests and their completion status.
|
|
7
|
+
* @param logger Logger instance.
|
|
8
|
+
* @param level Log level for HTTP requests logging. Default is "info".
|
|
9
|
+
* @returns Express middleware function.
|
|
10
|
+
*/
|
|
11
|
+
const httpLoggerMiddlewareFactory = (logger, level = 'info') => {
|
|
12
|
+
return function httpLoggerMiddleware({ method, path, ip }, response, next) {
|
|
13
|
+
logger[level]('Incoming HTTP request', {
|
|
14
|
+
method,
|
|
15
|
+
path,
|
|
16
|
+
ip,
|
|
17
|
+
});
|
|
18
|
+
response.on('close', () => {
|
|
19
|
+
logger[level]('HTTP request completed', {
|
|
20
|
+
method,
|
|
21
|
+
path,
|
|
22
|
+
ip,
|
|
23
|
+
status: response.statusCode,
|
|
24
|
+
});
|
|
25
|
+
});
|
|
26
|
+
next();
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
exports.httpLoggerMiddlewareFactory = httpLoggerMiddlewareFactory;
|
|
30
|
+
//# sourceMappingURL=http-logger-middleware.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http-logger-middleware.js","sourceRoot":"","sources":["../../../src/logs/express/http-logger-middleware.ts"],"names":[],"mappings":";;;AAGA;;;;;;GAMG;AACI,MAAM,2BAA2B,GAAG,CAAC,MAAc,EAAE,QAAe,MAAM,EAAkB,EAAE;IACnG,OAAO,SAAS,oBAAoB,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI;QACvE,MAAM,CAAC,KAAK,CAAC,CAAC,uBAAuB,EAAE;YACrC,MAAM;YACN,IAAI;YACJ,EAAE;SACH,CAAC,CAAC;QACH,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YACxB,MAAM,CAAC,KAAK,CAAC,CAAC,wBAAwB,EAAE;gBACtC,MAAM;gBACN,IAAI;gBACJ,EAAE;gBACF,MAAM,EAAE,QAAQ,CAAC,UAAU;aAC5B,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,IAAI,EAAE,CAAC;IACT,CAAC,CAAC;AACJ,CAAC,CAAC;AAjBW,QAAA,2BAA2B,+BAiBtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { httpLoggerMiddlewareFactory } from './http-logger-middleware';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.httpLoggerMiddlewareFactory = void 0;
|
|
4
|
+
var http_logger_middleware_1 = require("./http-logger-middleware");
|
|
5
|
+
Object.defineProperty(exports, "httpLoggerMiddlewareFactory", { enumerable: true, get: function () { return http_logger_middleware_1.httpLoggerMiddlewareFactory; } });
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/logs/express/index.ts"],"names":[],"mappings":";;;AAAA,mEAAuE;AAA9D,qIAAA,2BAA2B,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './public.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { httpLoggerMiddlewareFactory, } from './index';
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Public API (CommonJS)
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.httpLoggerMiddlewareFactory = void 0;
|
|
5
|
+
var index_1 = require("./index");
|
|
6
|
+
Object.defineProperty(exports, "httpLoggerMiddlewareFactory", { enumerable: true, get: function () { return index_1.httpLoggerMiddlewareFactory; } });
|
|
7
|
+
//# sourceMappingURL=public.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.js","sourceRoot":"","sources":["../../../src/logs/express/public.ts"],"names":[],"mappings":";AAAA,wBAAwB;;;AAExB,iCAEiB;AADf,oHAAA,2BAA2B,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.mjs","sourceRoot":"","sources":["../../../src/logs/express/public.mts"],"names":[],"mappings":"AAAA,mBAAmB;AAEnB,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/logs/index.ts"],"names":[],"mappings":";;;AAAA,mCAAkC;AAAzB,gGAAA,MAAM,OAAA;AACf,mDAAgD;AAAvC,8GAAA,YAAY,OAAA"}
|
|
@@ -15,16 +15,21 @@ class Logger {
|
|
|
15
15
|
this.#options = typeof options === 'string' ? { scope: options } : options;
|
|
16
16
|
this.#baseLogger = (0, pino_1.default)({
|
|
17
17
|
level: config_1.config.level,
|
|
18
|
-
|
|
18
|
+
/**
|
|
19
|
+
* Set to `undefined` to disable default pino metadata.
|
|
20
|
+
* Docs: https://github.com/pinojs/pino/blob/main/docs/api.md#base-object
|
|
21
|
+
*/
|
|
22
|
+
base: undefined,
|
|
19
23
|
formatters: {
|
|
20
24
|
level: label => ({ level: label }),
|
|
21
25
|
},
|
|
22
|
-
...config_1.config.
|
|
26
|
+
...config_1.config.prettify && {
|
|
27
|
+
name: this.#options.scope,
|
|
23
28
|
transport: {
|
|
24
29
|
target: 'pino-pretty',
|
|
25
30
|
options: {
|
|
26
31
|
colorize: true,
|
|
27
|
-
|
|
32
|
+
singleLine: config_1.config.prettify === 'single-line',
|
|
28
33
|
},
|
|
29
34
|
},
|
|
30
35
|
},
|
|
@@ -64,8 +69,25 @@ class Logger {
|
|
|
64
69
|
}
|
|
65
70
|
else {
|
|
66
71
|
body.msg = msgOrErr;
|
|
67
|
-
|
|
68
|
-
|
|
72
|
+
if (data && data instanceof Error) {
|
|
73
|
+
body.err = data;
|
|
74
|
+
}
|
|
75
|
+
else if (data && typeof data === 'object') {
|
|
76
|
+
body.data = { ...data }; // shallow clone to avoid mutation while deleting props
|
|
77
|
+
// @ts-expect-error: TS is unable to narrow type, while we know that `data` is an object
|
|
78
|
+
if ('err' in body.data) {
|
|
79
|
+
body.err = body.data.err;
|
|
80
|
+
delete body.data.err;
|
|
81
|
+
// @ts-expect-error: TS is unable to narrow type, while we know that `data` is an object
|
|
82
|
+
}
|
|
83
|
+
else if ('error' in body.data) {
|
|
84
|
+
body.err = body.data.error;
|
|
85
|
+
delete body.data.error;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
else {
|
|
89
|
+
body.data = data;
|
|
90
|
+
}
|
|
69
91
|
}
|
|
70
92
|
return this.#baseLogger[level](body);
|
|
71
93
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/logs/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"metadata-storage.js","sourceRoot":"","sources":["../../src/logs/metadata-storage.ts"],"names":[],"mappings":";;;AAAA,uDAAqD;AAGxC,QAAA,eAAe,GAAG,IAAI,oCAAiB,EAAe,CAAC"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.LoggerModule = exports.Logger = void 0;
|
|
4
|
+
var logger_1 = require("./logger");
|
|
5
|
+
Object.defineProperty(exports, "Logger", { enumerable: true, get: function () { return logger_1.Logger; } });
|
|
6
|
+
var logger_module_1 = require("./logger-module");
|
|
7
|
+
Object.defineProperty(exports, "LoggerModule", { enumerable: true, get: function () { return logger_module_1.LoggerModule; } });
|
|
8
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/logs/nest/index.ts"],"names":[],"mappings":";;;AAAA,mCAEkB;AADhB,gGAAA,MAAM,OAAA;AAER,iDAEyB;AADvB,6GAAA,YAAY,OAAA"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
3
|
+
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
4
|
+
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
5
|
+
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
6
|
+
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
7
|
+
var _, done = false;
|
|
8
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
9
|
+
var context = {};
|
|
10
|
+
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
11
|
+
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
12
|
+
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
13
|
+
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
14
|
+
if (kind === "accessor") {
|
|
15
|
+
if (result === void 0) continue;
|
|
16
|
+
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
17
|
+
if (_ = accept(result.get)) descriptor.get = _;
|
|
18
|
+
if (_ = accept(result.set)) descriptor.set = _;
|
|
19
|
+
if (_ = accept(result.init)) initializers.unshift(_);
|
|
20
|
+
}
|
|
21
|
+
else if (_ = accept(result)) {
|
|
22
|
+
if (kind === "field") initializers.unshift(_);
|
|
23
|
+
else descriptor[key] = _;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
27
|
+
done = true;
|
|
28
|
+
};
|
|
29
|
+
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
30
|
+
var useValue = arguments.length > 2;
|
|
31
|
+
for (var i = 0; i < initializers.length; i++) {
|
|
32
|
+
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
33
|
+
}
|
|
34
|
+
return useValue ? value : void 0;
|
|
35
|
+
};
|
|
36
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
exports.LoggerModule = void 0;
|
|
38
|
+
const common_1 = require("@nestjs/common");
|
|
39
|
+
const express_1 = require("../express");
|
|
40
|
+
const logger_1 = require("./logger");
|
|
41
|
+
// TODO: add options to configure the logger
|
|
42
|
+
let LoggerModule = (() => {
|
|
43
|
+
let _classDecorators = [(0, common_1.Global)(), (0, common_1.Module)({
|
|
44
|
+
providers: [logger_1.Logger],
|
|
45
|
+
exports: [logger_1.Logger],
|
|
46
|
+
})];
|
|
47
|
+
let _classDescriptor;
|
|
48
|
+
let _classExtraInitializers = [];
|
|
49
|
+
let _classThis;
|
|
50
|
+
var LoggerModule = class {
|
|
51
|
+
static { _classThis = this; }
|
|
52
|
+
static {
|
|
53
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(null) : void 0;
|
|
54
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
55
|
+
LoggerModule = _classThis = _classDescriptor.value;
|
|
56
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
57
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
58
|
+
}
|
|
59
|
+
configure(consumer) {
|
|
60
|
+
const middleware = (0, express_1.httpLoggerMiddlewareFactory)(new logger_1.Logger('http'), 'info');
|
|
61
|
+
consumer
|
|
62
|
+
.apply(middleware)
|
|
63
|
+
.forRoutes({ path: '*', method: common_1.RequestMethod.ALL });
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
return LoggerModule = _classThis;
|
|
67
|
+
})();
|
|
68
|
+
exports.LoggerModule = LoggerModule;
|
|
69
|
+
//# sourceMappingURL=logger-module.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger-module.js","sourceRoot":"","sources":["../../../src/logs/nest/logger-module.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAA+F;AAC/F,wCAAyD;AACzD,qCAAkC;AAElC,4CAA4C;IAW/B,YAAY;4BATxB,IAAA,eAAM,GAAE,EACR,IAAA,eAAM,EAAC;YACN,SAAS,EAAE,CAAC,eAAM,CAAC;YACnB,OAAO,EAAE,CAAC,eAAM,CAAC;SAClB,CAAC;;;;;;;;YAKF,6KAOC;;;YAPY,uDAAY;;QACvB,SAAS,CAAC,QAA4B;YACpC,MAAM,UAAU,GAAG,IAAA,qCAA2B,EAAC,IAAI,eAAM,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC,CAAC;YAC3E,QAAQ;iBACL,KAAK,CAAC,UAAU,CAAC;iBACjB,SAAS,CAAC,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,sBAAa,CAAC,GAAG,EAAE,CAAC,CAAC;QACzD,CAAC;;;;AANU,oCAAY"}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __esDecorate = (this && this.__esDecorate) || function (ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {
|
|
3
|
+
function accept(f) { if (f !== void 0 && typeof f !== "function") throw new TypeError("Function expected"); return f; }
|
|
4
|
+
var kind = contextIn.kind, key = kind === "getter" ? "get" : kind === "setter" ? "set" : "value";
|
|
5
|
+
var target = !descriptorIn && ctor ? contextIn["static"] ? ctor : ctor.prototype : null;
|
|
6
|
+
var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});
|
|
7
|
+
var _, done = false;
|
|
8
|
+
for (var i = decorators.length - 1; i >= 0; i--) {
|
|
9
|
+
var context = {};
|
|
10
|
+
for (var p in contextIn) context[p] = p === "access" ? {} : contextIn[p];
|
|
11
|
+
for (var p in contextIn.access) context.access[p] = contextIn.access[p];
|
|
12
|
+
context.addInitializer = function (f) { if (done) throw new TypeError("Cannot add initializers after decoration has completed"); extraInitializers.push(accept(f || null)); };
|
|
13
|
+
var result = (0, decorators[i])(kind === "accessor" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);
|
|
14
|
+
if (kind === "accessor") {
|
|
15
|
+
if (result === void 0) continue;
|
|
16
|
+
if (result === null || typeof result !== "object") throw new TypeError("Object expected");
|
|
17
|
+
if (_ = accept(result.get)) descriptor.get = _;
|
|
18
|
+
if (_ = accept(result.set)) descriptor.set = _;
|
|
19
|
+
if (_ = accept(result.init)) initializers.unshift(_);
|
|
20
|
+
}
|
|
21
|
+
else if (_ = accept(result)) {
|
|
22
|
+
if (kind === "field") initializers.unshift(_);
|
|
23
|
+
else descriptor[key] = _;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
if (target) Object.defineProperty(target, contextIn.name, descriptor);
|
|
27
|
+
done = true;
|
|
28
|
+
};
|
|
29
|
+
var __runInitializers = (this && this.__runInitializers) || function (thisArg, initializers, value) {
|
|
30
|
+
var useValue = arguments.length > 2;
|
|
31
|
+
for (var i = 0; i < initializers.length; i++) {
|
|
32
|
+
value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);
|
|
33
|
+
}
|
|
34
|
+
return useValue ? value : void 0;
|
|
35
|
+
};
|
|
36
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
37
|
+
exports.Logger = void 0;
|
|
38
|
+
const common_1 = require("@nestjs/common");
|
|
39
|
+
const logger_1 = require("../logger");
|
|
40
|
+
let Logger = (() => {
|
|
41
|
+
let _classDecorators = [(0, common_1.Injectable)({ scope: common_1.Scope.TRANSIENT })];
|
|
42
|
+
let _classDescriptor;
|
|
43
|
+
let _classExtraInitializers = [];
|
|
44
|
+
let _classThis;
|
|
45
|
+
let _classSuper = logger_1.Logger;
|
|
46
|
+
var Logger = class extends _classSuper {
|
|
47
|
+
static { _classThis = this; }
|
|
48
|
+
static {
|
|
49
|
+
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
50
|
+
__esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
|
|
51
|
+
Logger = _classThis = _classDescriptor.value;
|
|
52
|
+
if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
|
|
53
|
+
__runInitializers(_classThis, _classExtraInitializers);
|
|
54
|
+
}
|
|
55
|
+
constructor(...params) {
|
|
56
|
+
let options = params?.at(0);
|
|
57
|
+
if (typeof options === 'string') {
|
|
58
|
+
options = { scope: options, useLastArgAsScope: true };
|
|
59
|
+
}
|
|
60
|
+
else {
|
|
61
|
+
options = { ...options, useLastArgAsScope: true };
|
|
62
|
+
}
|
|
63
|
+
super(options);
|
|
64
|
+
}
|
|
65
|
+
};
|
|
66
|
+
return Logger = _classThis;
|
|
67
|
+
})();
|
|
68
|
+
exports.Logger = Logger;
|
|
69
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/logs/nest/logger.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,2CAAmD;AACnD,sCAAiD;IAGpC,MAAM;4BADlB,IAAA,mBAAU,EAAC,EAAE,KAAK,EAAE,cAAK,CAAC,SAAS,EAAE,CAAC;;;;sBACX,eAAU;sBAAlB,SAAQ,WAAU;;;;YAAtC,6KAUC;;;YAVY,uDAAM;;QACjB,YAAY,GAAG,MAAgD;YAC7D,IAAI,OAAO,GAAG,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;YAC5B,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;gBAChC,OAAO,GAAG,EAAE,KAAK,EAAE,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;YACxD,CAAC;iBAAM,CAAC;gBACN,OAAO,GAAG,EAAE,GAAG,OAAO,EAAE,iBAAiB,EAAE,IAAI,EAAE,CAAC;YACpD,CAAC;YACD,KAAK,CAAC,OAAO,CAAC,CAAC;QACjB,CAAC;;;;AATU,wBAAM"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './public.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Logger, LoggerModule, } from './index';
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
// Public API (CommonJS)
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.LoggerModule = exports.Logger = void 0;
|
|
5
|
+
var index_1 = require("./index");
|
|
6
|
+
Object.defineProperty(exports, "Logger", { enumerable: true, get: function () { return index_1.Logger; } });
|
|
7
|
+
Object.defineProperty(exports, "LoggerModule", { enumerable: true, get: function () { return index_1.LoggerModule; } });
|
|
8
|
+
//# sourceMappingURL=public.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.js","sourceRoot":"","sources":["../../../src/logs/nest/public.ts"],"names":[],"mappings":";AAAA,wBAAwB;;;AAExB,iCAGiB;AAFf,+FAAA,MAAM,OAAA;AACN,qGAAA,YAAY,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.mjs","sourceRoot":"","sources":["../../../src/logs/nest/public.mts"],"names":[],"mappings":"AAAA,mBAAmB;AAEnB,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './public.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.js","sourceRoot":"","sources":["../../src/logs/public.ts"],"names":[],"mappings":";AAAA,wBAAwB;;;AAExB,iCAGiB;AAFf,+FAAA,MAAM,OAAA;AACN,qGAAA,YAAY,OAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"public.mjs","sourceRoot":"","sources":["../../src/logs/public.mts"],"names":[],"mappings":"AAAA,mBAAmB;AAEnB,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run-in-context.js","sourceRoot":"","sources":["../../src/logs/run-in-context.ts"],"names":[],"mappings":";;;AAAA,yDAAqD;AAGrD;;;;;;GAMG;AACI,MAAM,YAAY,GAAG,CAC1B,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAe,EAC3C,QAA+B,EAC/B,GAAG,IAAW,EACX,EAAE;IACL,OAAO,kCAAe,CAAC,GAAG,CACxB;QACE,GAAG,SAAS,IAAI,EAAE,SAAS,EAAE,EAAE,kEAAkE;QACjG,GAAG,kCAAe,CAAC,QAAQ,EAAE;QAC7B,GAAG,MAAM,IAAI,EAAE,MAAM,EAAE;QACvB,GAAG,OAAO,IAAI,EAAE,OAAO,EAAE;KAC1B,EACD,QAAQ,EACR,GAAG,IAAI,CACR,CAAC;AACJ,CAAC,CAAC;AAfW,QAAA,YAAY,gBAevB"}
|
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
import type { LoggerService } from '@nestjs/common';
|
|
2
2
|
export declare const Level: readonly ["debug", "info", "warn", "error"];
|
|
3
3
|
export type Level = (typeof Level[number]);
|
|
4
|
+
export declare const Prettify: readonly ["single-line", "multi-line", false];
|
|
5
|
+
export type Prettify = (typeof Prettify[number]);
|
|
6
|
+
export interface LogsConfig {
|
|
7
|
+
level: Level;
|
|
8
|
+
prettify: Prettify;
|
|
9
|
+
sync: boolean;
|
|
10
|
+
defaultInitiator: LogMetadata['initiator'];
|
|
11
|
+
}
|
|
4
12
|
/**
|
|
5
13
|
* Scope name to be used for all log lines.
|
|
6
14
|
*/
|
|
@@ -75,7 +83,7 @@ export interface LogMetadata {
|
|
|
75
83
|
export interface LogBody {
|
|
76
84
|
msg?: LogMessage;
|
|
77
85
|
data?: LogData;
|
|
78
|
-
err?:
|
|
86
|
+
err?: unknown;
|
|
79
87
|
cf: LogMetadata;
|
|
80
88
|
scope_name?: Scope;
|
|
81
89
|
}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Level = void 0;
|
|
3
|
+
exports.Prettify = exports.Level = void 0;
|
|
4
4
|
exports.Level = ['debug', 'info', 'warn', 'error'];
|
|
5
|
+
exports.Prettify = ['single-line', 'multi-line', false];
|
|
6
|
+
;
|
|
5
7
|
;
|
|
6
8
|
;
|
|
7
9
|
;
|