Морган регистратор неправильно записывает дату или время

Регистратор в моем приложении node.js неправильно записывает дату или время. Я использую Морган в качестве модуля регистрации и момент-часовой пояс, чтобы правильно записать дату и время в моем часовом поясе (тихоокеанское стандартное время). Вчера он записывал дату и время в соответствии с форматом, который я установил, но сегодня это не так.

Вот код для токена даты Моргана, использующего момент-часовой пояс:

morgan.token('date', (req, res, tz) => {
    return moment().tz("America/Los_Angeles").format('YYYY-MM-DD, HH:mm a');
});

А вот код, в котором я использую маркер даты в morgan.format():

morgan.format('logFormat', '[:date[America/Los_Angeles]], :resource, :remote-addr, :status, :response-time ms');

Вчера мои запросы регистрировались в следующем формате:

[2018-07-31, 14:57 вечера], шумиха,::1, 401, 104,144 мс

Сегодня все регистрируется так:

[ГГГГ-ММ-ДД, ЧЧ: мм а], шутка,::1, 401, 45,995 мс

Единственное изменение, которое я сделал, - добавление новых маршрутов в приложение, но каждое промежуточное ПО для ведения журналов регистрирует отдельный файл в зависимости от используемого маршрута. Кто-нибудь знает, почему мой токен даты больше не отображает дату?

2 ответа

Решение

morgan.token('date'... расстаться с MomentJS, регистрация часового пояса выглядит хорошо для меня!

Бьюсь об заклад, это синтаксическая ошибка в пользовательском формате токена. Если вам не нужно передавать параметр, в соответствии с документами Моргана, вы можете использовать собственные форматы токенов просто с точкой с запятой, например, так :date, Поэтому попробуйте просто:

morgan.format('logFormat', ':date, :resource, :remote-addr, :status, :response-time ms');

Этот вопрос помогает мне решить мою проблему. Спасибо!

Это работает как раз для меня:

      morgan.token('date', (req, res, tz) => {
return moment().tz(tz).format('YYYY-MM-DD HH:mm:ss');
})
morgan.format('myformat', :date[Asia/Taipei] | :method | :url | :response-time ms');
    
app.use(morgan('myformat'))
Другие вопросы по тегам