Как преобразовать время файла журнала в этом формате "23-May-17 12:05:37" в пакете log4js, используя узел js

Я пытаюсь изменить время записи в этом формате даты и времени [2017-05-23 12: 05: 37.327] на это 23 мая-17 12:05:37. Я использую этот пакет: https://www.npmjs.com/package/log4js

Вот конфигурация файла node4js.

     {
       "appenders": [
      {

        "type": "file",
       "filename": "logs/v_1_0_9.log",
       "maxLogSize":1073741824,
       "backups": 10,
       "pattern": "%d{dd/MM hh:mm} %-5p %m"

        "category": "logger"
        }
      ],
            "replaceConsole": true
      }

Вывод моего кода

[2017-05-24 15:57:00.924] [INFO] logger - tetsting

но выше вывод не мой ожидаемый.

Ожидаемый результат здесь:

[23-May-17 12:05:37] [INFO] logger - tetsting

Пожалуйста, помогите Спасибо заранее.

1 ответ

Решение

Вот шлюха:

const date = new Date('2017-05-23 12:05:37.327').toString('dd-MMM-yy hh:mm:ss')

РЕДАКТИРОВАТЬ: Извините, вот решение для log4js:

var log4js = require('log4js');
var monthNames = [
  "January", "February", "March",
  "April", "May", "June", "July",
  "August", "September", "October",
  "November", "December"
];

log4js.configure({
  appenders: [{
    type: "console",
    layout: {
      type: "pattern",
      pattern: "%x{ln} %-5p %m",
      tokens: {
        ln: function (data) {
          const date = new Date();
          var day = date.getDate();
          var monthIndex = date.getMonth();
          var year = date.getFullYear();
          var hours = date.getHours();
          var minutes = date.getMinutes();
          var seconds = date.getSeconds();
          return day + '-' + monthNames[monthIndex] + '-' + year + ' ' + hours + ':' + minutes + ':'
            + seconds;
        }
      }
    }
  }],
});

var logger = log4js.getLogger('cheese');
logger.debug('test');

Выход: 29-May-2017 14:39:4 DEBUG test

РЕДАКТИРОВАТЬ 2: conf.json:

{
  "appenders": [
    {
      "type": "console",
      "layout": {
        "type": "pattern",
        "pattern": "%x{ln} %-5p %m",
        "tokens": {}
      }
    }
  ]
}

logger.js:

var log4js = require('log4js');
var config = require('./conf.json')
var monthNames = [
  "January", "February", "March",
  "April", "May", "June", "July",
  "August", "September", "October",
  "November", "December"
];
config.appenders[0].layout.tokens.ln = function () {
  const date = new Date();
  var day = date.getDate();
  var monthIndex = date.getMonth();
  var year = date.getFullYear();
  var hours = date.getHours();
  var minutes = date.getMinutes();
  var seconds = date.getSeconds();
  return day + '-' + monthNames[monthIndex] + '-' + year + ' ' + hours + ':' + minutes + ':'
    + seconds;
};
log4js.configure(config);

var logger = log4js.getLogger('cheese');
logger.debug('test');
Другие вопросы по тегам