@quatrain/log 0.1.2 → 0.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/lib/AbstractLoggerAdapter.d.ts +6 -12
- package/lib/AbstractLoggerAdapter.js +26 -33
- package/lib/DefaultLoggerAdapter.d.ts +14 -1
- package/lib/DefaultLoggerAdapter.js +51 -2
- package/lib/Log.d.ts +11 -3
- package/lib/Log.js +17 -5
- package/lib/index.d.ts +4 -3
- package/lib/index.js +4 -2
- package/package.json +1 -1
|
@@ -1,11 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
TRACE = 0,
|
|
3
|
-
DEBUG = 1,
|
|
4
|
-
INFO = 2,
|
|
5
|
-
WARN = 3,
|
|
6
|
-
ERROR = 4,
|
|
7
|
-
SILENT = 5
|
|
8
|
-
}
|
|
1
|
+
import { LogLevel } from './Log';
|
|
9
2
|
export interface LoggerType {
|
|
10
3
|
log(message: string): void;
|
|
11
4
|
debug(message: string): void;
|
|
@@ -14,19 +7,20 @@ export interface LoggerType {
|
|
|
14
7
|
error(message: string): void;
|
|
15
8
|
trace(message: string): void;
|
|
16
9
|
}
|
|
17
|
-
export declare
|
|
10
|
+
export declare const loglevelNames: string[];
|
|
11
|
+
export declare abstract class AbstractLoggerAdapter implements LoggerType {
|
|
18
12
|
protected _me: string;
|
|
19
13
|
protected _logLevel: LogLevel;
|
|
20
14
|
protected _logger: any;
|
|
21
15
|
constructor(prefix?: string, level?: LogLevel);
|
|
22
|
-
|
|
23
|
-
formatLogMessage: (
|
|
16
|
+
logLevel(level: LogLevel): void;
|
|
17
|
+
formatLogMessage: (messages: any[], loglevel?: LogLevel) => string;
|
|
24
18
|
/**
|
|
25
19
|
* Log message using defined logger
|
|
26
20
|
* @param message string | object
|
|
27
21
|
* @param level string
|
|
28
22
|
*/
|
|
29
|
-
log(
|
|
23
|
+
log(...messages: any): void;
|
|
30
24
|
debug(message: any): void;
|
|
31
25
|
warn(message: any): void;
|
|
32
26
|
info(message: any): void;
|
|
@@ -1,25 +1,30 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AbstractLoggerAdapter = exports.
|
|
3
|
+
exports.AbstractLoggerAdapter = exports.loglevelNames = void 0;
|
|
4
4
|
const Log_1 = require("./Log");
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
})(LogLevel || (exports.LogLevel = LogLevel = {}));
|
|
5
|
+
exports.loglevelNames = [
|
|
6
|
+
'TRACE',
|
|
7
|
+
'DEBUG',
|
|
8
|
+
'INFO',
|
|
9
|
+
'WARN',
|
|
10
|
+
'ERROR',
|
|
11
|
+
'SILENT',
|
|
12
|
+
];
|
|
14
13
|
class AbstractLoggerAdapter {
|
|
15
|
-
constructor(prefix = '', level = LogLevel.WARN) {
|
|
14
|
+
constructor(prefix = '', level = Log_1.LogLevel.WARN) {
|
|
16
15
|
this._me = '';
|
|
17
|
-
this._logLevel = LogLevel.WARN;
|
|
16
|
+
this._logLevel = Log_1.LogLevel.WARN;
|
|
18
17
|
this._logger = undefined;
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
18
|
+
this.formatLogMessage = (messages, loglevel = 3) => {
|
|
19
|
+
messages.unshift(`${Log_1.Log.timestamp()} - [${this._me}]`);
|
|
20
|
+
const strs = messages.map((message) => {
|
|
21
|
+
return typeof message !== 'object' ? message : JSON.stringify(message);
|
|
22
|
+
});
|
|
23
|
+
return strs.join(' ');
|
|
24
|
+
};
|
|
22
25
|
this._me = prefix;
|
|
26
|
+
}
|
|
27
|
+
logLevel(level) {
|
|
23
28
|
this._logLevel = level;
|
|
24
29
|
}
|
|
25
30
|
/**
|
|
@@ -27,23 +32,11 @@ class AbstractLoggerAdapter {
|
|
|
27
32
|
* @param message string | object
|
|
28
33
|
* @param level string
|
|
29
34
|
*/
|
|
30
|
-
log(
|
|
31
|
-
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
}
|
|
36
|
-
warn(message) {
|
|
37
|
-
this._logger.warn(this.formatLogMessage(message));
|
|
38
|
-
}
|
|
39
|
-
info(message) {
|
|
40
|
-
this._logger.info(this.formatLogMessage(message));
|
|
41
|
-
}
|
|
42
|
-
error(message) {
|
|
43
|
-
this._logger.error(this.formatLogMessage(message));
|
|
44
|
-
}
|
|
45
|
-
trace(message) {
|
|
46
|
-
this._logger.trace(this.formatLogMessage(message));
|
|
47
|
-
}
|
|
35
|
+
log(...messages) { }
|
|
36
|
+
debug(message) { }
|
|
37
|
+
warn(message) { }
|
|
38
|
+
info(message) { }
|
|
39
|
+
error(message) { }
|
|
40
|
+
trace(message) { }
|
|
48
41
|
}
|
|
49
42
|
exports.AbstractLoggerAdapter = AbstractLoggerAdapter;
|
|
@@ -1,4 +1,17 @@
|
|
|
1
1
|
import { AbstractLoggerAdapter } from './AbstractLoggerAdapter';
|
|
2
|
+
import { LogLevel } from './Log';
|
|
2
3
|
export declare class DefaultLoggerAdapter extends AbstractLoggerAdapter {
|
|
3
|
-
constructor();
|
|
4
|
+
constructor(prefix?: string, level?: LogLevel);
|
|
5
|
+
/**
|
|
6
|
+
* Log message using defined logger
|
|
7
|
+
* @param messages array
|
|
8
|
+
* @param level LogLevel
|
|
9
|
+
*/
|
|
10
|
+
log(messages: any[], level?: LogLevel): void;
|
|
11
|
+
logLevel(level: LogLevel): void;
|
|
12
|
+
debug(...messages: any): void;
|
|
13
|
+
warn(...messages: any): void;
|
|
14
|
+
info(...messages: any): void;
|
|
15
|
+
error(...messages: any): void;
|
|
16
|
+
trace(...messages: any): void;
|
|
4
17
|
}
|
|
@@ -6,10 +6,59 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.DefaultLoggerAdapter = void 0;
|
|
7
7
|
const AbstractLoggerAdapter_1 = require("./AbstractLoggerAdapter");
|
|
8
8
|
const loglevel_1 = __importDefault(require("loglevel"));
|
|
9
|
+
const Log_1 = require("./Log");
|
|
9
10
|
class DefaultLoggerAdapter extends AbstractLoggerAdapter_1.AbstractLoggerAdapter {
|
|
10
|
-
constructor() {
|
|
11
|
-
super(
|
|
11
|
+
constructor(prefix = '', level = Log_1.LogLevel.DEBUG) {
|
|
12
|
+
super(prefix, level);
|
|
12
13
|
this._logger = loglevel_1.default;
|
|
14
|
+
this._logger.setLevel(level);
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Log message using defined logger
|
|
18
|
+
* @param messages array
|
|
19
|
+
* @param level LogLevel
|
|
20
|
+
*/
|
|
21
|
+
log(messages, level = this._logLevel) {
|
|
22
|
+
const message = this.formatLogMessage(messages);
|
|
23
|
+
switch (level) {
|
|
24
|
+
case Log_1.LogLevel.TRACE:
|
|
25
|
+
this._logger.trace(message);
|
|
26
|
+
break;
|
|
27
|
+
case Log_1.LogLevel.DEBUG:
|
|
28
|
+
this._logger.debug(message);
|
|
29
|
+
break;
|
|
30
|
+
case Log_1.LogLevel.INFO:
|
|
31
|
+
this._logger.info(message);
|
|
32
|
+
break;
|
|
33
|
+
case Log_1.LogLevel.WARN:
|
|
34
|
+
this._logger.warn(message);
|
|
35
|
+
break;
|
|
36
|
+
case Log_1.LogLevel.ERROR:
|
|
37
|
+
this._logger.error(message);
|
|
38
|
+
break;
|
|
39
|
+
default:
|
|
40
|
+
this._logger.log(message);
|
|
41
|
+
break;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
logLevel(level) {
|
|
45
|
+
super.logLevel(level);
|
|
46
|
+
this._logger.setLevel(level);
|
|
47
|
+
}
|
|
48
|
+
debug(...messages) {
|
|
49
|
+
this.log(messages[0], Log_1.LogLevel.DEBUG);
|
|
50
|
+
}
|
|
51
|
+
warn(...messages) {
|
|
52
|
+
this.log(messages[0], Log_1.LogLevel.WARN);
|
|
53
|
+
}
|
|
54
|
+
info(...messages) {
|
|
55
|
+
this.log(messages[0], Log_1.LogLevel.INFO);
|
|
56
|
+
}
|
|
57
|
+
error(...messages) {
|
|
58
|
+
this.log(messages[0], Log_1.LogLevel.ERROR);
|
|
59
|
+
}
|
|
60
|
+
trace(...messages) {
|
|
61
|
+
this.log(messages[0], Log_1.LogLevel.TRACE);
|
|
13
62
|
}
|
|
14
63
|
}
|
|
15
64
|
exports.DefaultLoggerAdapter = DefaultLoggerAdapter;
|
package/lib/Log.d.ts
CHANGED
|
@@ -1,12 +1,20 @@
|
|
|
1
|
-
import { AbstractLoggerAdapter } from
|
|
1
|
+
import { AbstractLoggerAdapter } from './AbstractLoggerAdapter';
|
|
2
|
+
export declare enum LogLevel {
|
|
3
|
+
TRACE = 0,
|
|
4
|
+
DEBUG = 1,
|
|
5
|
+
INFO = 2,
|
|
6
|
+
WARN = 3,
|
|
7
|
+
ERROR = 4,
|
|
8
|
+
SILENT = 5
|
|
9
|
+
}
|
|
2
10
|
export type LoggerRegistry<T extends AbstractLoggerAdapter> = {
|
|
3
11
|
[x: string]: T;
|
|
4
12
|
};
|
|
5
13
|
export declare class Log {
|
|
6
14
|
static defaultLogger: string;
|
|
7
15
|
protected static _loggers: LoggerRegistry<any>;
|
|
8
|
-
static timestamp
|
|
9
|
-
static addLogger(
|
|
16
|
+
static timestamp(): string;
|
|
17
|
+
static addLogger(alias: string, logger?: AbstractLoggerAdapter, setDefault?: boolean): any;
|
|
10
18
|
static getLogger<T extends AbstractLoggerAdapter>(alias?: string): T;
|
|
11
19
|
/**
|
|
12
20
|
* Log message using defined logger
|
package/lib/Log.js
CHANGED
|
@@ -1,13 +1,27 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Log = void 0;
|
|
3
|
+
exports.Log = exports.LogLevel = void 0;
|
|
4
4
|
const DefaultLoggerAdapter_1 = require("./DefaultLoggerAdapter");
|
|
5
|
+
var LogLevel;
|
|
6
|
+
(function (LogLevel) {
|
|
7
|
+
LogLevel[LogLevel["TRACE"] = 0] = "TRACE";
|
|
8
|
+
LogLevel[LogLevel["DEBUG"] = 1] = "DEBUG";
|
|
9
|
+
LogLevel[LogLevel["INFO"] = 2] = "INFO";
|
|
10
|
+
LogLevel[LogLevel["WARN"] = 3] = "WARN";
|
|
11
|
+
LogLevel[LogLevel["ERROR"] = 4] = "ERROR";
|
|
12
|
+
LogLevel[LogLevel["SILENT"] = 5] = "SILENT";
|
|
13
|
+
})(LogLevel || (exports.LogLevel = LogLevel = {}));
|
|
5
14
|
class Log {
|
|
6
|
-
|
|
15
|
+
// How timestamp are formatted
|
|
16
|
+
static timestamp() {
|
|
17
|
+
return new Date().toISOString();
|
|
18
|
+
}
|
|
19
|
+
static addLogger(alias, logger = new DefaultLoggerAdapter_1.DefaultLoggerAdapter(), setDefault = false) {
|
|
7
20
|
this._loggers[alias] = logger;
|
|
8
21
|
if (setDefault) {
|
|
9
22
|
this.defaultLogger = alias;
|
|
10
23
|
}
|
|
24
|
+
return this._loggers[alias];
|
|
11
25
|
}
|
|
12
26
|
static getLogger(alias = this.defaultLogger) {
|
|
13
27
|
if (this._loggers[alias]) {
|
|
@@ -43,7 +57,5 @@ class Log {
|
|
|
43
57
|
exports.Log = Log;
|
|
44
58
|
Log.defaultLogger = '@default';
|
|
45
59
|
Log._loggers = {
|
|
46
|
-
default: new DefaultLoggerAdapter_1.DefaultLoggerAdapter()
|
|
60
|
+
'@default': new DefaultLoggerAdapter_1.DefaultLoggerAdapter(),
|
|
47
61
|
};
|
|
48
|
-
// How timestamp are formatted
|
|
49
|
-
Log.timestamp = () => new Date().toISOString();
|
package/lib/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
import { Log } from './Log';
|
|
2
|
-
import {
|
|
3
|
-
|
|
1
|
+
import { Log, LogLevel } from './Log';
|
|
2
|
+
import { AbstractLoggerAdapter } from './AbstractLoggerAdapter';
|
|
3
|
+
import { DefaultLoggerAdapter } from './DefaultLoggerAdapter';
|
|
4
|
+
export { Log, LogLevel, AbstractLoggerAdapter, DefaultLoggerAdapter };
|
package/lib/index.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.DefaultLoggerAdapter = exports.AbstractLoggerAdapter = exports.LogLevel = exports.Log = void 0;
|
|
4
4
|
const Log_1 = require("./Log");
|
|
5
5
|
Object.defineProperty(exports, "Log", { enumerable: true, get: function () { return Log_1.Log; } });
|
|
6
|
+
Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return Log_1.LogLevel; } });
|
|
6
7
|
const AbstractLoggerAdapter_1 = require("./AbstractLoggerAdapter");
|
|
7
|
-
Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function () { return AbstractLoggerAdapter_1.LogLevel; } });
|
|
8
8
|
Object.defineProperty(exports, "AbstractLoggerAdapter", { enumerable: true, get: function () { return AbstractLoggerAdapter_1.AbstractLoggerAdapter; } });
|
|
9
|
+
const DefaultLoggerAdapter_1 = require("./DefaultLoggerAdapter");
|
|
10
|
+
Object.defineProperty(exports, "DefaultLoggerAdapter", { enumerable: true, get: function () { return DefaultLoggerAdapter_1.DefaultLoggerAdapter; } });
|