@sjts/lib-log 31.1.2 → 31.1.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/Logger.d.ts +5 -5
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +62 -53
- package/dist/_/Logger.test.d.ts +1 -1
- package/dist/_/Logger.test.d.ts.map +1 -1
- package/dist/_/Logger.test.js +11 -4
- package/package.json +1 -1
package/dist/Logger.d.ts
CHANGED
|
@@ -7,17 +7,17 @@ export declare class Logger {
|
|
|
7
7
|
static magenta: string;
|
|
8
8
|
static cyan: string;
|
|
9
9
|
static reset: string;
|
|
10
|
-
static bold: string;
|
|
11
|
-
static dim: string;
|
|
12
|
-
static italic: string;
|
|
13
|
-
static underline: string;
|
|
14
|
-
static strikethrough: string;
|
|
15
10
|
static bgRed: string;
|
|
16
11
|
static bgGreen: string;
|
|
17
12
|
static bgYellow: string;
|
|
18
13
|
static bgBlue: string;
|
|
19
14
|
static bgMagenta: string;
|
|
20
15
|
static bgCyan: string;
|
|
16
|
+
static bold: string;
|
|
17
|
+
static dim: string;
|
|
18
|
+
static italic: string;
|
|
19
|
+
static underline: string;
|
|
20
|
+
static strikethrough: string;
|
|
21
21
|
static lastLogTimestamp: number;
|
|
22
22
|
private static _indent;
|
|
23
23
|
private level;
|
package/dist/Logger.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"Logger.d.ts","sourceRoot":"","sources":["../src/Logger.ts"],"names":[],"mappings":"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"}
|
package/dist/Logger.js
CHANGED
|
@@ -1,25 +1,43 @@
|
|
|
1
1
|
import { DateTime } from 'luxon';
|
|
2
2
|
import { LoggerLevel } from './LoggerLevel.js';
|
|
3
3
|
const { DEBUG, INFO, SYSTEM, WARN, ERROR, THROW, KILL } = LoggerLevel;
|
|
4
|
+
const red = '\x1b[31m';
|
|
5
|
+
const green = '\x1b[32m';
|
|
6
|
+
const yellow = '\x1b[33m';
|
|
7
|
+
const blue = '\x1b[34m';
|
|
8
|
+
const magenta = '\x1b[35m';
|
|
9
|
+
const cyan = '\x1b[36m';
|
|
10
|
+
const reset = '\x1b[0m';
|
|
11
|
+
const bold = '\x1b[1m';
|
|
12
|
+
const dim = '\x1b[2m';
|
|
13
|
+
const italic = '\x1b[3m';
|
|
14
|
+
const underline = '\x1b[4m';
|
|
15
|
+
const strikethrough = '\x1b[9m';
|
|
16
|
+
const bgRed = '\x1b[41m';
|
|
17
|
+
const bgGreen = '\x1b[42m';
|
|
18
|
+
const bgYellow = '\x1b[43m';
|
|
19
|
+
const bgBlue = '\x1b[44m';
|
|
20
|
+
const bgMagenta = '\x1b[45m';
|
|
21
|
+
const bgCyan = '\x1b[46m';
|
|
4
22
|
export class Logger {
|
|
5
|
-
static red =
|
|
6
|
-
static green =
|
|
7
|
-
static yellow =
|
|
8
|
-
static blue =
|
|
9
|
-
static magenta =
|
|
10
|
-
static cyan =
|
|
11
|
-
static reset =
|
|
12
|
-
static
|
|
13
|
-
static
|
|
14
|
-
static
|
|
15
|
-
static
|
|
16
|
-
static
|
|
17
|
-
static
|
|
18
|
-
static
|
|
19
|
-
static
|
|
20
|
-
static
|
|
21
|
-
static
|
|
22
|
-
static
|
|
23
|
+
static red = red;
|
|
24
|
+
static green = green;
|
|
25
|
+
static yellow = yellow;
|
|
26
|
+
static blue = blue;
|
|
27
|
+
static magenta = magenta;
|
|
28
|
+
static cyan = cyan;
|
|
29
|
+
static reset = reset;
|
|
30
|
+
static bgRed = bgRed;
|
|
31
|
+
static bgGreen = bgGreen;
|
|
32
|
+
static bgYellow = bgYellow;
|
|
33
|
+
static bgBlue = bgBlue;
|
|
34
|
+
static bgMagenta = bgMagenta;
|
|
35
|
+
static bgCyan = bgCyan;
|
|
36
|
+
static bold = bold;
|
|
37
|
+
static dim = dim;
|
|
38
|
+
static italic = italic;
|
|
39
|
+
static underline = underline;
|
|
40
|
+
static strikethrough = strikethrough;
|
|
23
41
|
static lastLogTimestamp = 0;
|
|
24
42
|
static _indent = 0;
|
|
25
43
|
level = [INFO, WARN, ERROR, THROW, KILL];
|
|
@@ -61,19 +79,9 @@ export class Logger {
|
|
|
61
79
|
static setSystemTags(tags) {
|
|
62
80
|
this.instance.setSystemTags(tags);
|
|
63
81
|
}
|
|
64
|
-
shout = (message, data) => Logger.info(
|
|
65
|
-
Logger.bold +
|
|
66
|
-
'--------------\n' +
|
|
67
|
-
message +
|
|
68
|
-
'\n--------------' +
|
|
69
|
-
Logger.reset, data);
|
|
82
|
+
shout = (message, data) => Logger.info(green + bold + '--------------\n' + message + '\n--------------' + reset, data);
|
|
70
83
|
static shout(message, data) {
|
|
71
|
-
this.info(
|
|
72
|
-
Logger.bold +
|
|
73
|
-
'--------------\n' +
|
|
74
|
-
message +
|
|
75
|
-
'\n--------------' +
|
|
76
|
-
Logger.reset, data);
|
|
84
|
+
this.info(green + bold + '--------------\n' + message + '\n--------------' + reset, data);
|
|
77
85
|
}
|
|
78
86
|
debug = (message, data) => Logger.debug(message, data);
|
|
79
87
|
static debug(message, data) {
|
|
@@ -94,46 +102,41 @@ export class Logger {
|
|
|
94
102
|
system = (tag, message, data) => Logger.info(message, data);
|
|
95
103
|
static system(tag, message, data) {
|
|
96
104
|
Logger.initProfiles();
|
|
97
|
-
const msg = Logger.indentMessage(message);
|
|
98
|
-
const formattedMessage = `${Logger.magenta}${msg}${Logger.reset}`;
|
|
105
|
+
const msg = Logger.indentMessage(`${magenta}${italic}${tag}${reset}: ${message}${reset}`);
|
|
99
106
|
if (this.instance.level.includes(SYSTEM) && this.instance.systemTags.includes(tag))
|
|
100
|
-
this.instance.c.log(...(data ? [
|
|
107
|
+
this.instance.c.log(...(data ? [msg, data] : [msg]));
|
|
101
108
|
this.lastLogTimestamp = DateTime.now().toMillis();
|
|
102
109
|
}
|
|
103
110
|
warn = (message, data) => Logger.warn(message, data);
|
|
104
111
|
static warn(message, data) {
|
|
105
112
|
Logger.initProfiles();
|
|
106
|
-
const msg = Logger.indentMessage(message);
|
|
107
|
-
const formattedMessage = `${Logger.yellow}WARN: ${msg}${Logger.reset}`;
|
|
113
|
+
const msg = Logger.indentMessage(`${yellow}WARN: ${message}${reset}`);
|
|
108
114
|
if (this.instance.level.includes(WARN))
|
|
109
|
-
this.instance.c.warn(...(data ? [
|
|
115
|
+
this.instance.c.warn(...(data ? [msg, data] : [msg]));
|
|
110
116
|
this.lastLogTimestamp = DateTime.now().toMillis();
|
|
111
117
|
}
|
|
112
118
|
error = (message, data) => Logger.error(message, data);
|
|
113
119
|
static error(message, data) {
|
|
114
120
|
Logger.initProfiles();
|
|
115
|
-
const msg = Logger.indentMessage(message);
|
|
116
|
-
const formattedMessage = `${Logger.red}ERROR: ${msg}${Logger.reset}`;
|
|
121
|
+
const msg = Logger.indentMessage(`${red}ERROR: ${message}${reset}`);
|
|
117
122
|
if (this.instance.level.includes(ERROR))
|
|
118
|
-
this.instance.c.error(...(data ? [
|
|
123
|
+
this.instance.c.error(...(data ? [msg, data] : [msg]));
|
|
119
124
|
this.lastLogTimestamp = DateTime.now().toMillis();
|
|
120
125
|
}
|
|
121
126
|
throw = (message, data) => Logger.throw(message, data);
|
|
122
127
|
static throw(message, data) {
|
|
123
128
|
Logger.initProfiles();
|
|
124
|
-
const msg = Logger.indentMessage(message);
|
|
125
|
-
const formattedMessage = `${Logger.red}ERROR: ${msg}${Logger.reset}`;
|
|
129
|
+
const msg = Logger.indentMessage(`${red}ERROR: ${message}${reset}`);
|
|
126
130
|
if (this.instance.level.includes(THROW))
|
|
127
|
-
this.instance.c.error(...(data ? [
|
|
131
|
+
this.instance.c.error(...(data ? [msg, data] : [msg]));
|
|
128
132
|
throw new Error(message.toString());
|
|
129
133
|
}
|
|
130
134
|
kill = (message, data) => Logger.kill(message, data);
|
|
131
135
|
static kill(message, data) {
|
|
132
136
|
Logger.initProfiles();
|
|
133
|
-
const msg = Logger.indentMessage(message);
|
|
134
|
-
const formattedMessage = `${Logger.red}ERROR: ${msg}${Logger.reset}`;
|
|
137
|
+
const msg = Logger.indentMessage(`${red}ERROR: ${message}${reset}`);
|
|
135
138
|
if (this.instance.level.includes(KILL))
|
|
136
|
-
this.instance.c.error(...(data ? [
|
|
139
|
+
this.instance.c.error(...(data ? [msg, data] : [msg]));
|
|
137
140
|
this.lastLogTimestamp = DateTime.now().toMillis();
|
|
138
141
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
139
142
|
// @ts-ignore
|
|
@@ -148,15 +151,21 @@ export class Logger {
|
|
|
148
151
|
Logger._openProfiles[key] = { key, start: DateTime.now().toMillis(), initiated: false };
|
|
149
152
|
}
|
|
150
153
|
static stopProfiling(key) {
|
|
151
|
-
|
|
154
|
+
const p = Logger._openProfiles[key];
|
|
155
|
+
if (!p) {
|
|
156
|
+
this.instance.c.warn('Cannot STOP profiling. Key "' + key + '" not found');
|
|
152
157
|
return;
|
|
158
|
+
}
|
|
153
159
|
const endTime = DateTime.now().toMillis();
|
|
154
|
-
const duration = endTime -
|
|
155
|
-
|
|
160
|
+
const duration = endTime - p.start;
|
|
161
|
+
const initiated = p.initiated;
|
|
162
|
+
if (initiated)
|
|
156
163
|
Logger.outdent();
|
|
157
164
|
delete Logger._openProfiles[key];
|
|
158
|
-
const msg =
|
|
159
|
-
|
|
165
|
+
const msg = initiated
|
|
166
|
+
? Logger.indentMessage(`${green}${duration}ms${reset}`)
|
|
167
|
+
: Logger.indentMessage(`${blue}${italic}${key}${reset} - ${green}${duration}ms${reset}`);
|
|
168
|
+
this.info(msg);
|
|
160
169
|
}
|
|
161
170
|
static initProfiles() {
|
|
162
171
|
Object.values(Logger._openProfiles)
|
|
@@ -164,14 +173,14 @@ export class Logger {
|
|
|
164
173
|
.sort((a, b) => a.start - b.start)
|
|
165
174
|
.forEach(profile => {
|
|
166
175
|
profile.initiated = true;
|
|
167
|
-
const msg = `${
|
|
168
|
-
this.instance.c.log(
|
|
176
|
+
const msg = Logger.indentMessage(`${blue}${italic}${profile.key}${reset}`);
|
|
177
|
+
this.instance.c.log(msg);
|
|
169
178
|
Logger.indent();
|
|
170
179
|
});
|
|
171
180
|
}
|
|
172
181
|
static indentMessage(message) {
|
|
173
182
|
return Logger._indent > 0
|
|
174
|
-
? `${
|
|
183
|
+
? `${dim}${blue}${'| '.repeat(Logger._indent)}${reset}${message}`
|
|
175
184
|
: message;
|
|
176
185
|
}
|
|
177
186
|
}
|
package/dist/_/Logger.test.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const test: () =>
|
|
1
|
+
export declare const test: () => void;
|
|
2
2
|
//# sourceMappingURL=Logger.test.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Logger.test.d.ts","sourceRoot":"","sources":["../../src/_/Logger.test.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"Logger.test.d.ts","sourceRoot":"","sources":["../../src/_/Logger.test.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,IAAI,YAmBhB,CAAA"}
|
package/dist/_/Logger.test.js
CHANGED
|
@@ -1,15 +1,22 @@
|
|
|
1
1
|
import { Logger } from '../Logger';
|
|
2
2
|
export const test = () => {
|
|
3
|
+
Logger.shout('Testing');
|
|
3
4
|
Logger.startProfiling('Speed Test');
|
|
4
|
-
Logger.
|
|
5
|
-
Logger.startProfiling('Something');
|
|
5
|
+
Logger.startProfiling('Something1');
|
|
6
6
|
Logger.info('DEF');
|
|
7
7
|
Logger.debug('GHI');
|
|
8
|
-
Logger.
|
|
8
|
+
Logger.startProfiling('Something2');
|
|
9
|
+
Logger.info('DEF');
|
|
10
|
+
Logger.debug('GHI');
|
|
11
|
+
Logger.startProfiling('Something3');
|
|
12
|
+
Logger.info('DEF');
|
|
13
|
+
Logger.debug('GHI');
|
|
14
|
+
Logger.stopProfiling('Something3');
|
|
15
|
+
Logger.stopProfiling('Something2');
|
|
16
|
+
Logger.stopProfiling('Something1');
|
|
9
17
|
Logger.info('JKL');
|
|
10
18
|
Logger.startProfiling('Something Else');
|
|
11
19
|
Logger.stopProfiling('Something Else');
|
|
12
20
|
Logger.stopProfiling('Speed Test');
|
|
13
|
-
return 100;
|
|
14
21
|
};
|
|
15
22
|
test();
|