File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -70,3 +70,24 @@ const loggerMap = new Logger({ name: 'mapLogger'});
7070let map = new Map ( ) ;
7171map . set ( 'foo' , 'bar' ) ;
7272loggerMap . debug ( 'My Map: ' , map ) // prints in console "DEBUG myLogger My Map: {}"
73+
74+
75+ ////////////////////////////
76+
77+ const error = new TypeError ( ) ;
78+ Object . assign ( error , {
79+ extensions : {
80+ serviceName : 'upstream-service' ,
81+ variables : {
82+ firstName : 'foo' ,
83+ phoneNumber : 'bar'
84+ }
85+ }
86+ } ) ;
87+
88+ const log = new Logger ( {
89+ maskValuesOfKeys : [ "firstName" , "phoneNumber" ] ,
90+ type : "json"
91+ } )
92+
93+ log . info ( error ) ;
Original file line number Diff line number Diff line change @@ -200,9 +200,7 @@ export class BaseLogger<LogObj> {
200200 seen . push ( source ) ;
201201 }
202202
203- return isError ( source )
204- ? source // dont copy Error
205- : isBuffer ( source )
203+ return isBuffer ( source )
206204 ? source // dont copy Buffer
207205 : source instanceof Map ?
208206 new Map ( source )
@@ -212,6 +210,14 @@ export class BaseLogger<LogObj> {
212210 ? source . map ( ( item ) => this . _recursiveCloneAndMaskValuesOfKeys ( item , keys , seen ) )
213211 : source instanceof Date
214212 ? new Date ( source . getTime ( ) )
213+ : isError ( source )
214+ ? Object . getOwnPropertyNames ( source ) . reduce ( ( o , prop ) => {
215+ // mask
216+ o [ prop ] = keys . includes ( this . settings ?. maskValuesOfKeysCaseInsensitive !== true ? prop : prop . toLowerCase ( ) )
217+ ? this . settings . maskPlaceholder
218+ : this . _recursiveCloneAndMaskValuesOfKeys ( ( source as { [ key : string ] : unknown } ) [ prop ] , keys , seen ) ;
219+ return o ;
220+ } , source )
215221 : source != null && typeof source === "object"
216222 ? Object . getOwnPropertyNames ( source ) . reduce ( ( o , prop ) => {
217223 // mask
You can’t perform that action at this time.
0 commit comments