From cb80ea122f64d7d36ac6e164c1a7f71a6befa361 Mon Sep 17 00:00:00 2001 From: Alex Holliday Date: Sun, 15 Sep 2024 09:21:55 +0800 Subject: [PATCH] Add service name and method name to errors in user module --- Server/db/mongo/modules/userModule.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/Server/db/mongo/modules/userModule.js b/Server/db/mongo/modules/userModule.js index 1a5c19f36..37446623e 100644 --- a/Server/db/mongo/modules/userModule.js +++ b/Server/db/mongo/modules/userModule.js @@ -5,6 +5,7 @@ const { GenerateAvatarImage } = require("../../../utils/imageProcessing"); const DUPLICATE_KEY_CODE = 11000; // MongoDB error code for duplicate key const { ParseBoolean } = require("../../../utils/utils"); +SERVICE_NAME = "userModule"; /** * Insert a User @@ -44,8 +45,10 @@ const insertUser = async (userData, imageFile) => { .select("-profileImage"); // .select() doesn't work with create, need to save then find } catch (error) { if (error.code === DUPLICATE_KEY_CODE) { - throw new Error(errorMessages.DB_USER_EXISTS); + error.message = errorMessages.DB_USER_EXISTS; } + error.service = SERVICE_NAME; + error.method = "insertUser"; throw error; } }; @@ -74,6 +77,8 @@ const getUserByEmail = async (email) => { throw new Error(errorMessages.DB_USER_NOT_FOUND); } } catch (error) { + error.service = SERVICE_NAME; + error.method = "getUserByEmail"; throw error; } }; @@ -123,6 +128,8 @@ const updateUser = async (req, res) => { .select("-profileImage"); return updatedUser; } catch (error) { + error.service = SERVICE_NAME; + error.method = "updateUser"; throw error; } }; @@ -143,6 +150,8 @@ const deleteUser = async (userId) => { } return deletedUser; } catch (error) { + error.service = SERVICE_NAME; + error.method = "deleteUser"; throw error; } }; @@ -154,6 +163,8 @@ const getAllUsers = async (req, res) => { .select("-profileImage"); return users; } catch (error) { + error.service = SERVICE_NAME; + error.method = "getAllUsers"; throw error; } }; @@ -163,6 +174,8 @@ const logoutUser = async (userId) => { await UserModel.updateOne({ _id: userId }, { $unset: { authToken: null } }); return true; } catch (error) { + error.service = SERVICE_NAME; + error.method = "logoutUser"; throw error; } };