@@ -70,41 +70,6 @@ export class DiagAPI implements DiagLogger {
70
70
71
71
// DiagAPI specific functions
72
72
73
- self . setLogger = (
74
- logger : DiagLogger ,
75
- optionsOrLogLevel : DiagLogLevel | LoggerOptions = { logLevel : DiagLogLevel . INFO } ,
76
- ) => {
77
- if ( logger === self ) {
78
- // There isn't much we can do here.
79
- // Logging to the console might break the user application.
80
- // Try to log to self. If a logger was previously registered it will receive the log.
81
- const err = new Error (
82
- 'Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation'
83
- ) ;
84
- self . error ( err . stack ?? err . message ) ;
85
- return false ;
86
- }
87
-
88
- if ( typeof optionsOrLogLevel === 'number' ) {
89
- optionsOrLogLevel = {
90
- logLevel : optionsOrLogLevel ,
91
- }
92
- }
93
-
94
- const oldLogger = getGlobal ( 'diag' ) ;
95
- const newLogger = createLogLevelDiagLogger ( optionsOrLogLevel . logLevel ?? DiagLogLevel . INFO , logger ) ;
96
- // There already is an logger registered. We'll let it know before overwriting it.
97
- if ( oldLogger && ! optionsOrLogLevel . suppressOverrideMessage ) {
98
- const stack = new Error ( ) . stack ?? '<failed to generate stacktrace>' ;
99
- oldLogger . warn ( `Current logger will be overwritten from ${ stack } ` ) ;
100
- newLogger . warn (
101
- `Current logger will overwrite one already registered from ${ stack } `
102
- ) ;
103
- }
104
-
105
- return registerGlobal ( 'diag' , newLogger , self , true ) ;
106
- } ;
107
-
108
73
self . disable = ( ) => {
109
74
unregisterGlobal ( API_NAME , self ) ;
110
75
} ;
@@ -128,7 +93,7 @@ export class DiagAPI implements DiagLogger {
128
93
* @param logLevel - [Optional] The DiagLogLevel used to filter logs sent to the logger. If not provided it will default to INFO.
129
94
* @returns true if the logger was successfully registered, else false
130
95
*/
131
- public setLogger ! : ( logger : DiagLogger , logLevel ?: DiagLogLevel ) => boolean ;
96
+ public setLogger ( logger : DiagLogger , logLevel ?: DiagLogLevel ) : boolean ;
132
97
/**
133
98
* Set the global DiagLogger and DiagLogLevel.
134
99
* If a global diag logger is already set, this will override it.
@@ -137,7 +102,38 @@ export class DiagAPI implements DiagLogger {
137
102
* @param options - [Optional] And object which can contain `logLevel: DiagLogLevel` used to filter logs sent to the logger. If not provided it will default to INFO. The object may also contain `suppressOverrideMessage: boolean` which will suppress the warning normally logged when a logger is already registered.
138
103
* @returns true if the logger was successfully registered, else false
139
104
*/
140
- public setLogger ! : ( logger : DiagLogger , options ?: LoggerOptions ) => boolean ;
105
+ public setLogger ( logger : DiagLogger , options ?: LoggerOptions ) : boolean ;
106
+ public setLogger ( logger : DiagLogger , optionsOrLogLevel : DiagLogLevel | LoggerOptions = { logLevel : DiagLogLevel . INFO } ) {
107
+ if ( logger === this ) {
108
+ // There isn't much we can do here.
109
+ // Logging to the console might break the user application.
110
+ // Try to log to self. If a logger was previously registered it will receive the log.
111
+ const err = new Error (
112
+ 'Cannot use diag as the logger for itself. Please use a DiagLogger implementation like ConsoleDiagLogger or a custom implementation'
113
+ ) ;
114
+ this . error ( err . stack ?? err . message ) ;
115
+ return false ;
116
+ }
117
+
118
+ if ( typeof optionsOrLogLevel === 'number' ) {
119
+ optionsOrLogLevel = {
120
+ logLevel : optionsOrLogLevel ,
121
+ }
122
+ }
123
+
124
+ const oldLogger = getGlobal ( 'diag' ) ;
125
+ const newLogger = createLogLevelDiagLogger ( optionsOrLogLevel . logLevel ?? DiagLogLevel . INFO , logger ) ;
126
+ // There already is an logger registered. We'll let it know before overwriting it.
127
+ if ( oldLogger && ! optionsOrLogLevel . suppressOverrideMessage ) {
128
+ const stack = new Error ( ) . stack ?? '<failed to generate stacktrace>' ;
129
+ oldLogger . warn ( `Current logger will be overwritten from ${ stack } ` ) ;
130
+ newLogger . warn (
131
+ `Current logger will overwrite one already registered from ${ stack } `
132
+ ) ;
133
+ }
134
+
135
+ return registerGlobal ( 'diag' , newLogger , this , true ) ;
136
+ }
141
137
/**
142
138
*
143
139
*/
0 commit comments