Craig Fletcher 4 anni fa
parent
commit
9cc986abab
3 ha cambiato i file con 11 aggiunte e 16 eliminazioni
  1. 2 2
      src/easy-api.js
  2. 6 4
      src/modules/check-schema.js
  3. 3 10
      src/modules/logging.js

+ 2 - 2
src/easy-api.js

@@ -13,10 +13,10 @@ function registerRoute(db, server, log) {
     if (route.schema) {
       switch (route.type) {
         case 'get':
-          server.get(route.route, checkParams(route.schema), route.handler);
+          server.get(route.route, checkParams(route.schema, log, route.route), route.handler);
           break;
         case 'post':
-          server.post(route.route, checkReqBody(route.schema), route.handler);
+          server.post(route.route, checkReqBody(route.schema, log, route.route), route.handler);
           break;
         default:
           throw new Error();

+ 6 - 4
src/modules/check-schema.js

@@ -1,22 +1,24 @@
-export function checkReqBody(schema) {
+export function checkReqBody(schema, log, route) {
   return function checkValid(req, res, next) {
-    schema.isValid(req.body).then((valid) => {
+    schema.isValid(req.body).then(valid => {
       if (valid) {
         next();
       } else {
         res.send('Incorrect request');
+        log.debug(`Invalid request for route: ${route}, ${JSON.stringify(req.params)}`);
       }
     });
   };
 }
 
-export function checkParams(schema) {
+export function checkParams(schema, log, route) {
   return function checkValid(req, res, next) {
-    schema.isValid(req.params).then((valid) => {
+    schema.isValid(req.params).then(valid => {
       if (valid) {
         next();
       } else {
         res.send('Incorrect request');
+        log.debug(`Invalid request for route: ${route}, ${JSON.stringify(req.params)}`);
       }
     });
   };

+ 3 - 10
src/modules/logging.js

@@ -1,24 +1,17 @@
 import winston from 'winston';
 import appRoot from 'app-root-path';
 
-const timestamp = Math.floor(new Date() / 1000);
-
 const options = {
   file: {
     level: 'info',
-    filename: `${appRoot}/logs/app-${timestamp}.log`,
+    filename: `${appRoot}/logs/app.log`,
     handleExceptions: true,
-    json: true,
-    maxsize: 5242880, // 5MB
-    maxFiles: 5,
-    colorize: false,
+    format: winston.format.combine(winston.format.timestamp(), winston.format.json()),
   },
   console: {
     level: 'debug',
     handleExceptions: true,
-    json: false,
-    colorize: true,
-    format: winston.format.combine(winston.format.colorize(), winston.format.simple()),
+    format: winston.format.combine(winston.format.colorize(), winston.format.splat(), winston.format.simple()),
   },
 };