log4js — конфиденциальные сведения о маске узла при регистрации

#node.js #logging #log4js-node

#node.js #ведение журнала #log4js-узел

Вопрос:

Может ли кто-нибудь помочь в маскировании конфиденциальных полей с помощью log4js в node? Нашел похожие фильтры в winston logger, но если что-то подобное доступно в log4js, это было бы полезно.

Ответ №1:

Я нашел какое-то обходное решение.

Например, если вы хотите использовать шаблон входа в систему: «%r %p %c %m%n», где %r — время, %p — уровень журнала, %c — категория журнала, %m — данные журнала, %n — новая строка.

И если вы хотите замаскировать некоторые конфиденциальные данные в%m, вы можете сделать это таким образом:

Добавьте макет в свой appender:

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

а затем реализовать функцию

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

Комментарии:

1. есть идеи, как замаскировать данные в winston?