dev.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. const log = new (require('./core/AppLogger'))().log;//singleton
  2. function webpackDevMiddleware(app) {
  3. const webpack = require('webpack');
  4. const wpConfig = require('../build/webpack.dev.config');
  5. const compiler = webpack(wpConfig);
  6. const devMiddleware = require('webpack-dev-middleware');
  7. app.use(devMiddleware(compiler, {
  8. publicPath: wpConfig.output.publicPath,
  9. stats: {colors: true}
  10. }));
  11. let hotMiddleware = require('webpack-hot-middleware');
  12. app.use(hotMiddleware(compiler, {
  13. log: log
  14. }));
  15. }
  16. function logQueries(app) {
  17. app.use(function(req, res, next) {
  18. const start = Date.now();
  19. log(`${req.method} ${req.originalUrl} ${JSON.stringify(req.body ? req.body : '').substr(0, 4000)}`);
  20. //log(`${JSON.stringify(req.headers, null, 2)}`)
  21. res.once('finish', () => {
  22. log(`${Date.now() - start}ms`);
  23. });
  24. next();
  25. });
  26. }
  27. function logErrors(app) {
  28. app.use(function(err, req, res, next) {// eslint-disable-line no-unused-vars
  29. log(LM_ERR, err.stack);
  30. res.status(500).send(err.stack);
  31. });
  32. }
  33. module.exports = {
  34. webpackDevMiddleware,
  35. logQueries,
  36. logErrors
  37. };