1- import pino from 'pino' ;
1+ import pino , { BaseLogger } from 'pino' ;
22import { LoggerOptions } from 'pino' ;
33
44class DefaultLogger {
5- protected static pino : any ;
5+ protected static pino : BaseLogger = null as unknown as BaseLogger ;
66 protected static config : LoggerOptions = {
77 transport : {
88 target : 'pino-pretty' ,
99 options : {
1010 translateTime : 'HH:MM:ss' ,
11- messageFormat : '{levelLabel} {pid} {msg}' ,
1211 ignore : 'pid,hostname' ,
1312 prettyPrint : {
1413 colorize : true ,
@@ -18,7 +17,7 @@ class DefaultLogger {
1817 } ,
1918 } ;
2019
21- public static init ( ) {
20+ public static instance ( ) {
2221 if ( ! DefaultLogger . pino ) {
2322 this . pino = pino ( DefaultLogger . config ) ;
2423 }
@@ -38,17 +37,19 @@ export const checkEnv = (callback: Function, type?: LogsType): void => {
3837 }
3938} ;
4039
40+ const loggerInstance = DefaultLogger . instance ( ) ;
41+
4142const Logger = {
4243 info : ( message : string ) => {
43- const callback = ( ) => DefaultLogger . init ( ) . info ( { } , message ) ;
44+ const callback = ( ) => loggerInstance . info ( message ) ;
4445 checkEnv ( callback , 'info' ) ;
4546 } ,
4647 error : ( message : string ) => {
47- const callback = ( ) => DefaultLogger . init ( ) . error ( { } , message ) ;
48+ const callback = ( ) => loggerInstance . error ( message ) ;
4849 checkEnv ( callback , 'error' ) ;
4950 } ,
5051 warn : ( message : string ) => {
51- const callback = ( ) => DefaultLogger . init ( ) . warn ( { } , message ) ;
52+ const callback = ( ) => loggerInstance . warn ( message ) ;
5253 checkEnv ( callback , 'warn' ) ;
5354 } ,
5455} ;
0 commit comments