Отключить все консольные сообщения в Express js - PullRequest
0 голосов
/ 14 марта 2019

Я использовал много console.log () в моем приложении Express js. Как я могу отключить все эти сообщения console.log, используя скрипт npm? Например: "nodemon index.js DEBUG = false"

Ответы [ 2 ]

1 голос
/ 14 марта 2019

Использование console.log() печати сообщений журнала на терминале является обычной практикой при разработке. Но эти функции синхронны , когда конечным пунктом является терминал или файл, поэтому они не подходят для производства .

Вместо использования console.log() используйте специальный модуль отладки, такой как debug .

Тем не менее, простой и легкий подход - поместить этот код в функцию обратного вызова вашего app.listen():

// server.js

app.listen(3000, () => {

  if(!process.env.DEBUG){
     console.log = function(){}
  }

 // when DEBUG = false all console.log will not log
  console.log('server started')
});


Для получения дополнительной информации Рекомендации Express.js: производительность и надежность ознакомьтесь с их официальной документацией.

0 голосов
/ 14 марта 2019

вы можете использовать этот плагин, который удаляет все консоли. * Звонки.

npm install babel-plugin-transform-remove-console --save

добавить файл .babelrc с этими настройками

{
  "env": {
    "production": {
      "plugins": ["transform-remove-console"]
    }
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...