Как исправить ошибку конфигурации Protractor, log4 js? - PullRequest
0 голосов
/ 21 апреля 2020

Я пытаюсь запустить транспортир тестов. Но столкнулся с проблемой с log4 js. Я npm установил log4 js. Конфигурация перед запуском выглядит правильно? Что-нибудь, что я должен изменить в формате для текущей версии log4 js?

Ниже приведена ошибка:

Error: Problem with log4js configuration: ({
  appenders: {
    out: {
      type: 'log4js-protractor-appender',
      category: 'protractorLog4js'
    },
    app: {
      type: 'file',
      filename: './logs/ExecutionLog.log',
      category: 'protractorLog4js'
    }
  },
  categories: { default: { appenders: [ 'out', 'app' ], level: 'info' } }
}) - appender "out" is not valid (type "log4js-protractor-appender" could not be found)
    at C:\Project\PrjectName\node_modules\log4js\lib\configuration.js:31:13
    at Array.forEach (<anonymous>)
    at Object.throwExceptionIf (C:\Project\PrjectName\node_modules\log4js\lib\configuration.js:29:9)
    at createAppender (C:\Project\PrjectName\node_modules\log4js\lib\appenders\index.js:47:17)
    at C:\Project\PrjectName\node_modules\log4js\lib\appenders\index.js:77:25
    at Array.forEach (<anonymous>)
    at setup (C:\Project\PrjectName\node_modules\log4js\lib\appenders\index.js:75:33)
    at C:\Project\PrjectName\node_modules\log4js\lib\configuration.js:46:33
    at Array.forEach (<anonymous>)
    at Object.configure (C:\Project\PrjectName\node_modules\log4js\lib\configuration.js:46:13)
npm ERR! Test failed.  See above for more details.

Это моя конфигурация перед запуском в конфигурационном файле

beforeLaunch:function(){
          log4js.configure({
            appenders: {
              out:{ type: 'log4js-protractor-appender'},
              app:{ type: "file",
                    filename: './logs/ExecutionLog.log'}
              },
            categories: {
                    default: { appenders: [ 'out', 'app' ], level: 'info' }
            }
            });
        },

Спасибо

1 Ответ

1 голос
/ 22 апреля 2020

типы приложений, которые поддерживает log4 js:

export type Appender = CategoryFilterAppender
    | ConsoleAppender
    | FileAppender
    | SyncfileAppender
    | DateFileAppender
  | LogLevelFilterAppender
  | NoLogFilterAppender
    | MultiFileAppender
    | MultiprocessAppender
    | RecordingAppender
    | StandardErrorAppender
    | StandardOutputAppender
    | CustomAppender;

Если вы удалите «appender» из имени, вы получите поддерживаемый тип, например: console, file, multifile ... et c

Вот примерная конфигурация.

const log4js_config: Configuration = {
        appenders: {
            consoleErrors: {
                type: 'logLevelFilter',
                appender: 'console',
                level: 'error'
            },
            console: {
                type: 'console'
            },
        },
        categories: {
            default: { appenders: [ 'console', 'consoleErrors' ], level: 'debug' }
        }
    };

const Log4js = require('log4js');
log4js.configure(LOG4JS_CONFIGURATION);

Таким образом, у вас есть два типа дополнений в категории по умолчанию.

  • console appender будет регистрировать все в консоли независимо от уровня.
  • consoleErrors переопределяет другие правила для консоли и фильтрует только сообщения об ошибках или более поздние версии для консоли.

Подробнее о конфигурации log4 js вы можете прочитать в: https://github.com/log4js-node/log4js-node

Примеры работы вспомогательных устройств и их настройки: https://github.com/log4js-node/log4js-node/tree/master/examples

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...