@practica/create-node-app
Version:
Create Node.js app that is packed with best practices AND strive for simplicity
73 lines (59 loc) • 1.84 kB
text/typescript
import { context } from '@practica/global-context';
import { Logger, LoggerConfiguration } from './definition';
import PinoLogger from './pino.logger';
export class LoggerWrapper implements Logger {
this.configureLogger({}, false);
return this.
}
configureLogger(
configuration: Partial<LoggerConfiguration>,
overrideIfExists = true
): void {
if (this.
this.
configuration.level || 'info',
configuration.prettyPrint || false
);
}
}
resetLogger() {
this.
}
debug(message: string, metadata?: object): void {
this.
message,
LoggerWrapper.
);
}
error(message: string, metadata?: object): void {
this.
message,
LoggerWrapper.
);
}
info(message: string, metadata?: object): void {
this.
message,
LoggerWrapper.
);
}
warning(message: string, metadata?: object): void {
this.
message,
LoggerWrapper.
);
}
static
const currentContext = context().getStore();
if (currentContext === null || typeof currentContext !== 'object') {
return metadata;
}
if (metadata == null) {
return currentContext;
}
return { ...currentContext, ...metadata };
}
}
export const logger = new LoggerWrapper();