0

Could anyone help on masking sensitive fields using log4js in node? Found similar filters in winston logger but if something similar is available in log4js, it would be helpful.

dejavu
  • 3,236
  • 7
  • 35
  • 60

1 Answers1

1

I found some workaround.

For example, if you want to have log in pattern: "%r %p %c %m%n" where %r - time, %p - log level, %c - log category, %m - log data, %n - newline.

And if you want to mask some sensitive data in %m, you can do it in this way:

Add layout to your appender:

    layout: {
         type    : "pattern",
         pattern : "%r %p %c {%x{body}}%n",
         tokens: {
             body : function() {
                 var msg = arguments[0].data[0];
                 return maskSensitiveData(msg);
             }
         }
     }

and then implement function

var maskSensitiveData = function(msg) {
    ...
}