Skip to content

Commit 49399ff

Browse files
committed
Added logger name
1 parent 5de24d3 commit 49399ff

File tree

9 files changed

+31
-16
lines changed

9 files changed

+31
-16
lines changed

Makefile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,8 @@ TEST_SPEC=-r ts-node/register -S --ui bdd --timeout 5000 --recursive test/**/*.s
44

55

66
.PHONY: build
7-
npm run buid
7+
build:
8+
npm run build
89

910
.PHONY: lint
1011
lint:

src/Logger.ts

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,16 @@
11
import LoggerModule from './LoggerModule';
22
import LogListener from './LogListener';
3-
import {TLogLevel, TLogMessage, TExtendedData} from './types';
3+
import {TLogLevel, TLogMessage, TExtendedData, TLogFunction} from './types';
44

55
class Logger {
6+
public name: string = '';
67
private __listeners: LogListener[] = [];
78
private __modules: Record<string, LoggerModule> = {};
89

10+
constructor(name = '') {
11+
this.name = name;
12+
}
13+
914
module(moduleName: string) {
1015
let module = this.getModule(moduleName);
1116

@@ -53,7 +58,8 @@ class Logger {
5358
message: string,
5459
extendedData?: TExtendedData
5560
) => {
56-
const logMessage = {
61+
const logMessage: TLogMessage = {
62+
loggerName: this.name,
5763
timestamp: Date.now(),
5864
level: level,
5965
moduleName: moduleName,

src/index.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ import Logger from './Logger';
22
import LogListener from './LogListener';
33
import {TLogListenerParams} from './types';
44

5-
const createLogger = () => {
6-
return new Logger();
5+
const createLogger = (name?: string) => {
6+
return new Logger(name);
77
};
88

99
const createListener = (params: TLogListenerParams) => {

src/transports/consoleBrowser.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
import {TLogMessage} from '../types';
22

33
export function consoleBrowser(logObject: TLogMessage) {
4-
const messageString = `[${logObject.moduleName}] ${logObject.message}`;
5-
console.log(messageString, logObject.extendedData);
4+
const prefix =
5+
logObject.loggerName.length > 0 ? `[${logObject.loggerName}]` : '';
6+
const message = `${prefix}[${logObject.moduleName}] ${logObject.message}`;
7+
console.log(message, logObject.extendedData);
68
}

src/transports/consoleBrowserColorful.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,11 @@ const styles = {
1111
};
1212

1313
export function consoleBrowserColorful(logObject: TLogMessage) {
14-
const messageString =
15-
'%c[' + logObject.moduleName + ']%c ' + logObject.message;
14+
const prefix =
15+
logObject.loggerName.length > 0 ? `[${logObject.loggerName}]` : '';
16+
const message = `${prefix}%c[${logObject.moduleName}]%c ${logObject.message}`;
1617
console.log(
17-
messageString,
18+
message,
1819
styles[logObject.level],
1920
styles.reset,
2021
logObject.extendedData

src/transports/consoleNodeColorful.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,9 @@ const map = {
4242

4343
export function consoleNodeColorful(logObject: TLogMessage) {
4444
const style = map[logObject.level];
45-
const message =
46-
style('[' + logObject.moduleName + ']') + ' ' + logObject.message;
45+
const prefix =
46+
logObject.loggerName.length > 0 ? `[${logObject.loggerName}]` : '';
47+
const moduleName = style(`[${logObject.moduleName}]`);
48+
const message = `${prefix}${moduleName} ${logObject.message}`;
4749
console.log(message, logObject.extendedData);
4850
}

src/types.ts

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ export type TExtendedData = Record<string, any>;
44

55
export type TLogMessage = {
66
timestamp: number;
7+
loggerName: string;
78
moduleName: string;
89
level: TLogLevel;
910
message: string;
@@ -17,12 +18,12 @@ export type TLogFunction = (
1718
extendedData?: TExtendedData
1819
) => void;
1920

21+
export type TLogMessageHandler = (logMessage: TLogMessage) => void;
22+
23+
export type TLogListenerFilter = (logMessage: TLogMessage) => boolean;
24+
2025
export type TLogListenerParams = {
2126
levels?: TLogLevel[];
2227
filter?: TLogListenerFilter;
2328
handler: TLogMessageHandler;
2429
};
25-
26-
export type TLogMessageHandler = (log: TLogMessage) => void;
27-
28-
export type TLogListenerFilter = (logMessage: TLogMessage) => boolean;

test/console.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ chai.use(sinonChai);
1919

2020
const getLogMessage = (): TLogMessage => {
2121
return {
22+
loggerName: '',
2223
timestamp: Date.now(),
2324
moduleName: 'myModule',
2425
message: 'some message',

test/main.spec.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ describe('Zerg', function () {
6868
e: {foo: 'bar'},
6969
});
7070
expect(handler).calledOnce.calledWithMatch({
71+
loggerName: '',
7172
moduleName: 'overseer',
7273
level: 'info',
7374
message: 'some message',

0 commit comments

Comments
 (0)