diff --git a/.gitignore b/.gitignore index 07daba5..7e67d39 100644 --- a/.gitignore +++ b/.gitignore @@ -25,3 +25,4 @@ tmp package-lock.json yarn.lock test +logs/ diff --git a/api/app.js b/api/app.js index d66ec28..626ee77 100644 --- a/api/app.js +++ b/api/app.js @@ -1,8 +1,23 @@ const express = require(`express`); +const pino = require(`pino`); +const pinoHttp = require("pino-http"); const app = express(); const passport = require(`passport`); const { users } = require(`./controllers`); +/** + * logging + */ +let logger = pino(); +if (process.env.name === `test`) { + logger = pino(pino.destination({ dest: `../logs/api.json`, sync: false })); +} +app.use( + pinoHttp({ + logger: logger, + }) +); + /** * Configure Passport */ @@ -80,9 +95,7 @@ app.use(function (err, req, res, next) { if (res.headersSent) { return next(err); } - if (err.code && err.code === 500) { - console.log(err); - } + req.log.error(err); res.status(err.code || 500); res.json({ error: err.message || `Internal Server Error - "${err.message}"`, diff --git a/api/controllers/users/index.js b/api/controllers/users/index.js index 3cf86db..451cbd7 100644 --- a/api/controllers/users/index.js +++ b/api/controllers/users/index.js @@ -38,7 +38,7 @@ const register = async (req, res) => { * @param {*} res */ const login = async (req, res) => { - validation.validateOrThrow(schemas.login, res.body); + validation.validateOrThrow(schemas.login, req.body); let user = await users.getByEmail(req.body.email); diff --git a/api/models/users/index.js b/api/models/users/index.js index d8dc495..62046e9 100644 --- a/api/models/users/index.js +++ b/api/models/users/index.js @@ -63,8 +63,8 @@ const getById = async (id) => { * @param {*} user */ const convertToPublicFormat = (user = {}) => { - user.email = user.hk || null; - user.id = user.sk2 || null; + user.email = user.email || user.hk || null; + user.id = user.id || user.sk2 || null; if (user.hk) { delete user.hk; } diff --git a/api/package.json b/api/package.json index 4c0153c..dd9cfa4 100644 --- a/api/package.json +++ b/api/package.json @@ -11,6 +11,7 @@ "jsonwebtoken": "^8.5.1", "passport": "^0.4.1", "passport-jwt": "^4.0.0", + "pino-http": "^5.3.0", "shortid": "^2.2.15" }, "devDependencies": {