Логирование на стороне сервера Node JS

NozmaD

Администратор
Команда форума
Администратор
Сообщения
166
Баллы
208
Один из способов логирования на стороне сервера Node JS.
Создаем файл filename.js,

Создаем файл index.js, в который подключаем filename.js
JavaScript:
require('./filename.js')

Далее в файл filename.js так же подключаем 2 необходимых нам модуля:
Модуль File System и модуль Path, который, поможет файловой системе найти наш файл console.log

JavaScript:
const fs = require('fs');
const path = require('path');
Далее вставляем основной код эвента для логирования:
JavaScript:
mp.events.add('SystemWriteLog', (type, newdata) => {
  var date = new Date();
  var year = date.getUTCFullYear();
  var month = date.getUTCMonth();
      month = month + 1;
      if ( month < 10 ) month = '0' + month
  var day = date.getUTCDate();
      if ( day < 10 ) day = '0' + day
  var hour = date.getUTCHours();
      if ( hour < 10 ) hour = '0' + hour
  var minute = date.getUTCMinutes();
      if ( minute < 10 ) minute = '0' + minute

  var time = hour + ':' + minute
 
  let messagetype;
  switch (type) {
      case 0;
        messagetype = '[ GENERAL ]'
        break
      ....Типы сообщений
  }
      
  if (fs.existsSync('../console.log') === true ) {
    fs.readFile(path.join(__dirname, `../console.log`), (err, data) => {
      if (err) throw err;
        fs.writeFile(path.join(__dirname, `../console.log`), `${data}\r\n[ ${year}/${month}/${day} ${time} ] ${messagetype} ${newdata}`, (err) => {
                     if (err) throw err;
        })
    })
  }
})

Таким образом при вызове эвента SystemWriteLog вот так:
JavaScript:
mp.events.call('SystemWriteLog', 0, 'Hello Node JS')
Мы получим запись в console.log:

[ 2018/01/10 00:36 ] [ GENERAL ] Hello Node JS
При следующем вызове запись будет произведена на следующую строку.

P.S. Данный мануал подойдет для общего развития.
А систему эту можно организовать при помощи модуля winston:

Пожалуйста, Войдите или Зарегистрируйтесь, что бы увидеть скрытый контент.

 
Автор
Paulo Vanetti
Источник
Перейти
Верх