From 4f85243815fb78cbf33eb17109940b5d9c5c00a6 Mon Sep 17 00:00:00 2001 From: jackiettran <41605212+jackiettran@users.noreply.github.com> Date: Thu, 25 Dec 2025 19:05:12 -0500 Subject: [PATCH] more stack traces --- backend/routes/health.js | 2 +- backend/routes/rentals.js | 9 ++++++--- backend/services/payoutService.js | 8 ++++---- backend/services/s3Service.js | 2 +- backend/services/stripeService.js | 21 +++++++++++---------- 5 files changed, 23 insertions(+), 19 deletions(-) diff --git a/backend/routes/health.js b/backend/routes/health.js index 29162e8..c25beba 100644 --- a/backend/routes/health.js +++ b/backend/routes/health.js @@ -109,7 +109,7 @@ router.get("/ready", async (req, res) => { timestamp: new Date().toISOString(), }); } catch (error) { - logger.error("Readiness check failed", { error: error.message }); + logger.error("Readiness check failed", { error: error.message, stack: error.stack }); res.status(503).json({ status: "not_ready", timestamp: new Date().toISOString(), diff --git a/backend/routes/rentals.js b/backend/routes/rentals.js index c5e3258..498e259 100644 --- a/backend/routes/rentals.js +++ b/backend/routes/rentals.js @@ -321,7 +321,8 @@ router.post("/", authenticateToken, requireVerifiedEmail, async (req, res) => { // Log error but don't fail the request const reqLogger = logger.withRequestId(req.id); reqLogger.error("Failed to send rental request email", { - error: emailError, + error: emailError.message, + stack: emailError.stack, rentalId: rental.id, ownerId: rentalWithDetails.ownerId, }); @@ -342,7 +343,8 @@ router.post("/", authenticateToken, requireVerifiedEmail, async (req, res) => { // Log error but don't fail the request const reqLogger = logger.withRequestId(req.id); reqLogger.error("Failed to send rental request confirmation email", { - error: emailError, + error: emailError.message, + stack: emailError.stack, rentalId: rental.id, renterId: rentalWithDetails.renterId, }); @@ -730,7 +732,8 @@ router.put("/:id/decline", authenticateToken, async (req, res) => { // Log error but don't fail the request const reqLogger = logger.withRequestId(req.id); reqLogger.error("Failed to send rental decline email", { - error: emailError, + error: emailError.message, + stack: emailError.stack, rentalId: rental.id, renterId: updatedRental.renterId, }); diff --git a/backend/services/payoutService.js b/backend/services/payoutService.js index 497faaa..7ee7c77 100644 --- a/backend/services/payoutService.js +++ b/backend/services/payoutService.js @@ -32,7 +32,7 @@ class PayoutService { return eligibleRentals; } catch (error) { - console.error("Error getting eligible payouts:", error); + logger.error("Error getting eligible payouts", { error: error.message, stack: error.stack }); throw error; } } @@ -99,7 +99,7 @@ class PayoutService { amount: rental.payoutAmount, }; } catch (error) { - console.error(`Error processing payout for rental ${rental.id}:`, error); + logger.error("Error processing payout for rental", { error: error.message, stack: error.stack, rentalId: rental.id }); // Update status to failed await rental.update({ @@ -146,7 +146,7 @@ class PayoutService { return results; } catch (error) { - console.error("Error processing all eligible payouts:", error); + logger.error("Error processing all eligible payouts", { error: error.message, stack: error.stack }); throw error; } } @@ -209,7 +209,7 @@ class PayoutService { return results; } catch (error) { - console.error("Error retrying failed payouts:", error); + logger.error("Error retrying failed payouts", { error: error.message, stack: error.stack }); throw error; } } diff --git a/backend/services/s3Service.js b/backend/services/s3Service.js index b7ba5d9..e4d8d69 100644 --- a/backend/services/s3Service.js +++ b/backend/services/s3Service.js @@ -101,7 +101,7 @@ class S3Service { region: this.region, }); } catch (error) { - logger.error("Failed to initialize S3 Service", { error: error.message }); + logger.error("Failed to initialize S3 Service", { error: error.message, stack: error.stack }); process.exit(1); } } diff --git a/backend/services/stripeService.js b/backend/services/stripeService.js index 9b53758..3474289 100644 --- a/backend/services/stripeService.js +++ b/backend/services/stripeService.js @@ -1,4 +1,5 @@ const stripe = require("stripe")(process.env.STRIPE_SECRET_KEY); +const logger = require("../utils/logger"); class StripeService { @@ -8,7 +9,7 @@ class StripeService { expand: ['setup_intent', 'setup_intent.payment_method'] }); } catch (error) { - console.error("Error retrieving checkout session:", error); + logger.error("Error retrieving checkout session", { error: error.message, stack: error.stack }); throw error; } } @@ -26,7 +27,7 @@ class StripeService { return account; } catch (error) { - console.error("Error creating connected account:", error); + logger.error("Error creating connected account", { error: error.message, stack: error.stack }); throw error; } } @@ -42,7 +43,7 @@ class StripeService { return accountLink; } catch (error) { - console.error("Error creating account link:", error); + logger.error("Error creating account link", { error: error.message, stack: error.stack }); throw error; } } @@ -58,7 +59,7 @@ class StripeService { requirements: account.requirements, }; } catch (error) { - console.error("Error retrieving account status:", error); + logger.error("Error retrieving account status", { error: error.message, stack: error.stack }); throw error; } } @@ -79,7 +80,7 @@ class StripeService { return transfer; } catch (error) { - console.error("Error creating transfer:", error); + logger.error("Error creating transfer", { error: error.message, stack: error.stack }); throw error; } } @@ -100,7 +101,7 @@ class StripeService { return refund; } catch (error) { - console.error("Error creating refund:", error); + logger.error("Error creating refund", { error: error.message, stack: error.stack }); throw error; } } @@ -109,7 +110,7 @@ class StripeService { try { return await stripe.refunds.retrieve(refundId); } catch (error) { - console.error("Error retrieving refund:", error); + logger.error("Error retrieving refund", { error: error.message, stack: error.stack }); throw error; } } @@ -167,7 +168,7 @@ class StripeService { amountCharged: amount, // Original amount in dollars }; } catch (error) { - console.error("Error charging payment method:", error); + logger.error("Error charging payment method", { error: error.message, stack: error.stack }); throw error; } } @@ -182,7 +183,7 @@ class StripeService { return customer; } catch (error) { - console.error("Error creating customer:", error); + logger.error("Error creating customer", { error: error.message, stack: error.stack }); throw error; } } @@ -204,7 +205,7 @@ class StripeService { return session; } catch (error) { - console.error("Error creating setup checkout session:", error); + logger.error("Error creating setup checkout session", { error: error.message, stack: error.stack }); throw error; } }