Подтвердить что ты не робот

Ведение паролей к файлу

Может ли кто-нибудь указать пример настройки sails.js для входа в файл?

Кажется, что это должно быть просто, но мне сложно найти примеры в Интернете.

Я ищу изменения в файлах config/log.js или config/sockets.js.

4b9b3361

Ответ 1

Согласно исходный код, для v0.9.x, вам просто нужно установить filePath в config/log.js:

module.exports = {
  log: {
    level: 'info',
    filePath: 'application.log'
  }
};

Ответ 2

Запись в файл не работает из коробки. Вы должны вызвать функциональность в библиотеках на два уровня вниз. См. Документацию для winston.

сначала установите winston так:

$ npm install winston

Затем отрегулируйте config/log.js, чтобы выглядеть следующим образом

var winston = require('winston');

/*see the documentation for Winston:  https://github.com/flatiron/winston */
var logger = new(winston.Logger)({
  transports: [
    new (winston.transports.Console)({}),
    new (winston.transports.File)({
      filename: 'logfile.log',
      level: 'verbose',
      json: false,
      colorize: false
    })
  ]
});

module.exports.log = {
  /***************************************************************************
   *                                                                          *
   * Valid `level` configs: i.e. the minimum log level to capture with        *
   * sails.log.*()                                                            *
   *                                                                          *
   * The order of precedence for log levels from lowest to highest is:        *
   * silly, verbose, info, debug, warn, error                                 *
   *                                                                          *
   * You may also set the level to "silent" to suppress all logs.             *
   *                                                                          *
   ***************************************************************************/

  level: 'silly',
  colorize: false,
  custom: logger
};

Ответ 3

Для версий Winston 3.xx

@djsadinoff ответ не работает.

Вместо этого сделайте:

 $ npm install winston

Замените файл config/log.js следующим кодом в Sails.js

    var winston = require('winston');
    const logger = winston.createLogger({
      level: 'silly',
      format: winston.format.json(),
      transports: [
        //
        // - Write to all logs with level 'info' and below to 'combined.log'
        // - Write all logs error (and below) to 'error.log'.
        //
        new winston.transports.File({ filename: 'error.log', level: 'error' }),
        new winston.transports.File({ filename: 'sails.log' })
      ]
    });

    //
    // If we're not in production then log to the 'console' with the format:
    // '${info.level}: ${info.message} JSON.stringify({ ...rest }) '
    //
    if (process.env.NODE_ENV !== 'production') {
      logger.add(new winston.transports.Console({
        format: winston.format.simple()
      }));
    }

    module.exports.log = {
      /***************************************************************************
      *                                                                          *
      * Valid 'level' configs: i.e. the minimum log level to capture with        *
      * sails.log.*()                                                            *
      *                                                                          *
      * The order of precedence for log levels from lowest to highest is:        *
      * silly, verbose, info, debug, warn, error                                 *
      *                                                                          *
      * You may also set the level to "silent" to suppress all logs.             *
      *                                                                          *
      ***************************************************************************/

      // Pass in our custom logger, and pass all log levels through.
      custom: logger,
      level: 'silly',

      // Disable captain log so it doesn't prefix or stringify our meta data.
      inspect: false
    };

Тогда делай

$ sails lift