added stack trace to some logging
This commit is contained in:
@@ -127,6 +127,7 @@ router.post(
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Failed to send verification email", {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
userId: user.id,
|
||||
email: user.email,
|
||||
});
|
||||
@@ -645,6 +646,7 @@ router.post(
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Failed to resend verification email", {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
userId: user.id,
|
||||
email: user.email,
|
||||
});
|
||||
@@ -819,6 +821,7 @@ router.post(
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Failed to send password reset email", {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
userId: user.id,
|
||||
email: user.email,
|
||||
});
|
||||
@@ -960,6 +963,7 @@ router.post(
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Failed to send password changed notification", {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
userId: user.id,
|
||||
email: user.email,
|
||||
});
|
||||
|
||||
@@ -57,6 +57,7 @@ router.post("/:rentalId", authenticateToken, async (req, res) => {
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Error submitting condition check", {
|
||||
error: error.message,
|
||||
stack: error.stack,
|
||||
rentalId: req.params.rentalId,
|
||||
userId: req.user?.id,
|
||||
});
|
||||
@@ -85,6 +86,7 @@ router.get("/:rentalId", authenticateToken, async (req, res) => {
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Error fetching condition checks", {
|
||||
error: error.message,
|
||||
stack: error.stack,
|
||||
rentalId: req.params.rentalId,
|
||||
});
|
||||
|
||||
@@ -112,6 +114,7 @@ router.get("/:rentalId/timeline", authenticateToken, async (req, res) => {
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Error fetching condition check timeline", {
|
||||
error: error.message,
|
||||
stack: error.stack,
|
||||
rentalId: req.params.rentalId,
|
||||
});
|
||||
|
||||
@@ -139,6 +142,7 @@ router.get("/", authenticateToken, async (req, res) => {
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Error fetching available checks", {
|
||||
error: error.message,
|
||||
stack: error.stack,
|
||||
userId: req.user?.id,
|
||||
});
|
||||
|
||||
|
||||
@@ -33,6 +33,7 @@ router.post('/', authenticateToken, sanitizeInput, validateFeedback, async (req,
|
||||
} catch (emailError) {
|
||||
reqLogger.error("Failed to send feedback confirmation email", {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
userId: req.user.id,
|
||||
feedbackId: feedback.id
|
||||
});
|
||||
@@ -45,6 +46,7 @@ router.post('/', authenticateToken, sanitizeInput, validateFeedback, async (req,
|
||||
} catch (emailError) {
|
||||
reqLogger.error("Failed to send feedback notification to admin", {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
userId: req.user.id,
|
||||
feedbackId: feedback.id
|
||||
});
|
||||
|
||||
@@ -311,6 +311,7 @@ router.post('/posts', authenticateToken, async (req, res, next) => {
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Geocoding failed for item request", {
|
||||
error: error.message,
|
||||
stack: error.stack,
|
||||
zipCode
|
||||
});
|
||||
// Continue without coordinates - post will still be created
|
||||
@@ -450,6 +451,7 @@ router.post('/posts', authenticateToken, async (req, res, next) => {
|
||||
} catch (emailError) {
|
||||
logger.error("Failed to send item request notification", {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
recipientId: user.id,
|
||||
postId: post.id
|
||||
});
|
||||
@@ -1383,7 +1385,12 @@ router.delete('/admin/posts/:id', authenticateToken, requireAdmin, async (req, r
|
||||
}
|
||||
} catch (emailError) {
|
||||
// Log but don't fail the deletion
|
||||
console.error('Failed to send forum post deletion notification email:', emailError.message);
|
||||
logger.error('Failed to send forum post deletion notification email', {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
postId: post.id,
|
||||
authorId: post.authorId
|
||||
});
|
||||
}
|
||||
})();
|
||||
|
||||
@@ -1511,7 +1518,12 @@ router.delete('/admin/comments/:id', authenticateToken, requireAdmin, async (req
|
||||
}
|
||||
} catch (emailError) {
|
||||
// Log but don't fail the deletion
|
||||
console.error('Failed to send forum comment deletion notification email:', emailError.message);
|
||||
logger.error('Failed to send forum comment deletion notification email', {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
commentId: comment.id,
|
||||
authorId: comment.authorId
|
||||
});
|
||||
}
|
||||
})();
|
||||
|
||||
|
||||
@@ -372,10 +372,17 @@ router.post("/", authenticateToken, requireVerifiedEmail, async (req, res, next)
|
||||
itemWithOwner.owner,
|
||||
itemWithOwner
|
||||
);
|
||||
console.log(`First listing celebration email sent to owner ${req.user.id}`);
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.info("First listing celebration email sent", { ownerId: req.user.id });
|
||||
} catch (emailError) {
|
||||
// Log but don't fail the item creation
|
||||
console.error('Failed to send first listing celebration email:', emailError.message);
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error('Failed to send first listing celebration email', {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
ownerId: req.user.id,
|
||||
itemId: item.id
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -571,10 +578,15 @@ router.delete("/admin/:id", authenticateToken, requireAdmin, async (req, res, ne
|
||||
item,
|
||||
reason.trim()
|
||||
);
|
||||
console.log(`Item deletion notification email sent to owner ${item.ownerId}`);
|
||||
logger.info("Item deletion notification email sent", { ownerId: item.ownerId, itemId: item.id });
|
||||
} catch (emailError) {
|
||||
// Log but don't fail the deletion
|
||||
console.error('Failed to send item deletion notification email:', emailError.message);
|
||||
logger.error('Failed to send item deletion notification email', {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
ownerId: item.ownerId,
|
||||
itemId: item.id
|
||||
});
|
||||
}
|
||||
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
|
||||
@@ -297,6 +297,7 @@ router.post('/', authenticateToken, async (req, res, next) => {
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Failed to send message notification email", {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
messageId: message.id,
|
||||
receiverId: receiverId
|
||||
});
|
||||
@@ -436,6 +437,7 @@ router.get('/images/:filename',
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error('Image serve failed', {
|
||||
error: error.message,
|
||||
stack: error.stack,
|
||||
filename: req.params.filename
|
||||
});
|
||||
res.status(500).json({ error: 'Failed to load image' });
|
||||
|
||||
@@ -466,6 +466,7 @@ router.put("/:id/status", authenticateToken, async (req, res) => {
|
||||
"Failed to send rental approval confirmation email to owner",
|
||||
{
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
rentalId: updatedRental.id,
|
||||
ownerId: updatedRental.ownerId,
|
||||
}
|
||||
@@ -505,6 +506,7 @@ router.put("/:id/status", authenticateToken, async (req, res) => {
|
||||
"Failed to send rental confirmation email to renter",
|
||||
{
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
rentalId: updatedRental.id,
|
||||
renterId: updatedRental.renterId,
|
||||
}
|
||||
@@ -568,6 +570,7 @@ router.put("/:id/status", authenticateToken, async (req, res) => {
|
||||
"Failed to send rental approval confirmation email to owner",
|
||||
{
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
rentalId: updatedRental.id,
|
||||
ownerId: updatedRental.ownerId,
|
||||
}
|
||||
@@ -607,6 +610,7 @@ router.put("/:id/status", authenticateToken, async (req, res) => {
|
||||
"Failed to send rental confirmation email to renter",
|
||||
{
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
rentalId: updatedRental.id,
|
||||
renterId: updatedRental.renterId,
|
||||
}
|
||||
@@ -1112,6 +1116,7 @@ router.post("/:id/cancel", authenticateToken, async (req, res, next) => {
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Failed to send cancellation emails", {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
rentalId: updatedRental.id,
|
||||
cancelledBy: updatedRental.cancelledBy,
|
||||
});
|
||||
@@ -1206,6 +1211,7 @@ router.post("/:id/mark-return", authenticateToken, async (req, res, next) => {
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Failed to send rental completion emails", {
|
||||
error: emailError.message,
|
||||
stack: emailError.stack,
|
||||
rentalId,
|
||||
});
|
||||
}
|
||||
@@ -1294,6 +1300,7 @@ router.post("/:id/mark-return", authenticateToken, async (req, res, next) => {
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Error marking return status", {
|
||||
error: error.message,
|
||||
stack: error.stack,
|
||||
rentalId: req.params.id,
|
||||
userId: req.user.id,
|
||||
});
|
||||
@@ -1376,6 +1383,7 @@ router.post("/:id/report-damage", authenticateToken, async (req, res, next) => {
|
||||
const reqLogger = logger.withRequestId(req.id);
|
||||
reqLogger.error("Error reporting damage", {
|
||||
error: error.message,
|
||||
stack: error.stack,
|
||||
rentalId: req.params.id,
|
||||
userId: req.user.id,
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user