Эх сурвалжийг харах

Доработки devModule

Book Pauk 6 жил өмнө
parent
commit
b3b32034c5
2 өөрчлөгдсөн 27 нэмэгдсэн , 14 устгасан
  1. 13 3
      server/dev.js
  2. 14 11
      server/index.js

+ 13 - 3
server/dev.js

@@ -15,18 +15,28 @@ function webpackDevMiddleware(app) {
     app.use(hotMiddleware(compiler, {
     app.use(hotMiddleware(compiler, {
         log: log
         log: log
     }));
     }));
+}
 
 
+function logQueries(app) {
     app.use(function(req, res, next) {
     app.use(function(req, res, next) {
         const start = Date.now();
         const start = Date.now();
-        const params = (req.body ? req.body.params : '');
-        log(`${req.method} ${req.originalUrl} ${req.body.params}`);
+        log(`${req.method} ${req.originalUrl} ${JSON.stringify(req.body)}`);
         res.once('finish', () => {
         res.once('finish', () => {
             log(`${Date.now() - start}ms`);
             log(`${Date.now() - start}ms`);
         });
         });
         next();
         next();
+    });
+}
+
+function logErrors(app) {
+    app.use(function(err, req, res, next) {
+        log(LM_ERR, err.stack);
+        res.status(500).send(err.stack);
     });    
     });    
 }
 }
 
 
 module.exports = {
 module.exports = {
-    webpackDevMiddleware
+    webpackDevMiddleware,
+    logQueries,
+    logErrors
 };
 };

+ 14 - 11
server/index.js

@@ -16,26 +16,29 @@ async function main() {
     log('Opening database');
     log('Opening database');
     await connPool.init();
     await connPool.init();
 
 
-    app.use(express.json());
-
+    let devModule = undefined;
     if (config.branch == 'development') {
     if (config.branch == 'development') {
-        const devFileName = './dev.js'; //ignored by pkg
-        require(devFileName).webpackDevMiddleware(app);
+        const devFileName = './dev.js'; //ignored by pkg -50Mb executable size
+        devModule = require(devFileName);
+        devModule.webpackDevMiddleware(app);
     }
     }
 
 
     app.use(compression({ level: 1 }));
     app.use(compression({ level: 1 }));
+    app.use(express.json());
+    if (devModule)
+        devModule.logQueries(app);
     app.use(express.static(config.publicDir, { maxAge: '30d' }));
     app.use(express.static(config.publicDir, { maxAge: '30d' }));
 
 
     require('./routes').initRoutes(app, connPool, config);
     require('./routes').initRoutes(app, connPool, config);
 
 
-    app.use(function(err, req, res, next) {
-        log(LM_ERR, err.stack);
-        if (config.branch == 'development') {
-            res.status(500).send(err.stack);
-        } else {
+    if (devModule) {
+        devModule.logErrors(app);
+    } else {
+        app.use(function(err, req, res, next) {
+            log(LM_ERR, err.stack);
             res.sendStatus(500);
             res.sendStatus(500);
-        }
-    });
+        });
+    }
 
 
     app.listen(config.port, config.ip, function() {
     app.listen(config.port, config.ip, function() {
         log('Server is ready');
         log('Server is ready');