nightingale-logger 15.0.0 → 17.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/CHANGELOG.md +24 -0
- package/README.md +12 -12
- package/dist/definitions/index.d.ts +3 -3
- package/dist/definitions/index.d.ts.map +1 -1
- package/dist/definitions/inspectValue.d.ts +2 -0
- package/dist/definitions/inspectValue.d.ts.map +1 -0
- package/dist/definitions/inspectValue.target-node.d.ts +2 -0
- package/dist/definitions/inspectValue.target-node.d.ts.map +1 -0
- package/dist/index-browser.es.js +71 -140
- package/dist/index-browser.es.js.map +1 -1
- package/dist/{index-node18.mjs → index-node20.mjs} +73 -157
- package/dist/index-node20.mjs.map +1 -0
- package/package.json +32 -29
- package/src/index.test.ts +14 -14
- package/src/index.ts +43 -57
- package/src/inspectValue.target-node.ts +6 -0
- package/src/inspectValue.ts +3 -0
- package/dist/index-node18.mjs.map +0 -1
- package/src/.eslintrc.json +0 -30
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,30 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [17.0.0](https://github.com/christophehurpeau/nightingale/compare/v16.2.0...v17.0.0) (2025-10-20)
|
|
7
|
+
|
|
8
|
+
### Features
|
|
9
|
+
|
|
10
|
+
* add export for react-native ([4098304](https://github.com/christophehurpeau/nightingale/commit/4098304ff9b6665930b7316fe05e0baf0b2e3fe5))
|
|
11
|
+
|
|
12
|
+
Version bump for dependency: nightingale-levels
|
|
13
|
+
Version bump for dependency: nightingale-types
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
## [16.0.0](https://github.com/christophehurpeau/nightingale/compare/v15.0.0...v16.0.0) (2025-03-30)
|
|
17
|
+
|
|
18
|
+
### ⚠ BREAKING CHANGES
|
|
19
|
+
|
|
20
|
+
* drop node 18
|
|
21
|
+
|
|
22
|
+
### Features
|
|
23
|
+
|
|
24
|
+
* drop node 18 ([1b11a55](https://github.com/christophehurpeau/nightingale/commit/1b11a55dd24c9435be50519a748316079f554414))
|
|
25
|
+
|
|
26
|
+
Version bump for dependency: nightingale-levels
|
|
27
|
+
Version bump for dependency: nightingale-types
|
|
28
|
+
|
|
29
|
+
|
|
6
30
|
## [15.0.0](https://github.com/christophehurpeau/nightingale/compare/v14.2.1...v15.0.0) (2023-12-25)
|
|
7
31
|
|
|
8
32
|
|
package/README.md
CHANGED
|
@@ -1,17 +1,17 @@
|
|
|
1
|
-
<
|
|
1
|
+
<h1 align="center">
|
|
2
2
|
nightingale-logger
|
|
3
|
-
</
|
|
3
|
+
</h1>
|
|
4
4
|
|
|
5
5
|
<p align="center">
|
|
6
6
|
Logger for browser and node
|
|
7
7
|
</p>
|
|
8
8
|
|
|
9
9
|
<p align="center">
|
|
10
|
-
<a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/v/nightingale-logger.svg?style=flat-square"></a>
|
|
11
|
-
<a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/dw/nightingale-logger.svg?style=flat-square"></a>
|
|
12
|
-
<a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/node/v/nightingale-logger.svg?style=flat-square"></a>
|
|
13
|
-
<a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/types/nightingale-logger.svg?style=flat-square"></a>
|
|
14
|
-
<a href="https://codecov.io/gh/christophehurpeau/nightingale"><img src="https://img.shields.io/codecov/c/github/christophehurpeau/nightingale/
|
|
10
|
+
<a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/v/nightingale-logger.svg?style=flat-square" alt="npm version"></a>
|
|
11
|
+
<a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/dw/nightingale-logger.svg?style=flat-square" alt="npm downloads"></a>
|
|
12
|
+
<a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/node/v/nightingale-logger.svg?style=flat-square" alt="node version"></a>
|
|
13
|
+
<a href="https://npmjs.org/package/nightingale-logger"><img src="https://img.shields.io/npm/types/nightingale-logger.svg?style=flat-square" alt="types"></a>
|
|
14
|
+
<a href="https://codecov.io/gh/christophehurpeau/nightingale"><img src="https://img.shields.io/codecov/c/github/christophehurpeau/nightingale/main.svg?style=flat-square"></a>
|
|
15
15
|
</p>
|
|
16
16
|
|
|
17
17
|
## nightingale
|
|
@@ -33,11 +33,11 @@ npm install --save nightingale-logger
|
|
|
33
33
|
## Usage
|
|
34
34
|
|
|
35
35
|
```js
|
|
36
|
-
import Logger from
|
|
36
|
+
import Logger from "nightingale-logger";
|
|
37
37
|
|
|
38
|
-
const logger = new Logger(
|
|
38
|
+
const logger = new Logger("mylib");
|
|
39
39
|
|
|
40
|
-
logger.info(
|
|
41
|
-
logger.warn(
|
|
42
|
-
logger.success(
|
|
40
|
+
logger.info("This is a log");
|
|
41
|
+
logger.warn("This is a warning !");
|
|
42
|
+
logger.success("It works !");
|
|
43
43
|
```
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Level } from
|
|
2
|
-
import type {
|
|
3
|
-
export { Level } from
|
|
1
|
+
import { Level } from "nightingale-levels";
|
|
2
|
+
import type { Handler, LogRecord, Metadata, MetadataStyles, Processor, Styles } from "nightingale-types";
|
|
3
|
+
export { Level } from "nightingale-levels";
|
|
4
4
|
export interface Options<T extends Metadata> {
|
|
5
5
|
symbol?: string;
|
|
6
6
|
metadataStyles?: MetadataStyles<T>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspectValue.d.ts","sourceRoot":"","sources":["../../src/inspectValue.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,KAAG,MAE7C,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inspectValue.target-node.d.ts","sourceRoot":"","sources":["../../src/inspectValue.target-node.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,YAAY,GAAI,OAAO,OAAO,KAAG,MAGX,CAAC"}
|
package/dist/index-browser.es.js
CHANGED
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
import { Level } from 'nightingale-levels';
|
|
2
2
|
export { Level } from 'nightingale-levels';
|
|
3
3
|
|
|
4
|
-
|
|
4
|
+
const inspectValue = (value) => {
|
|
5
|
+
throw new Error("Not supported for the browser. Prefer `debugger;`");
|
|
6
|
+
};
|
|
5
7
|
|
|
6
|
-
const globalOrWindow = typeof
|
|
8
|
+
const globalOrWindow = typeof globalThis !== "undefined" ? globalThis : globalThis;
|
|
7
9
|
if (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER) {
|
|
8
10
|
globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER = () => ({
|
|
9
11
|
handlers: [],
|
|
@@ -12,27 +14,24 @@ if (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER) {
|
|
|
12
14
|
}
|
|
13
15
|
if (!globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD) {
|
|
14
16
|
globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD = (key, level) => {
|
|
15
|
-
const {
|
|
16
|
-
handlers,
|
|
17
|
-
processors
|
|
18
|
-
} = globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);
|
|
17
|
+
const { handlers, processors } = globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(key);
|
|
19
18
|
return {
|
|
20
|
-
handlers: handlers.filter(
|
|
19
|
+
handlers: handlers.filter(
|
|
20
|
+
(handler) => level >= handler.minLevel && (!handler.isHandling || handler.isHandling(level, key))
|
|
21
|
+
),
|
|
21
22
|
processors
|
|
22
23
|
};
|
|
23
24
|
};
|
|
24
25
|
}
|
|
25
26
|
function getConfigForLoggerRecord(key, recordLevel) {
|
|
26
|
-
return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD(
|
|
27
|
+
return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER_RECORD(
|
|
28
|
+
key,
|
|
29
|
+
recordLevel
|
|
30
|
+
);
|
|
27
31
|
}
|
|
28
32
|
function isError(messageOrError) {
|
|
29
33
|
return messageOrError instanceof Error;
|
|
30
34
|
}
|
|
31
|
-
|
|
32
|
-
/**
|
|
33
|
-
* Interface that allows you to log records.
|
|
34
|
-
* This records are treated by handlers
|
|
35
|
-
*/
|
|
36
35
|
class Logger {
|
|
37
36
|
/**
|
|
38
37
|
* Create a new Logger
|
|
@@ -43,28 +42,26 @@ class Logger {
|
|
|
43
42
|
constructor(key, displayName) {
|
|
44
43
|
this.key = key;
|
|
45
44
|
this.displayName = displayName;
|
|
46
|
-
if (process.env.NODE_ENV !==
|
|
47
|
-
throw new Error(
|
|
45
|
+
if (process.env.NODE_ENV !== "production" && key.includes(".")) {
|
|
46
|
+
throw new Error(
|
|
47
|
+
`nightingale: \`.\` in key is no longer supported, use \`:\` instead (key: ${key})`
|
|
48
|
+
);
|
|
48
49
|
}
|
|
49
50
|
}
|
|
50
|
-
|
|
51
51
|
/** @private */
|
|
52
52
|
getHandlersAndProcessors(recordLevel) {
|
|
53
53
|
return getConfigForLoggerRecord(this.key, recordLevel);
|
|
54
54
|
}
|
|
55
|
-
|
|
56
55
|
/** @private */
|
|
57
56
|
getConfig() {
|
|
58
57
|
return globalOrWindow.__NIGHTINGALE_GET_CONFIG_FOR_LOGGER(this.key);
|
|
59
58
|
}
|
|
60
|
-
|
|
61
59
|
/**
|
|
62
60
|
* Create a child logger
|
|
63
61
|
*/
|
|
64
62
|
child(childSuffixKey, childDisplayName) {
|
|
65
63
|
return new Logger(`${this.key}:${childSuffixKey}`, childDisplayName);
|
|
66
64
|
}
|
|
67
|
-
|
|
68
65
|
/**
|
|
69
66
|
* Create a new Logger with the same key a this attached context
|
|
70
67
|
*
|
|
@@ -87,14 +84,12 @@ class Logger {
|
|
|
87
84
|
logger.setContext(context);
|
|
88
85
|
return logger;
|
|
89
86
|
}
|
|
90
|
-
|
|
91
87
|
/**
|
|
92
88
|
* Get the context of this logger
|
|
93
89
|
*/
|
|
94
90
|
getContextObject() {
|
|
95
91
|
return this.contextObject;
|
|
96
92
|
}
|
|
97
|
-
|
|
98
93
|
/**
|
|
99
94
|
* Set the context of this logger
|
|
100
95
|
*
|
|
@@ -103,31 +98,29 @@ class Logger {
|
|
|
103
98
|
setContext(context) {
|
|
104
99
|
this.contextObject = context;
|
|
105
100
|
}
|
|
106
|
-
|
|
107
101
|
/**
|
|
108
102
|
* Extends existing context of this logger
|
|
109
103
|
*/
|
|
110
104
|
extendsContext(extendedContext) {
|
|
111
|
-
if (this.contextObject ===
|
|
112
|
-
throw new Error(
|
|
105
|
+
if (this.contextObject === void 0) {
|
|
106
|
+
throw new Error(
|
|
107
|
+
"Cannot extends context that does not exists. Use setContext(context) first."
|
|
108
|
+
);
|
|
113
109
|
}
|
|
114
110
|
Object.assign(this.contextObject, extendedContext);
|
|
115
111
|
}
|
|
116
|
-
|
|
117
112
|
/**
|
|
118
113
|
* Handle a record
|
|
119
114
|
*
|
|
120
115
|
* Use this only if you know what you are doing.
|
|
121
116
|
*/
|
|
122
117
|
addRecord(record) {
|
|
123
|
-
const {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
} = this.getHandlersAndProcessors(record.level);
|
|
118
|
+
const { handlers, processors } = this.getHandlersAndProcessors(
|
|
119
|
+
record.level
|
|
120
|
+
);
|
|
127
121
|
if (handlers.length === 0) {
|
|
128
122
|
if (record.level > Level.ERROR) {
|
|
129
|
-
|
|
130
|
-
console.log('[nightingale] no logger for > error level.', {
|
|
123
|
+
console.log("[nightingale] no logger for > error level.", {
|
|
131
124
|
key: record.key,
|
|
132
125
|
message: record.message
|
|
133
126
|
});
|
|
@@ -135,24 +128,20 @@ class Logger {
|
|
|
135
128
|
return;
|
|
136
129
|
}
|
|
137
130
|
if (processors) {
|
|
138
|
-
processors.forEach(
|
|
139
|
-
|
|
131
|
+
processors.forEach((process2) => {
|
|
132
|
+
process2(record, record.context);
|
|
140
133
|
});
|
|
141
134
|
}
|
|
142
|
-
handlers.some(handler => handler.handle(record) === false);
|
|
135
|
+
handlers.some((handler) => handler.handle(record) === false);
|
|
143
136
|
}
|
|
144
|
-
|
|
145
137
|
/**
|
|
146
138
|
* Log a message
|
|
147
139
|
*/
|
|
148
140
|
log(messageOrError, metadata, level = Level.INFO, options) {
|
|
149
141
|
const isMessageError = isError(messageOrError);
|
|
150
142
|
const message = isMessageError ? `${messageOrError.name}: ${messageOrError.message}` : messageOrError;
|
|
151
|
-
const extendedMetadata = isMessageError && !(metadata && Object.
|
|
152
|
-
|
|
153
|
-
error: messageOrError
|
|
154
|
-
} : metadata;
|
|
155
|
-
const context = extendedMetadata == null ? void 0 : extendedMetadata.context;
|
|
143
|
+
const extendedMetadata = isMessageError && !(metadata && Object.hasOwn(metadata, "error")) ? { ...metadata, error: messageOrError } : metadata;
|
|
144
|
+
const context = extendedMetadata?.context;
|
|
156
145
|
if (extendedMetadata) {
|
|
157
146
|
delete extendedMetadata.context;
|
|
158
147
|
}
|
|
@@ -160,7 +149,7 @@ class Logger {
|
|
|
160
149
|
level,
|
|
161
150
|
key: this.key,
|
|
162
151
|
displayName: this.displayName,
|
|
163
|
-
datetime: new Date(),
|
|
152
|
+
datetime: /* @__PURE__ */ new Date(),
|
|
164
153
|
message,
|
|
165
154
|
context: context || this.contextObject,
|
|
166
155
|
metadata: extendedMetadata,
|
|
@@ -169,52 +158,36 @@ class Logger {
|
|
|
169
158
|
};
|
|
170
159
|
this.addRecord(record);
|
|
171
160
|
}
|
|
172
|
-
|
|
173
161
|
/**
|
|
174
162
|
* Log a trace message
|
|
175
163
|
*/
|
|
176
164
|
trace(messageOrError, metadata, metadataStyles) {
|
|
177
|
-
this.log(messageOrError, metadata, Level.TRACE, {
|
|
178
|
-
metadataStyles
|
|
179
|
-
});
|
|
165
|
+
this.log(messageOrError, metadata, Level.TRACE, { metadataStyles });
|
|
180
166
|
}
|
|
181
|
-
|
|
182
167
|
/**
|
|
183
168
|
* Log a debug message
|
|
184
169
|
*/
|
|
185
170
|
debug(messageOrError, metadata, metadataStyles) {
|
|
186
|
-
this.log(messageOrError, metadata, Level.DEBUG, {
|
|
187
|
-
metadataStyles
|
|
188
|
-
});
|
|
171
|
+
this.log(messageOrError, metadata, Level.DEBUG, { metadataStyles });
|
|
189
172
|
}
|
|
190
|
-
|
|
191
173
|
/**
|
|
192
174
|
* Notice an info message
|
|
193
175
|
*/
|
|
194
176
|
notice(messageOrError, metadata, metadataStyles) {
|
|
195
|
-
this.log(messageOrError, metadata, Level.NOTICE, {
|
|
196
|
-
metadataStyles
|
|
197
|
-
});
|
|
177
|
+
this.log(messageOrError, metadata, Level.NOTICE, { metadataStyles });
|
|
198
178
|
}
|
|
199
|
-
|
|
200
179
|
/**
|
|
201
180
|
* Log an info message
|
|
202
181
|
*/
|
|
203
182
|
info(messageOrError, metadata, metadataStyles) {
|
|
204
|
-
this.log(messageOrError, metadata, Level.INFO, {
|
|
205
|
-
metadataStyles
|
|
206
|
-
});
|
|
183
|
+
this.log(messageOrError, metadata, Level.INFO, { metadataStyles });
|
|
207
184
|
}
|
|
208
|
-
|
|
209
185
|
/**
|
|
210
186
|
* Log a warn message
|
|
211
187
|
*/
|
|
212
188
|
warn(messageOrError, metadata, metadataStyles) {
|
|
213
|
-
this.log(messageOrError, metadata, Level.WARN, {
|
|
214
|
-
metadataStyles
|
|
215
|
-
});
|
|
189
|
+
this.log(messageOrError, metadata, Level.WARN, { metadataStyles });
|
|
216
190
|
}
|
|
217
|
-
|
|
218
191
|
/**
|
|
219
192
|
* Log an error message
|
|
220
193
|
*
|
|
@@ -229,20 +202,14 @@ class Logger {
|
|
|
229
202
|
* ```
|
|
230
203
|
*/
|
|
231
204
|
error(messageOrError, metadata, metadataStyles) {
|
|
232
|
-
this.log(messageOrError, metadata, Level.ERROR, {
|
|
233
|
-
metadataStyles
|
|
234
|
-
});
|
|
205
|
+
this.log(messageOrError, metadata, Level.ERROR, { metadataStyles });
|
|
235
206
|
}
|
|
236
|
-
|
|
237
207
|
/**
|
|
238
208
|
* Log an critical message
|
|
239
209
|
*/
|
|
240
210
|
critical(messageOrError, metadata, metadataStyles) {
|
|
241
|
-
this.log(messageOrError, metadata, Level.CRITICAL, {
|
|
242
|
-
metadataStyles
|
|
243
|
-
});
|
|
211
|
+
this.log(messageOrError, metadata, Level.CRITICAL, { metadataStyles });
|
|
244
212
|
}
|
|
245
|
-
|
|
246
213
|
/**
|
|
247
214
|
* Log a fatal message
|
|
248
215
|
*
|
|
@@ -257,107 +224,98 @@ class Logger {
|
|
|
257
224
|
* }
|
|
258
225
|
*/
|
|
259
226
|
fatal(messageOrError, metadata, metadataStyles) {
|
|
260
|
-
this.log(messageOrError, metadata, Level.FATAL, {
|
|
261
|
-
metadataStyles
|
|
262
|
-
});
|
|
227
|
+
this.log(messageOrError, metadata, Level.FATAL, { metadataStyles });
|
|
263
228
|
}
|
|
264
|
-
|
|
265
229
|
/**
|
|
266
230
|
* Log an alert message
|
|
267
231
|
*/
|
|
268
232
|
alert(messageOrError, metadata, metadataStyles) {
|
|
269
|
-
this.log(messageOrError, metadata, Level.ALERT, {
|
|
270
|
-
metadataStyles
|
|
271
|
-
});
|
|
233
|
+
this.log(messageOrError, metadata, Level.ALERT, { metadataStyles });
|
|
272
234
|
}
|
|
273
|
-
|
|
274
235
|
/**
|
|
275
236
|
* Log an inspected value
|
|
276
237
|
*/
|
|
277
|
-
inspectValue() {
|
|
278
|
-
|
|
238
|
+
inspectValue(value, metadata, metadataStyles) {
|
|
239
|
+
const inspectedValue = inspectValue();
|
|
240
|
+
this.log(inspectedValue, metadata, Level.DEBUG, {
|
|
241
|
+
metadataStyles,
|
|
242
|
+
styles: ["gray"]
|
|
243
|
+
});
|
|
279
244
|
}
|
|
280
|
-
|
|
281
245
|
/**
|
|
282
246
|
* Log a debugged var
|
|
283
247
|
*/
|
|
284
|
-
inspectVar() {
|
|
285
|
-
|
|
248
|
+
inspectVar(varName, varValue, metadata, metadataStyles) {
|
|
249
|
+
const inspectedValue = inspectValue();
|
|
250
|
+
this.log(`${varName} = ${inspectedValue}`, metadata, Level.DEBUG, {
|
|
251
|
+
metadataStyles,
|
|
252
|
+
styles: ["cyan"]
|
|
253
|
+
});
|
|
286
254
|
}
|
|
287
|
-
|
|
288
255
|
/**
|
|
289
256
|
* Alias for infoSuccess
|
|
290
257
|
*/
|
|
291
258
|
success(message, metadata, metadataStyles) {
|
|
292
259
|
this.infoSuccess(message, metadata, metadataStyles);
|
|
293
260
|
}
|
|
294
|
-
|
|
295
261
|
/**
|
|
296
262
|
* Log an info success message
|
|
297
263
|
*/
|
|
298
264
|
infoSuccess(message, metadata, metadataStyles) {
|
|
299
265
|
this.log(message, metadata, Level.INFO, {
|
|
300
266
|
metadataStyles,
|
|
301
|
-
symbol:
|
|
302
|
-
styles: [
|
|
267
|
+
symbol: "\u2714",
|
|
268
|
+
styles: ["green", "bold"]
|
|
303
269
|
});
|
|
304
270
|
}
|
|
305
|
-
|
|
306
271
|
/**
|
|
307
272
|
* Log an debug success message
|
|
308
273
|
*/
|
|
309
274
|
debugSuccess(message, metadata, metadataStyles) {
|
|
310
275
|
this.log(message, metadata, Level.DEBUG, {
|
|
311
276
|
metadataStyles,
|
|
312
|
-
symbol:
|
|
313
|
-
styles: [
|
|
277
|
+
symbol: "\u2714",
|
|
278
|
+
styles: ["green"]
|
|
314
279
|
});
|
|
315
280
|
}
|
|
316
|
-
|
|
317
281
|
/**
|
|
318
282
|
* Alias for infoFail
|
|
319
283
|
*/
|
|
320
284
|
fail(messageOrError, metadata, metadataStyles) {
|
|
321
285
|
this.infoFail(messageOrError, metadata, metadataStyles);
|
|
322
286
|
}
|
|
323
|
-
|
|
324
287
|
/**
|
|
325
288
|
* Log an info fail message
|
|
326
289
|
*/
|
|
327
290
|
infoFail(messageOrError, metadata, metadataStyles) {
|
|
328
291
|
this.log(messageOrError, metadata, Level.INFO, {
|
|
329
292
|
metadataStyles,
|
|
330
|
-
symbol:
|
|
331
|
-
styles: [
|
|
293
|
+
symbol: "\u2716",
|
|
294
|
+
styles: ["red", "bold"]
|
|
332
295
|
});
|
|
333
296
|
}
|
|
334
|
-
|
|
335
297
|
/**
|
|
336
298
|
* Log an debug fail message
|
|
337
299
|
*/
|
|
338
300
|
debugFail(messageOrError, metadata, metadataStyles) {
|
|
339
301
|
this.log(messageOrError, metadata, Level.DEBUG, {
|
|
340
302
|
metadataStyles,
|
|
341
|
-
symbol:
|
|
342
|
-
styles: [
|
|
303
|
+
symbol: "\u2716",
|
|
304
|
+
styles: ["red"]
|
|
343
305
|
});
|
|
344
306
|
}
|
|
345
|
-
|
|
346
307
|
/**
|
|
347
308
|
* @returns {number} time to pass to timeEnd
|
|
348
309
|
*/
|
|
349
310
|
time(message, metadata, metadataStyles, level = Level.DEBUG) {
|
|
350
311
|
if (message) {
|
|
351
|
-
this.log(message, metadata, level, {
|
|
352
|
-
metadataStyles
|
|
353
|
-
});
|
|
312
|
+
this.log(message, metadata, level, { metadataStyles });
|
|
354
313
|
}
|
|
355
314
|
return Date.now();
|
|
356
315
|
}
|
|
357
316
|
infoTime(message, metadata, metadataStyles) {
|
|
358
317
|
return this.time(message, metadata, metadataStyles, Level.INFO);
|
|
359
318
|
}
|
|
360
|
-
|
|
361
319
|
/**
|
|
362
320
|
* Finds difference between when this method
|
|
363
321
|
* was called and when the respective time method
|
|
@@ -368,40 +326,35 @@ class Logger {
|
|
|
368
326
|
const now = Date.now();
|
|
369
327
|
const diffTime = now - startTime;
|
|
370
328
|
let readableTime;
|
|
371
|
-
if (diffTime <
|
|
329
|
+
if (diffTime < 1e3) {
|
|
372
330
|
readableTime = `${diffTime}ms`;
|
|
373
331
|
} else {
|
|
374
|
-
const seconds = diffTime >
|
|
375
|
-
|
|
332
|
+
const seconds = diffTime > 1e3 ? Math.floor(diffTime / 1e3) : 0;
|
|
333
|
+
const ms = diffTime - seconds * 1e3;
|
|
334
|
+
readableTime = `${seconds ? `${seconds}s and ` : ""}${ms}ms`;
|
|
376
335
|
}
|
|
377
336
|
const extendedMetadata = {
|
|
378
337
|
...metadata,
|
|
379
338
|
readableTime,
|
|
380
339
|
timeMs: diffTime
|
|
381
340
|
};
|
|
382
|
-
this.log(message, extendedMetadata, level, {
|
|
383
|
-
...options,
|
|
384
|
-
metadataStyles
|
|
385
|
-
});
|
|
341
|
+
this.log(message, extendedMetadata, level, { ...options, metadataStyles });
|
|
386
342
|
}
|
|
387
|
-
|
|
388
343
|
/**
|
|
389
344
|
* Like timeEnd, but with INFO level
|
|
390
345
|
*/
|
|
391
346
|
infoTimeEnd(time, message, metadata, metadataStyles) {
|
|
392
347
|
this.timeEnd(time, message, metadata, metadataStyles, Level.INFO);
|
|
393
348
|
}
|
|
394
|
-
|
|
395
349
|
/**
|
|
396
350
|
* Like timeEnd, but with INFO level
|
|
397
351
|
*/
|
|
398
352
|
infoSuccessTimeEnd(time, message, metadata, metadataStyles) {
|
|
399
353
|
this.timeEnd(time, message, metadata, metadataStyles, Level.INFO, {
|
|
400
|
-
symbol:
|
|
401
|
-
styles: [
|
|
354
|
+
symbol: "\u2714",
|
|
355
|
+
styles: ["green", "bold"]
|
|
402
356
|
});
|
|
403
357
|
}
|
|
404
|
-
|
|
405
358
|
/**
|
|
406
359
|
* Log an enter in a function
|
|
407
360
|
*
|
|
@@ -421,11 +374,8 @@ class Logger {
|
|
|
421
374
|
...metadata,
|
|
422
375
|
functionName: fn.name
|
|
423
376
|
};
|
|
424
|
-
this.log(
|
|
425
|
-
metadataStyles
|
|
426
|
-
});
|
|
377
|
+
this.log("enter", extendedMetadata, Level.TRACE, { metadataStyles });
|
|
427
378
|
}
|
|
428
|
-
|
|
429
379
|
/**
|
|
430
380
|
* Log an exit in a function
|
|
431
381
|
*
|
|
@@ -445,35 +395,16 @@ class Logger {
|
|
|
445
395
|
...metadata,
|
|
446
396
|
functionName: fn.name
|
|
447
397
|
};
|
|
448
|
-
this.log(
|
|
449
|
-
metadataStyles
|
|
450
|
-
});
|
|
398
|
+
this.log("exit", extendedMetadata, Level.TRACE, { metadataStyles });
|
|
451
399
|
}
|
|
452
|
-
|
|
453
|
-
/**
|
|
454
|
-
* Wrap around a function to log enter and exit of a function
|
|
455
|
-
*
|
|
456
|
-
* @example
|
|
457
|
-
* ```typescript
|
|
458
|
-
* const logger = new Logger('myNamespace:A');
|
|
459
|
-
* class A {
|
|
460
|
-
* method() {
|
|
461
|
-
* logger.wrap(method, () => {
|
|
462
|
-
* // Do your stuff
|
|
463
|
-
* });
|
|
464
|
-
* }
|
|
465
|
-
* }
|
|
466
|
-
* ```
|
|
467
|
-
*/
|
|
468
|
-
|
|
469
400
|
wrap(fn, option1, option2, callback) {
|
|
470
401
|
let metadata;
|
|
471
402
|
let metadataStyles;
|
|
472
|
-
if (typeof option1 ===
|
|
403
|
+
if (typeof option1 === "function") {
|
|
473
404
|
callback = option1;
|
|
474
405
|
} else {
|
|
475
406
|
metadata = option1;
|
|
476
|
-
if (typeof option2 ===
|
|
407
|
+
if (typeof option2 === "function") {
|
|
477
408
|
callback = option2;
|
|
478
409
|
} else {
|
|
479
410
|
metadataStyles = option2;
|