1- import LevelUtils from '../helper/levelUtils' ;
21import { isValidObject } from '../middleware/utils' ;
3- import { Level } from './level' ;
2+ import { Level , LevelUtils } from './level' ;
43import RecordFactory from './recordFactory' ;
5- import RecordWriter from './recordWriter' ;
64import Context from './context' ;
5+ import PluginProvider from '../helper/pluginProvider' ;
76
87export class Logger {
98 private parent ?: Logger = undefined
109 private context ?: Context ;
1110 private registeredCustomFields : Array < string > = [ ] ;
1211 private customFields : Map < string , any > = new Map < string , any > ( )
1312 private recordFactory : RecordFactory ;
14- private recordWriter : RecordWriter ;
13+
1514 protected loggingLevelThreshold : Level = Level . Inherit
1615
1716 constructor ( parent ?: Logger , context ?: Context ) {
@@ -23,7 +22,6 @@ export class Logger {
2322 this . context = context ;
2423 }
2524 this . recordFactory = RecordFactory . getInstance ( ) ;
26- this . recordWriter = RecordWriter . getInstance ( ) ;
2725 }
2826
2927 createLogger ( customFields ?: Map < string , any > | Object , createNewContext ?: boolean ) : Logger {
@@ -37,11 +35,7 @@ export class Logger {
3735 }
3836
3937 setLoggingLevel ( level : string | Level ) {
40- if ( typeof level === 'string' ) {
41- this . loggingLevelThreshold = LevelUtils . getLevel ( level )
42- } else {
43- this . loggingLevelThreshold = level
44- }
38+ this . loggingLevelThreshold = LevelUtils . getLevel ( level )
4539 }
4640
4741 getLoggingLevel ( ) : string {
@@ -55,26 +49,14 @@ export class Logger {
5549 if ( this . loggingLevelThreshold == Level . Inherit ) {
5650 return this . parent ! . isLoggingLevel ( level )
5751 }
58- if ( typeof level === 'string' ) {
59- return LevelUtils . isLevelEnabled ( this . loggingLevelThreshold , LevelUtils . getLevel ( level ) )
60- } else {
61- return LevelUtils . isLevelEnabled ( this . loggingLevelThreshold , level )
62- }
52+ return LevelUtils . isLevelEnabled ( this . loggingLevelThreshold , LevelUtils . getLevel ( level ) )
6353 }
6454
6555 logMessage ( level : string | Level , ...args : any ) {
6656 if ( ! this . isLoggingLevel ( level ) ) return ;
6757 const loggerCustomFields = this . getCustomFieldsFromLogger ( this ) ;
68-
69- let levelName : string ;
70- if ( typeof level === 'string' ) {
71- levelName = level ;
72- } else {
73- levelName = LevelUtils . getName ( level ) ;
74- }
75-
76- const record = this . recordFactory . buildMsgRecord ( this . registeredCustomFields , loggerCustomFields , levelName , args , this . context ) ;
77- this . recordWriter . writeLog ( record ) ;
58+ const record = this . recordFactory . buildMsgRecord ( this . registeredCustomFields , loggerCustomFields , LevelUtils . getLevel ( level ) , args , this . context ) ;
59+ PluginProvider . getInstance ( ) . getOutputPlugins ( ) . forEach ( output => { output . writeRecord ( record ) } )
7860 }
7961
8062 error ( ...args : any ) {
0 commit comments