integrated the new logger across the entire API

This commit is contained in:
2025-12-31 21:45:38 -05:00
parent 510d4a13ac
commit 9f895a202d
10 changed files with 670 additions and 125 deletions

View File

@@ -29,8 +29,15 @@ router.get('/', [requireLogin, requireMemberState(MemberState.Member)], async (r
END AS on_loa
FROM view_member_rank_unit_status_latest v;`);
return res.status(200).json(result);
} catch (err) {
console.error('Error fetching users:', err);
} catch (error) {
logger.error(
'app',
'Failed to get all users',
{
error: error instanceof Error ? error.message : String(error),
stack: error instanceof Error ? error.stack : undefined,
}
);
return res.status(500).json({ error: 'Failed to fetch users' });
}
});
@@ -92,7 +99,14 @@ router.get('/settings', [requireLogin], async (req: Request, res: Response) => {
let output = await getMemberSettings(user);
res.status(200).json(output);
} catch (error) {
console.error(error);
logger.error(
'app',
'Failed to get member settings',
{
error: error instanceof Error ? error.message : String(error),
stack: error instanceof Error ? error.stack : undefined,
}
);
res.status(500).json(error);
}
})
@@ -102,10 +116,17 @@ router.put('/settings', [requireLogin], async (req: Request, res: Response) => {
let user = req.user.id;
let settings: memberSettings = req.body;
await setUserSettings(user, settings);
logger.info('app', 'User updated profile settings', { user: user })
res.sendStatus(200);
} catch (error) {
console.error(error);
res.status(500).json(error);
logger.error(
'app',
'Failed to update user settings',
{
error: error instanceof Error ? error.message : String(error),
stack: error instanceof Error ? error.stack : undefined,
}
); res.status(500).json(error);
}
})
@@ -114,7 +135,14 @@ router.get('/lite', [requireLogin], async (req: Request, res: Response) => {
let out = await getAllMembersLite();
res.status(200).json(out);
} catch (error) {
console.error(error);
logger.error(
'app',
'Failed to get lite users',
{
error: error instanceof Error ? error.message : String(error),
stack: error instanceof Error ? error.stack : undefined,
}
);
res.status(500).json(error);
}
})
@@ -125,7 +153,14 @@ router.post('/lite/bulk', async (req: Request, res: Response) => {
let out = await getMembersLite(ids);
res.status(200).json(out);
} catch (error) {
console.error(error);
logger.error(
'app',
'Failed to get batch lite users',
{
error: error instanceof Error ? error.message : String(error),
stack: error instanceof Error ? error.stack : undefined,
}
);
res.status(500).json(error);
}
})
@@ -137,22 +172,36 @@ router.post('/full/bulk', async (req: Request, res: Response) => {
let out = await getMembersFull(ids);
res.status(200).json(out);
} catch (error) {
console.error(error);
res.status(500).json(error);
logger.error(
'app',
'Failed to get batch full users',
{
error: error instanceof Error ? error.message : String(error),
stack: error instanceof Error ? error.stack : undefined,
}
); res.status(500).json(error);
}
})
router.get('/:id', [requireLogin], async (req, res) => {
const userId = req.params.id;
try {
const userId = req.params.id;
const result = await pool.query('SELECT * FROM view_member_rank_unit_status_latest WHERE id = $1;', [userId]);
if (result.rows.length === 0) {
return res.status(404).json({ error: 'User not found' });
}
return res.status(200).json(result.rows[0]);
} catch (err) {
console.error('Error fetching user:', err);
return res.status(500).json({ error: 'Failed to fetch user' });
} catch (error) {
logger.error(
'app',
'Failed to get user',
{
user: userId,
error: error instanceof Error ? error.message : String(error),
stack: error instanceof Error ? error.stack : undefined,
}
); return res.status(500).json({ error: 'Failed to fetch user' });
}
});